Object ACL 필드 사용
Object ACL 필드 사용
Amazon S3 인벤토리 보고서에는 S3 소스 버킷의 객체 목록과 각 객체의 메타데이터가 포함돼요. Object ACL(접근 제어 목록) 필드는 Amazon S3 인벤토리에서 사용할 수 있는 메타데이터 필드예요. 구체적으로 Object ACL 필드는 각 객체의 접근 제어 목록(ACL)을 담아요. 객체의 ACL은 어떤 AWS 계정이나 그룹에 이 객체에 대한 접근이 부여되는지, 어떤 유형의 접근이 부여되는지 정의해요. 자세한 내용은 접근 제어 목록(ACL) 개요와 Amazon S3 인벤토리 목록을 참고하세요.
출처: 문서
본문
Amazon S3 인벤토리 보고서의 Object ACL 필드는 JSON 형식으로 정의돼요. JSON 데이터에는 다음 필드가 포함돼요.
version– 인벤토리 보고서의 Object ACL 필드 형식 버전이에요.yyyy-mm-dd날짜 형식이에요.status– 가능한 값은AVAILABLE또는UNAVAILABLE로, 객체에 Object ACL을 사용할 수 있는지 여부를 나타내요. Object ACL의 상태가UNAVAILABLE이면 인벤토리 보고서의 Object Owner 필드 값도UNAVAILABLE이에요.grants– Object ACL이 부여한 각 수혜자(grantee)의 권한 상태를 나열하는 수혜자-권한 쌍이에요. 수혜자의 가능한 값은CanonicalUser와Group이에요. 수혜자에 대한 자세한 내용은 접근 제어 목록의 수혜자를 참고하세요.Group유형 수혜자의 경우 수혜자-권한 쌍에는 다음 속성이 포함돼요.uri– 미리 정의된 Amazon S3 그룹이에요.permission– 객체에 부여된 ACL 권한이에요. 자세한 내용은 객체의 ACL 권한을 참고하세요.type–Group유형으로, 수혜자가 그룹임을 나타내요.
CanonicalUser유형 수혜자의 경우 수혜자-권한 쌍에는 다음 속성이 포함돼요.canonicalId– AWS 계정 ID의 난독화된 형태예요. AWS 계정의 정식 사용자 ID는 해당 계정에 고유해요. 정식 사용자 ID를 가져올 수 있어요. 자세한 내용은 AWS Account Management Reference Guide의 AWS 계정의 정식 사용자 ID 찾기를 참고하세요.permission– 객체에 부여된 ACL 권한이에요. 자세한 내용은 객체의 ACL 권한을 참고하세요.type–CanonicalUser유형으로, 수혜자가 AWS 계정임을 나타내요.
다음 예시는 Object ACL 필드의 JSON 형식 가능한 값들을 보여줘요.
{
"version": "2022-11-10",
"status": "AVAILABLE",
"grants": [
{
"uri": "http://acs.amazonaws.com/groups/global/AllUsers",
"permission": "READ",
"type": "Group"
},
{
"canonicalId": "example-canonical-id",
"permission": "FULL_CONTROL",
"type": "CanonicalUser"
}]
}
참고 Object ACL 필드는 JSON 형식으로 정의돼요. 인벤토리 보고서는 Object ACL 필드 값을 base64로 인코딩된 문자열로 표시해요.
예를 들어 다음 JSON 형식의 Object ACL 필드가 있다고 가정해 볼게요.
{
"version": "2022-11-10",
"status": "AVAILABLE",
"grants": [
{
"canonicalId": "example-canonical-user-ID",
"type": "CanonicalUser",
"permission": "READ"
}]
}
Object ACL 필드는 인코딩되어 다음 base64 문자열로 표시돼요.
eyJ2ZX...9XX0=
Object ACL 필드의 JSON 디코딩 값을 얻으려면 Amazon Athena에서 이 필드를 조회하면 돼요. 쿼리 예시는 Amazon Athena로 Amazon S3 인벤토리 조회를 참고하세요.