비디오: Savings and Loan Crisis: Explained, Summary, Timeline, Bailout, Finance, Cost, History 2024
AWS로 REST 호출을 할 때 모든 것이 정확하게 계획대로 작동하면 좋을 것입니다. 그러나 여기에서 볼 수있는 것과 유사한 오류 메시지가 나타나는 여러 가지 문제가 발생할 수 있습니다. 이미지가 완전하지 않음에 유의하십시오. 키 값은 액세스 키의 유용성을 유지하기 위해 차단됩니다.
오류 메시지는 다양한 형태를 취할 수 있습니다.문제는 다양한 출처에서 나올 수 있습니다. 첫 번째 해결 방법은 URL 문자열의 특수 문자가 AWS를 혼동하지 않도록 서명을 URL 인코딩하는 것입니다. 이 문제를 극복하는 데 사용할 수있는 도구는 URL 디코더 / 인코더입니다. 이 도구를 사용하려면 전체 URL이 아닌 서명을 입력란에 붙여넣고 인코딩을 클릭하십시오. 결과 서명에는 특수 문자가 포함되지 않지만 URL 인코딩을 사용하여 문제를 방지합니다.
아마존이 제공 한 코드 스 니펫을 사용하더라도 서명 계산 프로세스가 잘못 될 수 있습니다.
StringToSign
및
StringToSignBytes
요소에서 첫 번째 이미지를 다시 살펴보십시오. 이 요소는 AWS가 서명을 확인할 때 기대했던 바를 알려줍니다. 물론, 그것은 당신에게 당신이 서명을 위해 제공해야만했던 가치에 대한 단서를 아직 제공하지 않습니다. 다행히도 Amazon Signature Tester는이 정보를 제공 할 수 있습니다.
Amazon Signature Tester를 하드 드라이브에 다운로드합니다. 얻는 것은 README 파일과 브라우저에로드하는 HTML 페이지입니다. 아래 이미지는이 페이지 하단의 모습을 보여줍니다.
StringToSignBytes
요소 값과 비밀 키를 제공해야하므로 두 개의 필드가 포함되어 있기 때문에 페이지의 맨 아래에서 작업하고 싶습니다.
서명 가져 오기를 클릭하면 AWS에서 볼 수있는
StringToSign
요소 값, 실제 서명 및 URL 인코딩 서명이 표시됩니다. AWS에 대한 호출과 함께 URL 인코딩 된 서명을 사용합니다. 이 서명의 유효성을 검사하려면 URL 문자열의 현재 값을이 새 값으로 바꾸기 만하면됩니다. 문제가 서명 코드에있는 경우 호출이 예상대로 작동해야합니다.
StringToSign
요소 값을 다시 확인하려는 이유는 AWS가 사용자와 다른 방식으로이를 볼 수 있기 때문입니다. 예를 들어,이 경우
GET
와
만료
값 사이에 세 줄 바꿈 문자가 있음을 알아 두십시오. 서명 계산 코드가이 요구 사항을 고려하지 않으면 서명이 틀립니다.여기에서 추가적인 문제 해결 도구를 찾을 수 있습니다.