Contoh kebijakan workgroup - Amazon Athena

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh kebijakan workgroup

Bagian ini mencakup contoh kebijakan yang dapat Anda gunakan untuk mengaktifkan berbagai tindakan pada kelompok kerja. Setiap kali Anda menggunakan IAM kebijakan, pastikan Anda mengikuti praktik IAM terbaik. Untuk informasi selengkapnya, lihat Praktik terbaik keamanan IAM di Panduan IAM Pengguna.

Workgroup adalah IAM sumber daya yang dikelola oleh Athena. Oleh karena itu, jika kebijakan workgroup Anda menggunakan tindakan yang diambil workgroup sebagai input, Anda harus menentukan workgroup ARN sebagai berikut:

"Resource": [arn:aws:athena:<region>:<user-account>:workgroup/<workgroup-name>]

<workgroup-name>Dimana nama workgroup Anda. Misalnya, untuk kelompok kerja bernamatest_workgroup, tentukan sebagai sumber daya sebagai berikut:

"Resource": ["arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup"]

Untuk daftar lengkap tindakan Amazon Athena, lihat nama API tindakan di Referensi Amazon API Athena. Untuk informasi selengkapnya tentang IAM kebijakan, lihat Membuat kebijakan dengan editor visual di Panduan IAM Pengguna. Untuk informasi selengkapnya tentang membuat IAM kebijakan untuk grup kerja, lihatMenggunakan IAM kebijakan untuk mengontrol akses workgroup.

contoh
Contoh kebijakan untuk akses penuh ke semua kelompok kerja

Kebijakan berikut memungkinkan akses penuh ke semua sumber daya grup kerja yang mungkin ada di akun. Kami menyarankan Anda menggunakan kebijakan ini untuk pengguna di akun Anda yang harus mengelola dan mengelola grup kerja untuk semua pengguna lain.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:*" ], "Resource": [ "*" ] } ] }
contoh
Contoh kebijakan untuk akses penuh ke workgroup tertentu

Kebijakan berikut memungkinkan akses penuh ke satu sumber daya grup kerja tertentu, bernamaworkgroupA. Anda dapat menggunakan kebijakan ini untuk pengguna dengan kontrol penuh atas grup kerja tertentu.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListEngineVersions", "athena:ListWorkGroups", "athena:ListDataCatalogs", "athena:ListDatabases", "athena:GetDatabase", "athena:ListTableMetadata", "athena:GetTableMetadata" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:BatchGetQueryExecution", "athena:GetQueryExecution", "athena:ListQueryExecutions", "athena:StartQueryExecution", "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" ] }, { "Effect": "Allow", "Action": [ "athena:DeleteWorkGroup", "athena:UpdateWorkGroup", "athena:GetWorkGroup", "athena:CreateWorkGroup" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/workgroupA" ] } ] }
contoh
Contoh kebijakan untuk menjalankan kueri di workgroup tertentu

Dalam kebijakan berikut, pengguna diizinkan untuk menjalankan kueri dalam yang ditentukanworkgroupA, dan melihatnya. Pengguna tidak diperbolehkan melakukan tugas manajemen untuk workgroup itu sendiri, seperti memperbarui atau menghapusnya.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListEngineVersions", "athena:ListWorkGroups", "athena:ListDataCatalogs", "athena:ListDatabases", "athena:GetDatabase", "athena:ListTableMetadata", "athena:GetTableMetadata" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:GetWorkGroup", "athena:BatchGetQueryExecution", "athena:GetQueryExecution", "athena:ListQueryExecutions", "athena:StartQueryExecution", "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" ] } ] }
contoh
Contoh kebijakan untuk menjalankan kueri di workgroup utama

Anda dapat memodifikasi contoh sebelumnya untuk memungkinkan pengguna tertentu juga menjalankan kueri di workgroup utama.

catatan

Sebaiknya Anda menambahkan sumber daya workgroup utama untuk semua pengguna yang dikonfigurasi untuk menjalankan kueri di grup kerja yang ditunjuk. Menambahkan sumber daya ini ke kebijakan pengguna grup kerja mereka berguna jika grup kerja yang ditunjuk dihapus atau dinonaktifkan. Dalam hal ini, mereka dapat terus menjalankan kueri di workgroup utama.

Untuk mengizinkan pengguna di akun Anda menjalankan kueri di grup kerja utama, tambahkan baris yang berisi grup kerja utama ke bagian sumber dayaExample policy for running queries in a specified workgroup, seperti pada contoh berikut. ARN

arn:aws:athena:us-east-1:123456789012:workgroup/primary"
contoh
Contoh kebijakan untuk operasi manajemen pada workgroup tertentu

Dalam kebijakan berikut, pengguna diizinkan untuk membuat, menghapus, memperoleh detail, dan memperbarui grup kerjatest_workgroup.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListEngineVersions" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "athena:CreateWorkGroup", "athena:GetWorkGroup", "athena:DeleteWorkGroup", "athena:UpdateWorkGroup" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup" ] } ] }
contoh
Contoh kebijakan untuk daftar kelompok kerja

Kebijakan berikut memungkinkan semua pengguna untuk mencantumkan semua grup kerja:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:ListWorkGroups" ], "Resource": "*" } ] }
contoh
Contoh kebijakan untuk menjalankan dan menghentikan kueri di grup kerja tertentu

Dalam kebijakan ini, pengguna diizinkan untuk menjalankan kueri di grup kerja:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:StartQueryExecution", "athena:StopQueryExecution" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup" ] } ] }
contoh
Contoh kebijakan untuk bekerja dengan kueri bernama dalam kelompok kerja tertentu

Dalam kebijakan berikut, pengguna memiliki izin untuk membuat, menghapus, dan memperoleh informasi tentang kueri bernama di grup kerja yang ditentukan:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "athena:CreateNamedQuery", "athena:GetNamedQuery", "athena:DeleteNamedQuery" ], "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/test_workgroup" ] } ] }
contoh
Contoh kebijakan untuk bekerja dengan notebook Spark di Athena

Gunakan kebijakan seperti berikut ini untuk bekerja dengan notebook Spark di Athena.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreatingWorkGroupWithDefaults", "Action": [ "athena:CreateWorkGroup", "s3:CreateBucket", "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy", "s3:GetBucketLocation", "athena:ImportNotebook" ], "Effect": "Allow", "Resource": [ "arn:aws:athena:us-east-1:123456789012:workgroup/Demo*", "arn:aws:s3:::123456789012-us-east-1-athena-results-bucket-*", "arn:aws:iam::123456789012:role/service-role/AWSAthenaSparkExecutionRole-*", "arn:aws:iam::123456789012:policy/service-role/AWSAthenaSparkRolePolicy-*" ] }, { "Sid": "AllowRunningCalculations", "Action": [ "athena:ListWorkGroups", "athena:GetWorkGroup", "athena:StartSession", "athena:CreateNotebook", "athena:ListNotebookMetadata", "athena:ListNotebookSessions", "athena:GetSessionStatus", "athena:GetSession", "athena:GetNotebookMetadata", "athena:CreatePresignedNotebookUrl" ], "Effect": "Allow", "Resource": "arn:aws:athena:us-east-1:123456789012:workgroup/Demo*" }, { "Sid": "AllowListWorkGroupAndEngineVersions", "Action": [ "athena:ListWorkGroups", "athena:ListEngineVersions" ], "Effect": "Allow", "Resource": "*" } ] }