메뉴
Amazon Simple Storage Service
개발자 안내서 (API Version 2006-03-01)

정책에서 리소스 지정

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

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

Amazon S3 리소스의 경우,

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

  • s3는 서비스입니다.

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

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

그런 뒤 Amazon S3 리소스에 대한 ARN 형식을 다음과 같이 지정합니다.

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

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

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

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

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

      Copy
      arn:aws:s3:::examplebucket/*

      이 ARN에서는 '*'를 사용하여 모든 Amazon S3 리소스(계정의 모든 버킷 및 객체)를 나타냅니다.

      Copy
      arn:aws:s3:::*
    • 이 ARN은 상대 ID 부분에 와일드카드 문자인 '*'와 '?'를 둘 다 사용합니다. 이를 통해 example1bucket, example2bucket, example3bucket 등 버킷의 모든 객체를 나타냅니다.

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

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

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

자세한 내용은 다음 자료를 참조하십시오.

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