Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan kebijakan kontrol IAM akses berbasis tag
Memiliki tag memungkinkan Anda menulis IAM kebijakan yang menyertakan Condition
blok untuk mengontrol akses ke sumber daya berdasarkan tagnya. Bagian ini mencakup contoh kebijakan tag untuk sumber daya workgroup dan katalog data.
Contoh kebijakan tag untuk kelompok kerja
IAMKebijakan berikut memungkinkan Anda menjalankan kueri dan berinteraksi dengan tag untuk grup kerja bernama: workgroupA
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListWorkGroups", "athena:ListEngineVersions", "athena:ListDataCatalogs", "athena:ListDatabases", "athena:GetDatabase", "athena:ListTableMetadata", "athena:GetTableMetadata" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:GetWorkGroup", "athena:TagResource", "athena:UntagResource", "athena:ListTagsForResource", "athena:StartQueryExecution", "athena:GetQueryExecution", "athena:BatchGetQueryExecution", "athena:ListQueryExecutions", "athena:StopQueryExecution", "athena:GetQueryResults", "athena:GetQueryResultsStream", "athena:CreateNamedQuery", "athena:GetNamedQuery", "athena:BatchGetNamedQuery", "athena:ListNamedQueries", "athena:DeleteNamedQuery", "athena:CreatePreparedStatement", "athena:GetPreparedStatement", "athena:ListPreparedStatements", "athena:UpdatePreparedStatement", "athena:DeletePreparedStatement" ], "Resource": "arn:aws:athena:
us-east-1
:123456789012
:workgroup/workgroupA
" } ] }
Tag yang terkait dengan sumber daya seperti workgroup disebut sebagai tag sumber daya. Tag sumber daya memungkinkan Anda menulis blok kebijakan seperti berikut ini yang menolak tindakan yang tercantum pada grup kerja mana pun yang ditandai dengan pasangan nilai kunci seperti,. stack
production
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "athena:GetWorkGroup", "athena:UpdateWorkGroup", "athena:DeleteWorkGroup", "athena:TagResource", "athena:UntagResource", "athena:ListTagsForResource", "athena:StartQueryExecution", "athena:GetQueryExecution", "athena:BatchGetQueryExecution", "athena:ListQueryExecutions", "athena:StopQueryExecution", "athena:GetQueryResults", "athena:GetQueryResultsStream", "athena:CreateNamedQuery", "athena:GetNamedQuery", "athena:BatchGetNamedQuery", "athena:ListNamedQueries", "athena:DeleteNamedQuery", "athena:CreatePreparedStatement", "athena:GetPreparedStatement", "athena:ListPreparedStatements", "athena:UpdatePreparedStatement", "athena:DeletePreparedStatement" ], "Resource": "arn:aws:athena:
us-east-1
:123456789012
:workgroup/*", "Condition": { "StringEquals": { "aws:ResourceTag/stack
": "production
" } } } ] }
Tag yang diteruskan sebagai parameter ke operasi yang mengubah tag (misalnya,TagResource
,UntagResource
, atau CreateWorkGroup
dengan tag) disebut sebagai tag permintaan. Contoh blok kebijakan berikut memungkinkan CreateWorkGroup
operasi hanya jika salah satu tag yang diteruskan memiliki kunci costcenter
dan nilai1
,2
, atau3
.
catatan
Jika Anda ingin mengizinkan IAM peran untuk meneruskan tag sebagai bagian dari CreateWorkGroup
operasi, pastikan Anda memberikan izin peran ke TagResource
dan CreateWorkGroup
tindakan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:CreateWorkGroup", "athena:TagResource" ], "Resource": "arn:aws:athena:
us-east-1
:123456789012
:workgroup/*", "Condition": { "StringEquals": { "aws:RequestTag/costcenter
": [ "1
", "2
", "3
" ] } } } ] }
Contoh kebijakan tag untuk katalog data
IAMKebijakan berikut memungkinkan Anda berinteraksi dengan tag untuk katalog data bernamadatacatalogA
:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListWorkGroups", "athena:ListEngineVersions", "athena:ListDataCatalogs", "athena:ListDatabases", "athena:GetDatabase", "athena:ListTableMetadata", "athena:GetTableMetadata" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:GetWorkGroup", "athena:TagResource", "athena:UntagResource", "athena:ListTagsForResource", "athena:StartQueryExecution", "athena:GetQueryExecution", "athena:BatchGetQueryExecution", "athena:ListQueryExecutions", "athena:StopQueryExecution", "athena:GetQueryResults", "athena:GetQueryResultsStream", "athena:CreateNamedQuery", "athena:GetNamedQuery", "athena:BatchGetNamedQuery", "athena:ListNamedQueries", "athena:DeleteNamedQuery" ], "Resource": [ "arn:aws:athena:
us-east-1
:123456789012
:workgroup/*" ] }, { "Effect": "Allow", "Action": [ "athena:CreateDataCatalog", "athena:GetDataCatalog", "athena:UpdateDataCatalog", "athena:DeleteDataCatalog", "athena:ListDatabases", "athena:GetDatabase", "athena:ListTableMetadata", "athena:GetTableMetadata", "athena:TagResource", "athena:UntagResource", "athena:ListTagsForResource" ], "Resource": "arn:aws:athena:us-east-1
:123456789012
:datacatalog/datacatalogA
" } ] }
Anda dapat menggunakan tag sumber daya untuk menulis blok kebijakan yang menolak tindakan tertentu pada katalog data yang ditandai dengan pasangan nilai kunci tag tertentu. Contoh kebijakan berikut menyangkal tindakan pada katalog data yang memiliki pasangan nilai kunci tag,. stack
production
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "athena:CreateDataCatalog", "athena:GetDataCatalog", "athena:UpdateDataCatalog", "athena:DeleteDataCatalog", "athena:GetDatabase", "athena:ListDatabases", "athena:GetTableMetadata", "athena:ListTableMetadata", "athena:StartQueryExecution", "athena:TagResource", "athena:UntagResource", "athena:ListTagsForResource" ], "Resource": "arn:aws:athena:
us-east-1
:123456789012
:datacatalog/*", "Condition": { "StringEquals": { "aws:ResourceTag/stack
": "production
" } } } ] }
Tag yang diteruskan sebagai parameter ke operasi yang mengubah tag (misalnya,TagResource
,UntagResource
, atau CreateDataCatalog
dengan tag) disebut sebagai tag permintaan. Contoh blok kebijakan berikut memungkinkan CreateDataCatalog
operasi hanya jika salah satu tag yang diteruskan memiliki kunci costcenter
dan nilai1
,2
, atau3
.
catatan
Jika Anda ingin mengizinkan IAM peran untuk meneruskan tag sebagai bagian dari CreateDataCatalog
operasi, pastikan Anda memberikan izin peran ke TagResource
dan CreateDataCatalog
tindakan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:CreateDataCatalog", "athena:TagResource" ], "Resource": "arn:aws:athena:
us-east-1
:123456789012
:datacatalog/*", "Condition": { "StringEquals": { "aws:RequestTag/costcenter
": [ "1
", "2
", "3
" ] } } } ] }