내용으로 건너뛰기

S3 객체에 액세스하려고 할 때 발생하는 "Request has expired" 오류를 해결하려면 어떻게 해야 합니까?

2분 분량
0

Amazon Simple Storage Service(Amazon S3)에서 객체에 액세스하려고 하면 "Request has expired"라는 오류 메시지가 표시됩니다.

해결 방법

Amazon S3는 URL의 지정된 만료 날짜가 지난 후 미리 서명된 URL에 액세스하려고 하면 이 오류 메시지를 반환합니다.

예를 들어 다음 응답에서 미리 서명된 URL의 만료 날짜는 2022년 10월 28일입니다. 2022년 10월 28일 이후에 미리 서명된 URL에 액세스하려고 하면 오류 메시지가 표시됩니다.

<Error>
    <Code>AccessDenied</Code>
    <Message>Request has expired</Message>
    <Expires>2022-10-28T07:13:14Z</Expires>
    <ServerTime>2022-10-28T20:03:02Z</ServerTime>
    <RequestId>87E1D2CFAAA7F9A6</RequestId>
    <HostId>
    A9BEluTV2hk3ltdFkixvQFa/yUBfUSgDjptwphKze+jXR6tYbpHCx8Z7y6WTfxu3rS4cGk5/WTQ=
    </HostId>
</Error>

이 문제를 해결하려면 미리 서명된 새 URL을 만들어 객체에 액세스해야 합니다. Amazon S3 콘솔을 사용하여 만료 시간을 설정할 경우 URL이 1분에서 12시간 사이에 만료되도록 설정할 수 있습니다. 또는 AAWS Command Line Interface(AWS CLI) 또는 AWS SDK를 사용할 경우 만료 시간을 최대 7일까지 설정할 수 있습니다.

미리 서명된 새 URL을 만들려면 다음 자격 증명 중 하나를 사용하십시오.

  • AWS Identity and Access Management(IAM) 인스턴스 프로파일
  • AWS Security Token Service
  • IAM 사용자

참고: 임시 토큰을 사용하여 미리 서명된 URL을 만드는 경우 토큰이 만료될 때 URL도 만료됩니다. 미리 서명된 URL은 해당 URL을 만드는 데 사용한 자격 증명이 해지, 삭제 또는 비활성화되면 만료됩니다. 이는 URL이 자격 증명보다 나중에 만료되도록 설정한 경우에도 마찬가지입니다.

관련 정보

미리 서명된 URL의 만료 시간

Amazon S3 버킷의 미리 서명된 URL이 지정한 만료 시간 전에 만료되는 이유는 무엇입니까?

AWS 공식업데이트됨 일 년 전
댓글 없음

관련 콘텐츠