Nous ne mettons plus à jour le service Amazon Machine Learning et n'acceptons plus de nouveaux utilisateurs pour ce service. Cette documentation est disponible pour les utilisateurs existants, mais nous ne la mettons plus à jour. Pour plus d'informations, veuillez consulter la rubriqueQu'est-ce qu'Amazon Machine Learning.
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.
Prévention du député confus entre services
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. Dans AWS, l'emprunt d'identité entre services peut entraîner le problème de député confus. L'usurpation d'identité entre services 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é d'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 laaws:SourceArn
etaws:SourceAccount
clés de contexte de condition globale dans les politiques de ressources pour limiter les autorisations à la ressource octroyées par Amazon Learning à un autre service. 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 toute ressource de ce compte à être associée à l'utilisation entre services.
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 laaws:SourceArn
etaws:SourceAccount
clés contextuelles de condition globales dans Amazon ML pour éviter le problème d'adjoint confus lors de la lecture de données à partir d'un compartiment Amazon S3.
{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "machinelearning.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::
examplebucket
/exampleprefix
/*" "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012
" } "ArnLike": { "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012
:*" } } }, { "Effect": "Allow", "Principal": {"Service": "machinelearning.amazonaws.com"}, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::examplebucket
", "Condition": { "StringLike": { "s3:prefix": "exampleprefix
/*" } "StringEquals": { "aws:SourceAccount": "123456789012
" } "ArnLike": { "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012
:*" } } }] }