서명 요청을 표시합니다.오류 : EC2 API 요청에서 서명이 한 번만 일치합니다.
https://ec2.eu-west-1.amazonaws.com?AWSAccessKeyId=THISISFAKEIDD
&Action=AuthorizeSecurityGroupIngress
&GroupId=sg-blahblah
&IpPermissions.1.FromPort=7264
&IpPermissions.1.IpProtocol=ani
&IpPermissions.1.IpRanges.1.CidrIp=272.64.292.200%2F32
&IpPermissions.1.ToPort=7264
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-06-10T05%3A25%3A10Z
&Version=2014-05-01
&Signature=FZgxzY0htCocacolaX4PXf0uJjnwmayhemDavkwCUw=
서명이 요청이 성공적으로 보안 그룹 (SG-blahblah)로 내 IP 주소 (272.64.292.200)를 추가 할 수 있었다 & 생성되었습니다. 즉,이 요청은 정확합니다. & 서명을 생성하는 코드에 오류가 없습니다.
확인. 이제 다른 IP 주소를 다른 IP 주소 매개 변수 & 타임 스탬프로 동일한 서명 요청을 사용하여 같은 그룹에 추가하려고하면 새 서명이 생성됩니다. 하지만 보안 그룹에 추가 할 수는 없습니다. 서명이 일치하지 않습니다. 계산 된 서명이 일치하지 않습니다.
왜 그렇게 되나요 ?? 나는 UTC 시간을 사용한다. 내 요청이 올바르지 않은 경우 어떻게 IP 주소를 추가 할 수 있었습니까? 또는 EC2의 서버 측에서 오류가 있습니까 ??
때때로 서명에 URL 인코딩이 필요한 문자가 있음에 유의하십시오. 그러면 일부 요청이 작동하고 일부 요청은 작동하지 않을 수 있습니다. – BraveNewCurrency
어떤 문자를 인코딩해야합니까 ??? 나는 URL 인코딩을했다고 생각한다. @BraveNewCurrency –
URL 인코딩이 올바르지 않습니다. 쿼리 매개 변수에 "/"및 ":"을 인코딩합니다 (필요 없음). 때로는 서명의 끝에있는 "="을 인코딩해야합니다 (표준이 아니라고하더라도). http://blog.lunatech.com/2009/02/03/what-every-web-developer-must-know-about-url-encoding – BraveNewCurrency