Amazon Simple Storage Service
개발자 안내서 (API 버전 2006-03-01)

정책에서 리소스 지정

다음은 AWS의 모든 리소스를 식별하는 공통 Amazon 리소스 이름(ARN) 형식입니다.

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

Amazon S3 리소스의 경우:

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

  • s3는 서비스입니다.

  • 리전 및 네임스페이스는 지정하지 마십시오.

  • Amazon S3의 경우, 이는 bucket-name 또는 bucket-name/object-key가 될 수 있습니다. 와일드카드를 사용할 수 있습니다.

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

arn:aws:s3:::bucket_name arn:aws:s3:::bucket_name/key_name

다음은 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은 상대 ID 부분에 와일드카드 문자 *?를 둘 다 사용합니다. 이를 통해 example1bucket, example2bucket, example3bucket 등 버킷의 모든 객체를 나타냅니다.

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

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

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

S3 버킷의 ARN을 찾아보려면 Amazon S3 콘솔 버킷 정책 또는 CORS 구성 권한 페이지를 확인해 보십시오. 자세한 내용은 Amazon Simple Storage Service 콘솔 사용 설명서S3 버킷 정책을 추가하려면 어떻게 해야 합니까? 또는 CORS와의 교차 도메인 리소스 공유를 허용하려면 어떻게 해야 합니까? 단원을 참조하십시오.

ARN에 대한 자세한 내용은 다음을 참조하십시오.

기타 액세스 정책 언어 요소에 대한 자세한 내용은 액세스 정책 언어 개요 단원을 참조하십시오.