내용으로 건너뛰기

EC2 인스턴스에 S3 버킷 액세스 권한을 부여하려면 어떻게 해야 합니까?

3분 분량
0

Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 Amazon Simple Storage Service(S3) 버킷에 액세스할 수 없습니다.

해결 방법

참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.

Amazon S3에 대한 액세스 권한을 부여하는 IAM 인스턴스 프로파일 생성

다음 단계를 완료합니다.

  1. AWS Identity and Access Management(IAM) 콘솔을 엽니다.
  2. 탐색 창의 액세스 관리에서 역할을 선택합니다.
  3. 역할 생성을 선택합니다.
  4. 신뢰할 수 있는 엔터티 유형에서 AWS 서비스를 선택합니다. 서비스 또는 사용 사례에서 EC2를 선택합니다. 사용 사례에서 EC2를 선택합니다.
    참고: IAM 콘솔을 사용하여 IAM 역할을 생성하고 EC2를 신뢰할 수 있는 엔터티로 선택하면 IAM 인스턴스 프로파일이 자동으로 생성됩니다. 새로 생성된 IAM 인스턴스 프로파일의 이름은 역할과 동일합니다. 그러나 AWS CLI 또는 API를 사용하여 역할을 생성하는 경우 인스턴스 프로파일이 자동으로 생성되지 않습니다. 자세한 내용은 IAM 역할을 만들었는데 인스턴스를 시작할 때 드롭다운 목록에 역할이 나타나지 않습니다. 어떻게 해야 합니까?를 참조하십시오.
  5. 다음을 선택합니다.
  6. 다음에 필요한 최소 권한을 제공하는 사용자 지정 정책을 생성합니다. S3 버킷 액세스
    참고: 최소 필수 권한으로 정책을 만드는 것이 보안을 위한 모범 사례입니다. 그러나 Amazon EC2에 모든 S3 버킷에 대한 액세스 권한을 부여하려면 AmazonS3ReadOnlyAccess 또는 AmazonS3FullAccess 관리형 IAM 정책을 사용하십시오.
  7. 필요한 정책을 선택한 후 다음을 선택합니다.
  8. 역할 이름을 입력하고, 역할 생성을 선택합니다.

IAM 인스턴스 프로파일을 EC2 인스턴스에 연결

다음 단계를 완료합니다.

  1. Amazon EC2 콘솔을 엽니다.
  2. 탐색 창에서 인스턴스를 선택합니다.
  3. IAM 역할에 연결하려는 인스턴스를 선택합니다.
  4. 작업을 선택한 다음, 보안을 선택합니다.
  5. IAM 역할 수정을 선택합니다.
  6. 생성한 IAM 역할을 선택한 다음, 저장을 선택합니다. IAM 역할이 EC2 인스턴스에 할당됩니다.

S3 버킷에서 권한 확인

다음 단계를 완료합니다.

  1. Amazon S3 콘솔을 엽니다.
  2. 정책을 확인하려는 S3 버킷 링크를 선택합니다.
  3. 권한 탭을 선택합니다.
  4. 버킷 정책 섹션에서 Effect: Deny가 포함된 문을 찾습니다.
  5. IAM 정책을 편집하여 버킷에 대한 IAM 인스턴스 프로파일 액세스를 거부하는 모든 Effect: Deny 문을 제거합니다.

EC2 인스턴스에서 Amazon S3로 네트워크 연결 확인

전제 조건

프라이빗 EC2 인스턴스와 S3 버킷 사이의 연결 문제를 해결하려면 게이트웨이 Amazon VPC 엔드포인트의 연결 문제를 해결하려면 어떻게 해야 합니까?를 참조하십시오.

S3 버킷에 대한 액세스 확인

다음 단계를 완료합니다.

  1. EC2 인스턴스에 AWS CLI를 설치합니다.
  2. 다음 명령을 실행하여 S3 버킷 액세스 확인:
    aws s3 ls s3://DOC-EXAMPLE-BUCKET
    참고: DOC-EXAMPLE-BUCKET을 S3 버킷 이름으로 바꾸십시오.

AWS Key Management Service(AWS KMS) 키로 암호화된 S3 객체의 경우 kms: Decrypt 권한을 IAM 역할 및 KMS 키 정책에 부여합니다. kms:Decrypt 권한을 부여하지 않으면 S3 객체를 복사하거나 다운로드할 수 없습니다.

관련 정보

Amazon S3의 ID 및 액세스 관리

인터페이스 VPC 엔드포인트를 사용하여 Amazon S3 버킷에 연결할 때 연결 문제를 해결하려면 어떻게 해야 합니까?

AWS 공식업데이트됨 10달 전