본문 바로가기
Knowledge/Cloud

[AWS] 서로 다른 Account의 S3로 접근하기

by 미네마네모 2021. 4. 23.

Requirement

  • Account A ID
  • Account B ID
  • Account A에 속한 S3 버킷

* Account ID 확인 방법 : 바로가기

접근 불가 확인

  • Account B로 Account A에 속한 S3 버킷 접근
  • 본 문서에서는 AWS-CLI로 접근 시도 하였습니다.

Setting

  • Account A에 속한 S3 버킷으로 이동 → 권한 탭 클릭 → 버킷 정책에서 편집 버튼 클릭 후 아래 코드 추가 후 저장
  • Account 사이의 S3 접근 정책은 특이하게 IAM 역할이나 계정에 연결하는 것이 아니라 S3에 직접 연결 합니다.
  • Resource에서 아래와 같이 일반적인 ARN, 와일드카드가 포함된 ARN 두가지 다 추가해주세요.
    (Wildcard가 포함되지 않은 상태에서는 Lambda에서는 접근 가능했는데 RDS에서 접근이 불가능했습니다)
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::{Account B의 ID}:root"
            },
            "Action": "s3:*",
            "Resource": [
            	"arn:aws:s3:::{접근을 원하는 버킷 이름}/*",
                "arn:aws:s3:::{접근을 원하는 버킷 이름}"
            ]
        }
    ]
}

접근 가능 확인

  • Account B로 Account A에 속한 S3 버킷 접근
  • 본 문서에서는 AWS-CLI로 접근 시도 하였습니다.

 


aws.amazon.com/ko/premiumsupport/knowledge-center/cross-account-access-s3/

medium.com/@shobhita.agarwal/load-data-from-s3-to-rds-across-aws-accounts-e74c41c4a231

 

 

댓글