繁体   English   中英

AWS EC2 PHP SDK凭据无法正常工作

[英]AWS EC2 PHP SDK credentials not working

我正在尝试创建一种以编程方式启动/停止我的EC2实例的方法。 这是我正在使用的代码:

<?php
$ec2 = new \Aws\Ec2\Ec2Client([
   'credentials' => [
   'key'    => 'KEY_HERE',
   'secret' => 'SECRET_HERE'
],

   'region' => env('AWS_REGION', 'us-west-2'),
   'version' => 'latest',
   'ua_append' => [
       'L5MOD/' . AwsServiceProvider::VERSION,
   ]
 ]);

$result = $ec2->describeInstanceStatus([
   'InstanceIds' => ['i-c21a366e']
]);
?>

当然我使用的是我的实际键而不是'KEY_HERE'和'SECRET_HERE'。

我收到此错误,您可以在此屏幕截图中看到:

在此输入图像描述

我想提一下,如果我使用S3服务,一切正常。 我只有EC2服务有这个问题。

知道什么可能是错的吗?

我终于知道发生了什么,我能够解决它。

看起来AWS正在使用服务器时钟来授权访问,我需要安装ntp服务并更新它以便正确同步时钟。

我通过运行安装了ntp服务器:

sudo apt-get install ntp

然后我用这些命令更新了服务:

sudo service ntp stop
sudo ntpd -gq
sudo service ntp start

问题得到解决。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM