Konfigurasikan IAM izin untuk Kualitas Data AWS Glue - AWS Glue

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

Konfigurasikan IAM izin untuk Kualitas Data AWS Glue

Topik ini memberikan informasi untuk membantu Anda memahami tindakan dan sumber daya yang dapat digunakan IAM administrator dalam kebijakan AWS Identity and Access Management (IAM) untuk Kualitas Data AWS Glue. Ini juga mencakup IAM kebijakan sampel dengan izin minimum yang Anda perlukan untuk menggunakan Kualitas Data AWS Glue dengan Katalog Data AWS Glue.

Untuk informasi tambahan tentang keamanan di AWS Glue, lihatKeamanan di AWS Glue.

IAMizin untuk Kualitas Data AWS Glue

Tabel berikut mencantumkan izin yang dibutuhkan pengguna untuk melakukan operasi Kualitas Data AWS Glue tertentu. Untuk menetapkan otorisasi halus untuk Kualitas Data AWS Glue, Anda dapat menentukan tindakan ini dalam elemen Action pernyataan kebijakan. IAM

AWS Glue Data Tindakan Kualitas
Tindakan Deskripsi Jenis sumber daya
glue:CreateDataQualityRuleset Memberikan izin untuk membuat kumpulan aturan kualitas data. ::dataQualityRuleset/<name>
glue:DeleteDataQualityRuleset Memberikan izin untuk menghapus kumpulan aturan kualitas data. ::dataQualityRuleset/<name>
glue:GetDataQualityRuleset Memberikan izin untuk mengambil kumpulan aturan kualitas data. ::dataQualityRuleset/<name>
glue:ListDataQualityRulesets Memberikan izin untuk mengambil semua aturan kualitas data. ::dataQualityRuleset/*
glue:UpdateDataQualityRuleset Memberikan izin untuk memperbarui kumpulan aturan kualitas data. ::dataQualityRuleset/<name>
glue:GetDataQualityResult Memberikan izin untuk mengambil hasil tugas kualitas data yang dijalankan. IAMTindakan ini juga memberikan izin untuk hal-hal berikut: APIS
  • BatchGetDataQualityQualityResult

  • ListDataQualityStatistics

  • ListDataQualityStatisticAnnotations

::dataQualityRuleset/<name>
glue:ListDataQualityResults Memberikan izin untuk mengambil semua hasil tugas kualitas data yang dijalankan. ::dataQualityRuleset/*
glue:CancelDataQualityRuleRecommendationRun Memberikan izin untuk menghentikan menjalankan tugas rekomendasi kualitas data yang sedang berlangsung. ::dataQualityRuleset/*
glue:GetDataQualityRuleRecommendationRun Memberikan izin untuk mengambil tugas rekomendasi kualitas data yang dijalankan. ::dataQualityRuleset/*
glue:ListDataQualityRuleRecommendationRuns Memberikan izin untuk mengambil semua tugas rekomendasi kualitas data yang berjalan. ::dataQualityRuleset/*
glue:StartDataQualityRuleRecommendationRun Memberikan izin untuk memulai tugas rekomendasi kualitas data yang dijalankan. ::dataQualityRuleset/*
glue:CancelDataQualityRulesetEvaluationRun Memberikan izin untuk menghentikan menjalankan tugas kualitas data yang sedang berlangsung. ::dataQualityRuleset/*
glue:GetDataQualityRulesetEvaluationRun Memberikan izin untuk mengambil tugas kualitas data yang dijalankan. ::dataQualityRuleset/*
glue:ListDataQualityRulesetEvaluationRuns Memberikan izin untuk mengambil semua tugas kualitas data yang berjalan. ::dataQualityRuleset/*
glue:StartDataQualityRulesetEvaluationRun Memberikan izin untuk memulai menjalankan tugas kualitas data. ::dataQualityRuleset/<name>
glue:PublishDataQuality Memberikan izin untuk mempublikasikan hasil kualitas data. ::dataQualityRuleset/<name>
glue:GetDataQualityModel Memberikan izin untuk mengambil Model Kualitas Data. ::dataQualityRuleset/<name>, ::job/<name>
glue:GetDataQualityModelResult Memberikan izin untuk mengambil Hasil Model Kualitas Data. ::dataQualityRuleset/<name>, ::job/<name>
glue:PutDataQualityStatisticAnnotation Memberikan izin untuk menambahkan anotasi ke Statistik. IAMTindakan ini juga memberikan izin untuk hal-hal berikut: APIS
  • BatchPutDataQualityStatisticAnnotation

::dataQualityRuleset/<name>, ::job/<name>
glue:PutDataQualityProfileAnnotation Memberikan izin untuk menempatkan anotasi ke semua Statistik dalam Profil. ::dataQualityRuleset/<name>, ::job/<name>

IAMpenyiapan diperlukan untuk evaluasi penjadwalan berjalan

IAMizin

Untuk menjalankan evaluasi Kualitas Data terjadwal, Anda harus menambahkan IAM:PassRole tindakan ke kebijakan izin.

AWS EventBridge Izin yang diperlukan penjadwal
Tindakan Deskripsi Jenis sumber daya
iam:PassRole Memberikan izin IAM untuk mengizinkan pengguna melewati peran yang disetujui. ARNdari peran yang digunakan untuk memanggil StartDataQualityRulesetEvaluationRun

Tanpa izin ini terjadi kesalahan berikut:

"errorCode": "AccessDenied" "errorMessage": "User: arn:aws:sts::account_id:assumed-role/AWSGlueServiceRole is not authorized to perform: iam:PassRole on resource: arn:aws:iam::account_id:role/service-role/AWSGlueServiceRole because no identity-based policy allows the iam:PassRole action"

IAMentitas tepercaya

Layanan AWS Glue dan AWS EventBridge Scheduler harus terdaftar di entitas tepercaya untuk membuat dan menjalankan jadwalStartDataQualityEvaluationRun.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Contoh kebijakan IAM

IAMPeran untuk AWS Glue Data Quality membutuhkan jenis izin berikut:

  • Izin untuk operasi AWS Glue Data Quality sehingga Anda bisa mendapatkan aturan kualitas data yang direkomendasikan dan menjalankan tugas kualitas data terhadap tabel di Katalog Data AWS Glue. Contoh IAM kebijakan di bagian ini mencakup izin minimum yang diperlukan untuk operasi AWS Glue Data Quality.

  • Izin yang memberikan akses ke tabel Katalog Data Anda dan data yang mendasarinya. Izin ini bervariasi tergantung pada kasus penggunaan Anda. Misalnya, untuk data yang Anda katalog di Amazon S3, izin harus menyertakan akses ke Amazon S3.

    catatan

    Anda harus mengonfigurasi izin Amazon S3 selain izin yang dijelaskan di bagian ini.

Izin minimum untuk mendapatkan aturan kualitas data yang direkomendasikan

Kebijakan contoh ini mencakup izin yang Anda perlukan untuk menghasilkan aturan kualitas data yang direkomendasikan.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGlueRuleRecommendationRunActions", "Effect": "Allow", "Action": [ "glue:GetDataQualityRuleRecommendationRun", "glue:PublishDataQuality", "glue:CreateDataQualityRuleset" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, { "Sid": "AllowCatalogPermissions", "Effect": "Allow", "Action": [ "glue:GetPartitions", "glue:GetTable" ], "Resource": [ "*" ] }, { "Sid": "AllowS3GetObjectToRunRuleRecommendationTask", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::aws-glue-*" }, { // Optional for Logs "Sid": "AllowPublishingCloudwatchLogs", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": "*" }, ] }

Izin minimum untuk menjalankan tugas kualitas data

Kebijakan contoh ini mencakup izin yang Anda perlukan untuk menjalankan tugas evaluasi kualitas data.

Pernyataan kebijakan berikut bersifat opsional, tergantung pada kasus penggunaan Anda:

  • AllowCloudWatchPutMetricDataToPublishTaskMetrics- Diperlukan jika Anda ingin mempublikasikan metrik run kualitas data ke Amazon CloudWatch.

  • AllowS3PutObjectToWriteTaskResults- Diperlukan jika Anda ingin menulis hasil menjalankan kualitas data ke Amazon S3.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGlueGetDataQualityRuleset", "Effect": "Allow", "Action": [ "glue:GetDataQualityRuleset" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/<YOUR-RULESET-NAME>" }, { "Sid": "AllowGlueRulesetEvaluationRunActions", "Effect": "Allow", "Action": [ "glue:GetDataQualityRulesetEvaluationRun", "glue:PublishDataQuality" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, { "Sid": "AllowCatalogPermissions", "Effect": "Allow", "Action": [ "glue:GetPartitions", "glue:GetTable" ], "Resource": [ "*" ] }, { "Sid": "AllowS3GetObjectForRulesetEvaluationRun", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::aws-glue-*" }, { "Sid": "AllowCloudWatchPutMetricDataToPublishTaskMetrics", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "Glue Data Quality" } } }, { "Sid": "AllowS3PutObjectToWriteTaskResults", "Effect": "Allow", "Action": [ "s3:PutObject*" ], "Resource": "arn:aws:s3:::<YOUR-BUCKET-NAME>/*" } ] }

Izin minimum untuk menjalankan pekerjaan kualitas ETL data

Kebijakan contoh ini mencakup izin yang Anda perlukan untuk menjalankan ETL Job berkualitas data.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGluePublishDataQualityResult", "Effect": "Allow", "Action": [ "glue:PublishDataQuality" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, //Optional to retrieve results, observation generation, //dynamic rules and DetectAnomalies { "Sid": "AllowGlueGetDataQualityResult", "Effect": "Allow", "Action": [ "glue:GetDataQualityResult" ], "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, //Optional to allow annotating statistics { "Sid": "AllowGlueDataQualityStatisticAnnotation", "Effect": "Allow", "Action": [ "glue:PutDataQualityStatisticAnnotation" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*", "arn:aws:glue:us-east-1:111122223333::job/{JobName}" ] }, //Optional to allow annotating all statistics in a profile { "Sid": "AllowGlueDataQualityProfileAnnotation", "Effect": "Allow", "Action": [ "glue:PutDataQualityProfileAnnotation" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*", "arn:aws:glue:us-east-1:111122223333::job/{JobName}" ] } }