我正在尝试调用'ChangeResourceRecordSetsRequest'
Amazon route53 的 API,但每次都收到“缺少身份验证错误”。我不确定我在这里做错了什么。有人可以看看吗?下面是我的代码:
$AWSAccessKeyId = "##########";
$SecretAccessKey = "#################";
$Timestamp = gmdate('D, d M Y H:i:s') . ' GMT';
$Signature = base64_encode(hash_hmac("sha256",$Timestamp,$SecretAccessKey));
$AuthenticationToken = "AWS3-HTTPS AWSAccessKeyId=".$AWSAccessKeyId.", Algorithm=HmacSHA256,Signature=".$Signature;
$headers = array(
'X-Amzn-Authorization: $AuthenticationToken',
'x-amz-date: $Timestamp',
'Content-Type: text/xml;charset=utf-8',
);
$endpoint = 'https://route53.amazonaws.com/2012-12-12/hostedzone/######/rrset';
$session = curl_init($endpoint); // create a curl session
curl_setopt($session, CURLOPT_POST, true); // POST request type
curl_setopt($session, CURLOPT_POSTFIELDS, $xmlRequest); // set the body of the POST
curl_setopt($session, CURLOPT_RETURNTRANSFER, true); // return values as a string - not to std out
curl_setopt($session, CURLOPT_HTTPHEADER, $headers);
$responseXML = curl_exec($session);