1

我正在使用 DocuSign API 并遇到了一些问题。将数据请求发送到他们的服务器时,我收到以下错误:

SoapFault exception: [q0:InvalidSecurity] An error was discovered 
processing the <Security> header ---> WSE065: Creation time of the 
timestamp is in the future. This typically indicates lack of synchronization 
between sender and receiver clocks. Make sure the clocks are synchronized 
or use the timeToleranceInSeconds element in the microsoft.web.services3 
configuration section to adjust tolerance for lack of clock synchronization.

我查看了他们的社区论坛,我能从他们的论坛管理员那里找到的唯一回复是:

The message means that the client clock is wrong. The timezone might be set 
incorrectly. If the SOAP request is timestamped too far in the future or in the 
past, the server will reject it.  We generally run into this error with mobile 
apps since folks don't always have their devices set to sync to network time.

我检查了我的服务器时间以及我的计算机时间,以确保一切正常。我的电脑时间设置为EST,服务器设置为CST。我已经尝试在我的计算机上更新和同步我的系统时钟,并尝试将我的时区调整为 CST 以确保它们都匹配。我还将我的计算机时间更改为格林威治标准时间,因为这就是他们所说的服务器时间。我也尝试过更新我服务器的时钟,因为它似乎有点不对劲。(我的时钟和服务器时钟之间似乎有 6 分钟的差异)。

我在服务器上运行了这个命令:

sudo ntpdate ntp.ubuntu.com

回复:

27 Sep 08:51:41 ntpdate[18858]: step time server 91.189.94.4 offset -357.639332 sec

我还尝试在服务器上编辑我的 grub 配置文件(/boot/grub/grub.conf)。我尝试将这些参数的不同组合添加到内核行的末尾:

clock=pit 
acpi=off 
noapic

以及尝试使用此命令更新硬件时钟:

hwclock=systohc

肥皂标题如下:

该请求是在上午 10:41(我的计算机时间 [EST])、上午 9:47(我的服务器时间 [CST])发出的。

要求:

POST /api/3.0/api.asmx HTTP/1.1
Host: www.docusign.net
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.3.16
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://www.docusign.net/API/3.0/CreateEnvelope"
Content-Length: 116157

回复:

HTTP/1.1 500 Internal Server Error
Cache-Control: private
Content-Length: 1696
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Thu, 27 Sep 2012 14:41:13 GMT
Vary: Accept-Encoding
Strict-Transport-Security: max-age=7776000; includeSubDomains

如果有人对可能导致此错误的原因有任何想法,或者如果有人对如何同步我的时钟有任何进一步的建议,我很想听听他们的意见。

提前感谢您的时间和考虑。

4

1 回答 1

1

我最终联系了我托管我的虚拟服务器的公司,事实证明这根本不是我可以控制的任何问题。事实证明,他们的管理程序(虚拟机监视器 - VMM)出现了问题,所以当我的服务器与其同步时间时,我的时间被抵消了大约 7 分钟。由于我的服务器的系统时钟由它控制,这也使我无法使用以下命令手动设置时间:

date -s "27 SEP 2012 HH:MM:SS"

因为这些更改将被 VMM 取代。

于 2012-09-27T15:51:58.230 回答