액세스 관리 - Amazon Simple Storage Service

액세스 관리

Amazon S3는 다양한 액세스 관리 도구를 제공합니다. 다음은 이러한 기능 및 도구의 목록입니다. 이러한 액세스 관리 도구가 모두 필요한 것은 아니지만, Amazon S3 버킷, 객체 및 기타 S3 리소스에 대한 액세스 권한을 부여하려면 하나 이상을 사용해야 합니다. 이러한 도구를 올바르게 적용하면 의도한 사용자만 리소스에 액세스하도록 할 수 있습니다.

가장 일반적으로 사용되는 액세스 관리 도구는 액세스 정책입니다. 액세스 정책은 AWS 리소스에 연결된 리소스 기반 정책일 수 있습니다(예: 버킷의 버킷 정책). 액세스 정책은 IAM 사용자, 그룹 또는 역할과 같은 AWS Identity and Access Management(IAM) ID에 연결된 ID 기반 정책일 수도 있습니다. 액세스 정책은 누가 무엇에 액세스 할 수 있는지를 나타냅니다. AWS 계정, IAM 사용자, 그룹, 역할에 리소스에서 작업을 수행할 수 있는 권한을 부여하는 액세스 정책을 작성하세요. 예를 들어, 다른 AWS 계정에서 내 버킷에 객체를 업로드할 수 있도록 다른 계정에 PUT Object 권한을 부여할 수 있습니다.

Amazon S3에서 제공되는 액세스 관리 도구는 다음과 같습니다. Amazon S3 액세스 제어에 대한 보다 포괄적인 가이드는 Amazon S3의 액세스 제어 섹션을 참조하세요.

버킷 정책

Amazon S3 버킷 정책은 특정 버킷에 연결된 JSON 형식 AWS Identity and Access Management(IAM) 리소스 기반 정책입니다. 버킷 정책을 사용하여 다른 AWS 계정 또는 IAM ID에 버킷과 버킷에 포함된 객체에 대한 권한을 부여합니다. 버킷 정책을 사용하면 많은 S3 액세스 관리 사용 사례를 충족할 수 있습니다. 버킷 정책을 사용하면 버킷 액세스를 개인화하여 승인된 ID만 리소스에 액세스하고 리소스 내에서 작업을 수행하도록 할 수 있습니다. 자세한 내용은 Amazon S3의 버킷 정책 단원을 참조하십시오.

자격 증명 기반 정책

ID 기반 또는 IAM 사용자 정책은 일종의 AWS Identity and Access Management(IAM) 정책입니다. ID 기반 정책은 AWS 계정의 IAM 사용자, 그룹 또는 역할에 연결된 JSON 형식의 정책입니다. ID 기반 정책을 사용하여 버킷이나 객체에 대한 IAM ID 액세스 권한을 부여할 수 있습니다. 내 계정으로 IAM 사용자, 그룹, 역할을 만들고 액세스 정책을 연결할 수 있습니다. 그런 다음 Amazon S3 리소스를 포함한 AWS 리소스에 대한 액세스 권한을 부여할 수 있습니다. 자세한 내용은 Amazon S3의 ID 기반 정책 단원을 참조하십시오.

S3 Access Grants

S3 Access Grants를 사용하여 회사 ID 디렉터리의 ID(예: Active Directory) 및 AWS Identity and Access Management(IAM) ID 모두에 대해 Amazon S3 데이터에 대한 액세스 권한을 생성할 수 있습니다. S3 Access Grants는 대규모로 데이터 권한을 관리하는 데 도움이 됩니다. 또한 S3 Access Grants는 AWS CloudTrail의 S3 데이터에 액세스하는 데 사용된 최종 사용자 ID와 애플리케이션을 로깅합니다. 이를 통해 S3 버킷의 데이터에 대한 모든 액세스에 대해 최종 사용자 ID까지 상세한 감사 기록이 제공됩니다. 자세한 내용은 S3 Access Grants를 통한 액세스 관리 단원을 참조하십시오.

액세스 포인트

Amazon S3 액세스 포인트는 S3의 공유 데이터세트를 사용하는 애플리케이션에 대한 대규모 데이터 액세스 관리를 간소화합니다. 액세스 포인트는 버킷에 연결된 명명된 네트워크 엔드포인트입니다. 액세스 포인트를 사용하여 객체 업로드 및 검색과 같은 S3 객체 작업을 수행할 수 있습니다. 버킷에는 최대 1만 개의 액세스 포인트가 연결될 수 있으며, 각 액세스 포인트에 대해 고유한 권한과 네트워크 제어를 적용하여 S3 객체에 대한 액세스를 세부적으로 제어할 수 있습니다. S3 액세스 포인트는 동일한 계정 또는 다른 신뢰할 수 있는 계정의 버킷과 연결할 수 있습니다. 액세스 포인트 정책은 기본 버킷 정책과 함께 평가되는 리소스 기반 정책입니다. 자세한 내용은 액세스 포인트로 공유 데이터세트에 대한 액세스 관리 단원을 참조하십시오.

ACL(액세스 제어 목록)

ACL은 피부여자와 그에 부여된 권한을 식별하는 권한 부여 목록입니다. ACL은 다른 AWS 계정에 기본적인 읽기 또는 쓰기 권한을 부여합니다. ACL은 Amazon S3별 XML 스키마를 사용합니다. ACL은 일종의 AWS Identity and Access Management(IAM) 정책입니다. 객체 ACL은 객체에 대한 액세스를 관리하는 데 사용되고, 버킷 ACL은 버킷에 대한 액세스를 관리하는 데 사용됩니다. 버킷 정책의 경우 전체 버킷에 적용되는 하나의 버킷 정책이 있지만 객체 ACL은 객체별로 지정됩니다. 각 객체에 대해 액세스를 개별적으로 제어해야 하는 드문 상황을 제외하고는 ACL을 비활성화한 채로 두는 것이 좋습니다. ACL 사용에 대한 자세한 내용은 객체 소유권 제어 및 버킷에 대해 ACL 사용 중지 섹션을 참조하세요.

주의

Amazon S3의 최신 사용 사례 대부분은 ACL을 사용할 필요가 없습니다.

객체 소유권

객체에 대한 액세스를 관리하려면 객체 소유자여야 합니다. 객체 소유권 버킷 수준 설정을 사용하여 버킷에 업로드되는 객체의 소유권을 제어할 수 있습니다. 또한 ACL을 활성화하는 데도 객체 소유권을 사용합니다. 기본적으로 객체 소유권은 버킷 소유자 적용 설정으로 설정되며 모든 ACL이 비활성화되어 있습니다. ACL이 비활성화되면 버킷 소유자는 버킷의 모든 객체를 소유하고 데이터에 대한 액세스를 독점적으로 관리합니다. 액세스를 관리하기 위해 버킷 소유자는 정책이나 다른 액세스 관리 도구(ACL 제외)를 사용합니다. 자세한 내용은 객체 소유권 제어 및 버킷에 대해 ACL 사용 중지 단원을 참조하십시오.

Amazon S3 액세스 제어에 대한 보다 포괄적인 가이드와 추가 모범 사례는 Amazon S3의 액세스 제어 섹션을 참조하세요.