View a markdown version of this page

Cross-service prévention adjointe confuse - AWS Directory Service

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.

Cross-service prévention adjointe confuse

Le problème de député confus est un problème de sécurité dans lequel une entité qui n’est pas autorisée à effectuer une action peut contraindre une entité plus privilégiée à le faire. En AWS, l'usurpation d'identité interservices peut entraîner la confusion du problème des adjoints. Cross-service l'usurpation d'identité peut se produire lorsqu'un service (le service appelant) appelle un autre service (le service appelé). Le service appelant peut être manipulé et ses autorisations utilisées pour agir sur les ressources d’un autre client auxquelles on ne serait pas autorisé à accéder autrement. Pour éviter cela, AWS fournit des outils qui vous aident à protéger vos données pour tous les services avec des principaux de service qui ont eu accès aux ressources de votre compte.

Nous vous recommandons d'utiliser aws:SourceArn les clés contextuelles de condition aws:SourceAccount globale dans les politiques relatives aux ressources afin de limiter les autorisations qui, Directory Service pour Microsoft Active Directory, accordent un autre service à la ressource. Si la valeur aws:SourceArn ne contient pas l'ID du compte, tel qu'un ARN de compartiment Amazon S3, vous devez utiliser les deux clés de contexte de condition globale pour limiter les autorisations. Si vous utilisez les deux clés de contexte de condition globale et que la valeur aws:SourceArn contient l'ID de compte, la valeur aws:SourceAccount et le compte dans la valeur aws:SourceArn doivent utiliser le même ID de compte lorsqu'ils sont utilisés dans la même instruction de politique. Utilisez aws:SourceArn si vous souhaitez qu'une seule ressource soit associée à l'accès entre services. Utilisez aws:SourceAccount si vous souhaitez autoriser l’association d’une ressource de ce compte à l’utilisation interservices.

Dans l'exemple suivant, la valeur de aws:SourceArn doit être un groupe de CloudWatch journaux.

Le moyen le plus efficace de se protéger contre le problème de député confus consiste à utiliser la clé de contexte de condition globale aws:SourceArn avec l’ARN complet de la ressource. Si vous ne connaissez pas l’ARN complet de la ressource ou si vous spécifiez plusieurs ressources, utilisez la clé de contexte de condition globale aws:SourceArn avec des caractères génériques (*) pour les parties inconnues de l’ARN. Par exemple, arn:aws:servicename:*:123456789012:*.

L'exemple suivant montre comment utiliser les clés contextuelles aws:SourceArn et les conditions aws:SourceAccount globales dans AWS Managed Microsoft AD pour éviter le problème de confusion entre les administrateurs.

JSON
{ "Version":"2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "ds.amazonaws.com" }, "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-1:111122223333:log-group:/aws/directoryservice/Log_Group_Name:*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:ds:us-east-1:111122223333:directory/Directory_Name" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } } }

Dans l'exemple suivant, la valeur de aws:SourceArn doit être une rubrique SNS de votre compte. Par exemple, vous pouvez utiliser quelque chose comme arn:aws:sns:ap-southeast-1:123456789012:DirectoryMonitoring_d-966739499f « ap-southeast-1 » pour votre région, « 123456789012 » pour votre identifiant client et « DirectoryMonitoring _d-966739499f » pour le nom de la rubrique Amazon SNS que vous avez créée.

Le moyen le plus efficace de se protéger contre le problème de député confus consiste à utiliser la clé de contexte de condition globale aws:SourceArn avec l’ARN complet de la ressource. Si vous ne connaissez pas l’ARN complet de la ressource ou si vous spécifiez plusieurs ressources, utilisez la clé de contexte de condition globale aws:SourceArn avec des caractères génériques (*) pour les parties inconnues de l’ARN. Par exemple, arn:aws:servicename:*:123456789012:*.

L'exemple suivant montre comment utiliser les clés contextuelles aws:SourceArn et les conditions aws:SourceAccount globales dans AWS Managed Microsoft AD pour éviter le problème de confusion entre les administrateurs.

JSON
{ "Version":"2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "ds.amazonaws.com" }, "Action": [ "SNS:GetTopicAttributes", "SNS:SetTopicAttributes", "SNS:AddPermission", "SNS:RemovePermission", "SNS:DeleteTopic", "SNS:Subscribe", "SNS:ListSubscriptionsByTopic", "SNS:Publish" ], "Resource": [ "arn:aws:sns:us-east-1:111122223333:SNS_TOPIC_NAME" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:ds:us-east-1:111122223333:directory/EXTERNAL_DIRECTORY_ID" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } } }

L'exemple suivant montre une politique d'approbations IAM pour un rôle auquel l'accès à la console a été délégué. La valeur de aws:SourceArn doit être une ressource d'annuaire de votre compte. Pour plus d'informations, consultez la section Types de ressources définis par Directory Service. Par exemple, vous pouvez utiliser arn:aws:ds:us-east-1:123456789012:directory/d-1234567890, où 123456789012 correspond à votre identifiant client et d-1234567890 à votre identifiant d'annuaire.

JSON
{ "Version":"2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "ds.amazonaws.com" }, "Action": [ "sts:AssumeRole" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:ds:us-east-1:111122223333:directory/YOUR_DIRECTORY_ID" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } } }