View a markdown version of this page

IAM과 함께 S3 Files을 사용하는 방법 - Amazon Simple Storage Service

IAM과 함께 S3 Files을 사용하는 방법

이 페이지에서는 AWS Identity and Access Management(IAM)가 S3 Files와 작동하는 방법과 IAM 정책을 사용하여 파일 시스템에 대한 액세스를 제어하는 방법을 설명합니다.

S3 Files는 두 가지 고유한 유형의 액세스 제어에 IAM을 사용합니다.

  • API 액세스 - 파일 시스템, 탑재 대상 및 액세스 포인트와 같은 S3 Files 리소스를 생성, 관리 및 삭제할 수 있는 사용자를 제어합니다. IAM 사용자, 그룹 또는 역할에 연결된 자격 증명 기반 정책을 사용하여이 액세스를 제어합니다.

  • 클라이언트 액세스 - 클라이언트(장착된 컴퓨팅 리소스)가 연결되면 루트 사용자로서 파일을 읽거나 쓰거나 액세스하는 등 파일 시스템으로 수행할 수 있는 작업을 제어합니다. 리소스 기반 정책, 자격 증명 기반 정책, 액세스 포인트 및 POSIX 권한의 조합을 사용하여이 액세스를 제어합니다.

IAM을 사용하면 클라이언트가 읽기 전용, 쓰기 및 루트 액세스를 포함하여 파일 시스템에서 특정 작업을 수행하도록 허용할 수 있습니다. IAM ID 정책 또는 파일 시스템 리소스 정책의 작업에 대한 “허용” 권한은 해당 작업에 대한 액세스를 허용합니다. 자격 증명 및 리소스 정책 모두에서 권한을 부여할 필요는 없습니다.

연결된 S3 버킷의 S3 버킷 정책도 컴퓨팅 리소스 및 파일 시스템에서 S3 버킷으로의 액세스를 제어합니다. 또한 소스 버킷의 버킷 정책이 컴퓨팅 리소스 또는 파일 시스템의 액세스를 거부하지 않는지 확인해야 합니다. 자세한 내용은 Amazon S3에 대한 버킷 정책을 참조하세요.

ID 기반 정책

ID 기반 정책은 IAM 사용자, 그룹 또는 역할에 연결하는 JSON 정책입니다. 사용자 지정 정책을 작성하거나 AWS 관리형 정책을 연결하여 이러한 권한을 제공할 수 있습니다. API 액세스 및 클라이언트 액세스 모두에 사용할 수 있는 관리형 정책에 대한 자세한 내용은 AWS Amazon S3 Files에 대한 관리형 정책을 참조하세요.

또한 S3 Files는 클라이언트가 소스 S3 버킷에서 직접 파일 데이터를 읽을 수 있도록 하여 읽기 성능을 최적화합니다. 컴퓨팅 리소스에 S3 파일 시스템을 탑재할 때는 지정된 S3 버킷에서 객체를 읽을 수 있는 권한을 부여하는 인라인 정책을 컴퓨팅 리소스의 IAM 역할에 추가해야 합니다. 탑재 도우미는 이러한 권한을 사용하여 S3 데이터를 읽습니다. 이 정책에 대한 자세한 내용은 파일 시스템을 AWS 컴퓨팅 리소스에 연결하기 위한 IAM 역할 섹션을 참조하세요.

리소스 기반 정책

파일 시스템 정책은 클라이언트 액세스를 제어하기 위해 파일 시스템에 직접 연결하는 IAM 리소스 기반 정책입니다. 파일 시스템 정책을 사용하여 클라이언트가 탑재, 쓰기 및 루트 액세스와 같은 작업을 수행할 수 있는 권한을 부여하거나 거부할 수 있습니다.

파일 시스템에는 빈(기본) 파일 시스템 정책 또는 정확히 하나의 명시적 정책이 있습니다. S3 파일 시스템 정책은 20,000자로 제한됩니다. 파일 시스템 정책 생성 및 관리에 대한 자세한 내용은 파일 시스템 정책 생성 섹션을 참조하세요.

클라이언트에 대한 S3 Files 작업

파일 시스템 정책에서 다음 작업을 지정하여 클라이언트 액세스를 제어할 수 있습니다.

작업 설명
s3files:ClientMount 파일 시스템에 대한 읽기 전용 액세스를 제공합니다.
s3files:ClientWrite 파일 시스템에 대한 쓰기 권한을 제공합니다.
s3files:ClientRootAccess 파일 시스템에 액세스할 때 루트 사용자를 사용할 수 있는 기능을 제공합니다.

클라이언트에 대한 S3 Files 조건 키

파일 시스템 정책의 Condition 요소에 다음 조건 키를 사용하여 액세스 제어를 더욱 세분화할 수 있습니다.

조건 키 설명 연산자
s3files:AccessPointArn 클라이언트가 연결 중인 S3 Files 액세스 포인트의 ARN입니다. 문자열

파일 시스템 정책 예제

예: 읽기 전용 액세스 권한 부여

다음 파일 시스템 정책은 ReadOnly IAM 역할에 ClientMount(읽기 전용) 권한만 부여합니다. 111122223333을 AWS 계정 ID로 바꿉니다.

{ "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ReadOnly" }, "Action": [ "s3files:ClientMount" ] } ] }

S3 Files 액세스 포인트에 대한 액세스 권한 부여

다음 파일 시스템 정책은 조건 요소를 사용하여 지정된 액세스 포인트를 통해 탑재할 때 특정 액세스 포인트에 파일 시스템에 대한 전체 액세스 권한을 부여합니다. 액세스 포인트 ARN과 계정 ID를 값으로 바꿉니다. 자세한 내용은 S3 파일 시스템에 대한 액세스 포인트 생성 섹션을 참조하세요.

{ "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::555555555555:role/S3FilesAccessPointFullAccess" }, "Action": [ "s3files:Client*" ], "Condition": { "StringEquals": { "s3files:AccessPointArn": "arn:partition:s3files:region:account-id:file-system/fs-1234567890/access-point/fsap-0987654321" } } } ] }

POSIX 권한

IAM 권한 부여가 성공하면 S3 Files는 파일 및 디렉터리 수준에서 표준 POSIX(Unix 스타일) 권한을 적용합니다. POSIX 권한은 각 파일 및 디렉터리와 연결된 사용자 ID(UID), 그룹 ID(GID) 및 권한 비트(읽기, 쓰기, 실행)를 기반으로 액세스를 제어합니다. 액세스 포인트는 모든 요청에 대해 특정 POSIX 사용자 자격 증명을 적용하여 공유 데이터세트에 대한 액세스 관리를 간소화할 수 있습니다. 자세한 내용은 S3 파일 시스템에 대한 액세스 포인트 생성 섹션을 참조하세요.

보안 그룹

보안 그룹은 컴퓨팅 리소스와 파일 시스템의 탑재 대상 간의 트래픽을 제어하는 네트워크 수준 방화벽 역할을 합니다. S3 Files를 시작하도록 보안 그룹을 구성하는 방법에 대한 자세한 내용은 보안 그룹 섹션을 참조하세요.