Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configurer les autorisations IAM pour AWS Qualité des données Glue
Cette rubrique fournit des informations pour vous aider à comprendre les actions et les ressources qu'un administrateur IAM peut utiliser dans le cadre d'une politique Gestion des identités et des accès AWS (IAM) pour AWS Glue Data Quality. Il inclut également des exemples de politiques IAM avec les autorisations minimales dont vous avez besoin pour utiliser AWS Glue Data Quality avec le AWS Glue Data Catalog.
Pour plus d'informations sur la sécurité dans AWS Glue, consultezSécurité dans AWS Glue.
Autorisations IAM pour AWS Qualité des données Glue
Le tableau suivant répertorie les autorisations dont les utilisateurs ont besoin pour effectuer des opérations spécifiques avec la qualité des données d' AWS Glue. Pour définir une autorisation précise pour AWS Glue Data Quality, vous pouvez spécifier ces actions dans l'Actionélément d'une déclaration de politique IAM.
| Action | Description | Types de ressources |
|---|---|---|
glue:CreateDataQualityRuleset |
Accorde l'autorisation de créer un jeu de règles de qualité des données. | ::dataQualityRuleset/<name> |
glue:DeleteDataQualityRuleset |
Accorde l'autorisation de supprimer un jeu de règles de qualité des données. | ::dataQualityRuleset/<name> |
glue:GetDataQualityRuleset |
Accorde l'autorisation de récupérer un jeu de règles de qualité des données. | ::dataQualityRuleset/<name> |
glue:ListDataQualityRulesets |
Accorde l'autorisation de récupérer tous les jeux de règles de qualité des données. | ::dataQualityRuleset/* |
glue:UpdateDataQualityRuleset |
Accorde l'autorisation de mettre à jour un jeu de règles de qualité des données. | ::dataQualityRuleset/<name> |
glue:GetDataQualityResult |
Accorde l'autorisation de récupérer le résultat d'une exécution de tâche liée à la qualité des données. Cette action IAM fournit également des autorisations aux API suivantes :
|
::dataQualityRuleset/<name> |
glue:ListDataQualityResults |
Accorde l'autorisation de récupérer tous les résultats d'exécution de tâches liées à la qualité des données. | ::dataQualityRuleset/* |
glue:CancelDataQualityRuleRecommendationRun |
Accorde l'autorisation d'arrêter l'exécution d'une tâche de recommandation sur la qualité des données en cours. | ::dataQualityRuleset/* |
glue:GetDataQualityRuleRecommendationRun |
Accorde l'autorisation de récupérer l'exécution d'une tâche de recommandation sur la qualité des données. | ::dataQualityRuleset/* |
glue:ListDataQualityRuleRecommendationRuns |
Accorde l'autorisation de récupérer toutes les exécutions de tâches de recommandation sur la qualité des données. | ::dataQualityRuleset/* |
glue:StartDataQualityRuleRecommendationRun |
Accorde l'autorisation de démarrer l'exécution d'une tâche de recommandation sur la qualité des données. | ::dataQualityRuleset/* |
glue:CancelDataQualityRulesetEvaluationRun |
Accorde l'autorisation d'arrêter l'exécution d'une tâche sur la qualité des données en cours. | ::dataQualityRuleset/* |
glue:GetDataQualityRulesetEvaluationRun |
Accorde l'autorisation de récupérer l'exécution de tâches liées à la qualité des données. | ::dataQualityRuleset/* |
glue:ListDataQualityRulesetEvaluationRuns |
Accorde l'autorisation de récupérer toutes les exécutions de tâches liées à la qualité des données. | ::dataQualityRuleset/* |
glue:StartDataQualityRulesetEvaluationRun |
Accorde l'autorisation de démarrer l'exécution d'une tâche liée à la qualité des données. | ::dataQualityRuleset/<name> |
glue:PublishDataQuality |
Accorde l’autorisation de publier des résultats sur la qualité des données. | ::dataQualityRuleset/<name> |
glue:GetDataQualityModel |
Accorde l’autorisation de récupérer un modèle de qualité des données. | ::dataQualityRuleset/<name>,
::job/<name>
|
glue:GetDataQualityModelResult |
Accorde l’autorisation de récupérer les résultats d’un modèle de qualité des données. | ::dataQualityRuleset/<name>,
::job/<name>
|
glue:PutDataQualityStatisticAnnotation |
Accorde l’autorisation d’ajouter des annotations aux statistiques. Cette action IAM fournit également des autorisations aux API suivantes :
|
::dataQualityRuleset/<name>,
::job/<name>
|
glue:PutDataQualityProfileAnnotation |
Accorde l’autorisation d’ajouter des annotations à toutes les statistiques d’un profil. | ::dataQualityRuleset/<name>,
::job/<name>
|
Configuration IAM requise pour planifier les exécutions d'évaluation
Autorisations IAM
Pour exécuter des exécutions d'évaluation de la qualité des données planifiées, vous devez ajouter l'action IAM:PassRole à la politique d'autorisation.
| Action | Description | Types de ressources |
|---|---|---|
iam:PassRole |
Permet à IAM d'autoriser l'utilisateur à transmettre les rôles approuvés. | ARN du rôle utilisé pour appeler StartDataQualityRulesetEvaluationRun |
Sans ces autorisations, l'erreur suivante se produit :
"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"
Entités de confiance IAM
Les services AWS Glue et AWS EventBridge Scheduler doivent être répertoriés dans les entités de confiance afin de créer et d'exécuter un planning. StartDataQualityEvaluationRun
Exemple de politiques IAM
Un rôle IAM pour AWS Glue Data Quality nécessite les types d'autorisations suivants :
-
Autorisations pour les opérations AWS Glue Data Quality afin que vous puissiez obtenir les règles de qualité des données recommandées et exécuter une tâche de qualité des données sur une table du catalogue de données AWS Glue. Les exemples de politiques IAM présentés dans cette section incluent les autorisations minimales requises pour les opérations de AWS Glue Data Quality.
-
Autorisations qui donnent accès à la table de votre catalogue de données et aux données sous-jacentes. Ces autorisations varient en fonction de votre cas d'utilisation. Par exemple, pour les données que vous cataloguez dans Amazon S3, les autorisations doivent inclure l'accès à Amazon S3.
Note
Vous devez configurer ces autorisations Amazon S3 en plus des autorisations décrites dans cette section.
Autorisations minimales pour obtenir les règles de qualité des données recommandées
Cet exemple de politique inclut les autorisations dont vous avez besoin pour générer des règles de qualité des données recommandées.
Autorisations minimales pour obtenir des recommandations avancées en matière de règles de qualité des données
Vous devez disposer d'une iam:PassRole autorisation pour le rôle de recommandation. Le rôle n'a pas besoin d'Amazon Bedrockautorisations.
Politique d’approbation
Utilisez cette politique de confiance pour permettre à AWS Glue d'assumer le rôle de recommandation pour votre table source.
Définissez aws : SourceArn sur l'ARN complet de la table source. Utilisez l'ID de compte de cet ARN pour aws : SourceAccount.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnEquals": { "aws:SourceArn": "arn:aws:glue:us-east-1:111122223333:table/database-name/table-name" } } } ] }
Politique d’autorisations
Lors de la première ADVANCED exécution, AWS Glue crée les ressources suivantes dans votre compte :
-
Le groupe de travail
glue-dataquality-samplingAthena chargé d'exécuter des requêtes pour les recommandations de règles. -
Le compartiment
aws-glue-dataquality-sampling-Amazon S3 pour stocker les résultats des requêtes.account-id-region
Pour les exécutions suivantes, AWS Glue réutilise le groupe de travail et le bucket existants. Pour plus de détails, consultez Protection des données pour des recommandations avancées en matière de règles de qualité des données.
Associez la politique d'autorisations suivante à votre rôle de recommandation.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCatalogRead", "Effect": "Allow", "Action": [ "glue:GetDatabase", "glue:GetPartitions", "glue:GetTable" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:catalog", "arn:aws:glue:us-east-1:111122223333:database/database-name", "arn:aws:glue:us-east-1:111122223333:table/database-name/table-name" ] }, { "Sid": "AllowDataQualityRecommendationResults", "Effect": "Allow", "Action": "glue:PublishDataQuality", "Resource": "arn:aws:glue:us-east-1:111122223333:dataQualityRuleset/*" }, { "Sid": "AllowDataAccess", "Effect": "Allow", "Action": [ "athena:CreateWorkGroup", "athena:GetQueryExecution", "athena:GetQueryResults", "athena:StartQueryExecution" ], "Resource": "arn:aws:athena:us-east-1:111122223333:workgroup/glue-dataquality-sampling" }, { "Sid": "AllowSourceRead", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::source-bucket", "arn:aws:s3:::source-bucket/*" ] }, { "Sid": "AllowSamplingBucket", "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:CreateBucket", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutLifecycleConfiguration", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::aws-glue-dataquality-sampling-111122223333-us-east-1", "arn:aws:s3:::aws-glue-dataquality-sampling-111122223333-us-east-1/athena-results/*" ] } ] }
Note
Si le compartiment existe, vous pouvez le supprimer s3:CreateBucket de cette politique. Si vous supprimez le bucket, AWS Glue a de nouveau besoin de cette autorisation. Toutes les autres autorisations prévues dans cette politique restent nécessaires pour les exécutions suivantes.
Autorisations supplémentaires
Si une condition de cette liste s'applique, ajoutez les autorisations associées à votre rôle de recommandation.
-
Si Lake Formation contrôle l'accès aux tables, ajoutez
lakeformation:GetDataAccess. Accordez le rôleDESCRIBEsur la base de donnéesDESCRIBEetSELECTsur la table. -
Si vous spécifiez une configuration de sécurité de la qualité des données, ajoutez une
glue:GetSecurityConfigurationautorisation. -
Si vous le spécifiez
CreatedRulesetName, ajoutez uneglue:CreateDataQualityRulesetautorisation. -
Si vous spécifiez une configuration de sécurité de la qualité des données avec une clé gérée par le client, ajoutez l'instruction suivante pour cette clé.
{ "Sid": "AllowDataQualityEncryption", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext", "kms:ReEncrypt*" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-id" }Votre rôle de recommandation a besoin de ces actions pour le chiffrement des résultats des requêtes et le chiffrement des actifs AWS Glue Data Quality. La politique clé doit également autoriser ces actions pour votre rôle. Pour plus de détails, consultez Stratégie de clé.
-
Si les objets source utilisent SSE-KMS, ajoutez l'instruction suivante.
{ "Sid": "AllowSourceDataDecryption", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-east-1:111122223333:key/source-key-id" }La politique de clé source doit également autoriser le rôle de recommandation à déchiffrer les objets source.
Autorisations minimales pour exécuter une tâche liée à la qualité des données
Cet exemple de politique inclut les autorisations dont vous avez besoin pour exécuter une tâche d'évaluation de la qualité des données.
Les instructions de politique suivantes sont facultatives et dépendent de votre cas d'utilisation :
-
AllowCloudWatchPutMetricDataToPublishTaskMetrics: obligatoire si vous souhaitez publier des métriques d'exécution sur la qualité des données dans Amazon CloudWatch. -
AllowS3PutObjectToWriteTaskResults: obligatoire si vous souhaitez écrire des résultats d'exécution sur la qualité des données dans Amazon S3.
Autorisations minimales pour exécuter une tâche ETL liée à la qualité des données
Cet exemple de politique inclut les autorisations dont vous avez besoin pour exécuter une tâche ETL liée à la qualité des données.