Amazon S3 리소스 - Amazon Simple Storage Service

Amazon S3 리소스

다음과 같은 일반적인 Amazon 리소스 이름(ARN) 형식은 AWS에서 리소스를 식별합니다.

arn:partition:service:region:namespace:relative-id

ARN에 대한 자세한 내용은 AWS 일반 참조의 Amazon 리소스 이름(ARN)을 참조하십시오.

리소스에 대한 자세한 내용은 IAM 사용 설명서IAM JSON 정책 요소: 리소스를 참조하십시오.

Amazon S3 ARN은 AWS 리전 및 네임스페이스를 제외하지만 다음을 포함합니다.

  • 파티션aws는 공통 파티션 이름입니다. 리소스가 중국(베이징) 리전에 위치하는 경우, aws-cn이 파티션 이름이 됩니다.

  • 서비스s3.

  • 상대 IDbucket-name 또는 bucket-name/object-key. 와일드카드를 사용할 수 있습니다.

Amazon S3 리소스에 대한 ARN 형식을 다음과 같이 줄입니다.

arn:aws:s3:::bucket_name/key_name

Amazon S3 리소스의 전체 목록은 Amazon S3에 사용되는 작업, 리소스 및 조건 키 단원을 참조하십시오.

S3 버킷의 ARN을 찾아보려면 Amazon S3 콘솔 버킷 정책(Bucket Policy) 또는 CORS 구성(CORS configuration) 권한 페이지를 확인해 보십시오. 자세한 정보는 다음 주제를 참조하십시오.

Amazon S3 ARN 예제

다음은 Amazon S3 리소스 ARN의 예입니다.

버킷 이름 및 객체 키 지정

다음 ARN은 /developers/design_info.doc 버킷의 examplebucket 객체를 식별합니다.

arn:aws:s3:::examplebucket/developers/design_info.doc
와일드카드

와일드카드는 리소스 ARN에도 사용할 수 있습니다. ARN 세그먼트(콜론으로 구분된 부분) 내에서 와일드카드 문자(*?)를 사용할 수 있습니다. 별표(*)는 0개 이상의 문자 조합을 나타내고 물음표(?)는 단일 문자를 나타냅니다. * 또는 ? 문자를 각 세그먼트에서 여러 번 사용할 수 있지만, 와일드카드 한 개를 여러 세그먼트에 걸쳐서 적용할 수는 없습니다.

  • 다음 ARN에서는 ARN의 상대 ID 부분에 와일드카드 문자 *를 사용하여 examplebucket 버킷의 모든 객체를 나타냅니다.

    arn:aws:s3:::examplebucket/*
  • 다음 ARN에서는 *를 사용하여 모든 Amazon S3 리소스(모든 S3 버킷 및 객체)를 나타냅니다.

    arn:aws:s3:::*
  • 다음 ARN에서는 relative-ID 부분에 와일드카드 문자 *?를 모두 사용합니다. 이를 통해 example1bucket, example2bucket, example3bucket 등 버킷의 모든 객체를 나타냅니다.

    arn:aws:s3:::example?bucket/*
정책 변수

Amazon S3 ARN에서 정책 변수를 사용할 수 있습니다. 정책 평가 시에는 이러한 사전 정의된 변수가 해당 값으로 대체됩니다. 폴더 하나당 각 사용자용으로 할당된 폴더의 모음으로 버킷을 구성한다고 가정합니다. 폴더 이름은 사용자 이름과 같습니다. 해당 폴더에 대한 사용자 권한을 부여하려면 다음과 같이 리소스 ARN에 정책 변수를 지정하면 됩니다.

arn:aws:s3:::bucket_name/developers/${aws:username}/

런타임 시 정책이 평가되면 리소스 ARN의 ${aws:username} 변수가 요청을 제기하는 사용자 이름으로 대체됩니다.