SQL 의미 체계를 사용하여 액세스 권한 부여
테이블 및 테이블 버킷 정책에서 SQL 의미 체계를 사용하여 테이블에 권한을 부여할 수 있습니다. 사용할 수 있는 SQL 의미 체계의 예로는 CREATE, INSERT, DELETE, UPDATE 및 ALTER가 있습니다. 다음 표에는 사용자에게 권한을 부여하는 데 사용할 수 있는 SQL 의미 체계와 관련된 API 작업 목록이 나와 있습니다.
S3 Tables은 SQL 의미 체계를 사용하는 권한을 부분적으로 지원합니다. 예를 들어 CreateTable API는 테이블 버킷에 빈 테이블만 생성합니다. 테이블 스키마를 설정하려면 UpdateTableMetadata, PutTableData 및 GetTableMetadataLocation과 같은 추가 권한이 필요합니다. 또한 이러한 추가 권한을 제공한다는 것은 사용자에게 테이블에 행을 삽입할 수 있는 액세스 권한도 부여한다는 뜻입니다. SQL 의미 체계만을 기반으로 액세스를 제어하려면 S3 Tables과 통합된 AWS Lake Formation 또는 서드 파티 솔루션을 사용하는 것이 좋습니다.
| 테이블 수준 활동 | IAM 작업 |
|---|---|
SELECT |
s3tables:GetTableData,
s3tables:GetTableMetadataLocation |
CREATE |
s3tables:CreateTable,
s3tables:UpdateTableMetadataLocation,
s3tables:PutTableData,
s3tables:GetTableMetadataLocation, |
INSERT |
s3tables:UpdateTableMetadataLocation,
s3tables:PutTableData,
s3tables:GetTableMetadataLocation |
UPDATE |
s3tables:UpdateTableMetadataLocation,
s3tables:PutTableData,
s3tables:GetTableMetadataLocation |
ALTER,RENAME |
s3tables:UpdateTableMetadataLocation,
s3tables:PutTableData,
s3tables:GetTableMetadataLocation,
s3tables:RenameTable
|
DELETE,DROP |
s3tables:DeleteTable,
s3tables:UpdateTableMetadataLocation,
s3tables:PutTableData,
s3tables:GetTableMetadataLocation
|
참고
테이블 버킷에서 테이블을 삭제하려면 s3tables:DeleteTable 권한이 필요합니다. 이 권한을 사용하면 테이블과 연결된 모든 데이터 및 메타데이터를 영구적으로 제거할 수 있습니다. 삭제 작업은 취소할 수 없으므로 이 권한을 주의해서 사용하세요.