컨테이너 정책 예제: 역할에 대한 교차 계정 전체 액세스 - AWS 원소 MediaStore

지원 종료 공지: 2025년 11월 13일에는 AWS Elemental에 대한 지원을 중단할 AWS 예정입니다 MediaStore. 2025년 11월 13일 이후에는 MediaStore 콘솔 또는 MediaStore 리소스에 더 이상 액세스할 수 없습니다. 자세한 내용은 이 블로그 게시물을 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

컨테이너 정책 예제: 역할에 대한 교차 계정 전체 액세스

이 예제 정책은 계정의 객체를 업데이트할 수 있는 교차 계정 액세스 권한을 허용합니다. 단, 사용자가 HTTP를 통해 로그인해야 합니다. 또한 지정된 역할을 맡은 계정에 HTTP 또는 HTTPS를 통해 객체를 삭제, 다운로드 및 설명할 수 있는 교차 계정 액세스 권한을 허용합니다.

  • 첫째 구문은 CrossAccountRolePostOverHttps입니다. 이 구문은 모든 객체에 대해 PutObject 작업에 대한 액세스를 허용하고, 지정한 계정이 <역할 이름>에 지정된 역할을 가지고 있을 경우 해당 계정의 사용자에 대해 이 액세스를 허용합니다. 이러한 액세스는 작업에 대해 HTTPS를 요구하는 조건을 갖도록 지정됩니다. PutObject에 대한 액세스를 제공할 때 이 조건이 항상 포함되어야 합니다.

    즉, 교차 계정 액세스 권한을 가진 보안 주체는 PutObject에 액세스할 수 있지만 HTTPS를 통해야만 합니다.

  • 두 번째 구문은 CrossAccountFullAccessExceptPost입니다. 이 구문은 객체에 대해 PutObject를 제외한 모든 작업에 대한 액세스를 허용합니다. <역할 이름>에 지정된 역할을 해당 계정이 가지고 있을 경우 해당 계정의 사용자에 대해 이 액세스를 허용합니다. 이러한 액세스는 작업에 대해 HTTPS를 요구하는 조건을 갖지 않습니다.

    즉, 교차 계정 액세스 권한을 가진 계정은 DeleteObject, GetObject 등(PutObject 제외)에 액세스할 수 있고, HTTP 또는 HTTPS를 통해 이 작업을 수행할 수 있습니다.

    두 번째 구문에서 PutObject를 제외시키지 않으면 구문이 유효하지 않게 됩니다. PutObject를 포함시킬 경우 조건으로 HTTPS를 명시적으로 설정해야 하기 때문입니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CrossAccountRolePostOverHttps", "Effect": "Allow", "Action": "mediastore:PutObject", "Principal":{ "AWS": "arn:aws:iam::<other acct number>:role/<role name>"}, "Resource": "arn:aws:mediastore:<region>:<owner acct number>:container/<container name>/*", "Condition": { "Bool": { "aws:SecureTransport": "true" } } }, { "Sid": "CrossAccountFullAccessExceptPost", "Effect": "Allow", "NotAction": "mediastore:PutObject", "Principal":{ "AWS": "arn:aws:iam::<other acct number>:role/<role name>"}, "Resource": "arn:aws:mediastore:<region>:<owner acct number>:container/<container name>/*" } ] }