S3 Presigned URL을 정책의 조건문으로 구별하는 방안

Lesedauer: 1 Minute
Inhaltsebene: Fortgeschrittene Anfänger
0

해당 기사에서는 S3 Presigned URL을 정책의 조건문으로 구별하는 방안에 대해서 설명합니다.

사용 사례:

S3 Presiged URL로 들어오는 특정 요청을 구별하여 허용하거나 거부하고 싶을 경우, 타 조건문과 연계하여 Presigned URL로 접근하는 Access를 제한할 수 있습니다.

해결:

S3 Presigned URL은 SigV4 서명과 함께 Querystring으로 인증받습니다. 따라서, "s3:signatureversion": "AWS4-HMAC-SHA256", "s3:authType": "REST-QUERY-STRING" 조건 키를 사용할 수 있으며, 이 조건키는 IAM policy와 S3 bucket policy 모두에서 사용 가능합니다. [1]

예제 정책:

본 정책은 S3 Presigned URL을 통해 접근한 요청에 대해서 GetObject를 허용하는 IAM 정책입니다. 같은 방식으로 S3 Bucket policy, Deny 문에도 적용할 수 있습니다.

{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Action":"s3:GetObject",
         "Resource":"{S3-BUCKET-ARN}/*",
         "Condition":{
            "StringEquals":{
               "s3:signatureversion":"AWS4-HMAC-SHA256",
               "s3:authType":"REST-QUERY-STRING"
            }
         }
      }
   ]
}


관련 정보

[1] Amazon S3 Signature Version 4 Authentication Specific Policy Keys - https://docs.aws.amazon.com/AmazonS3/latest/API/bucket-policy-s3-sigv4-conditions.html

AWS
SUPPORT-TECHNIKER
veröffentlicht vor 9 Monaten414 Aufrufe