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.
Exemples de politique basée sur l'identité d'Amazon Pinpoint
Par défaut, les utilisateurs et les rôles ne sont pas autorisés à créer ou à modifier des ressources Amazon Pinpoint. Ils ne peuvent pas non plus effectuer de tâches à l'aide du AWS Management Console AWS CLI, ou d'un AWS API. Un IAM administrateur doit créer des IAM politiques qui accordent aux utilisateurs et aux rôles l'autorisation d'effectuer des API opérations spécifiques sur les ressources dont ils ont besoin. Il doit ensuite attacher ces stratégies aux utilisateurs ou aux groupes ayant besoin de ces autorisations.
Pour savoir comment créer une politique IAM basée sur l'identité à l'aide de ces exemples de documents de JSON stratégie, voir Création de politiques dans l'JSONonglet du Guide de l'IAMutilisateur.
Rubriques
- Bonnes pratiques en matière de politiques
- Utilisation de la console Amazon Pinpoint
- Exemple : accès à un seul projet Amazon Pinpoint
- Exemple : affichage des ressources Amazon Pinpoint en fonction des balises
- Exemple : autoriser des utilisateurs à afficher leurs propres autorisations
- Exemples : fourniture d'un accès aux actions Amazon Pinpoint API
- Exemples : fourniture d'un accès à Amazon Pinpoint SMS et aux actions vocales API
- Exemple : restriction de l'accès d'un projet Amazon Pinpoint à des adresses IP spécifiques
- Exemple : restriction de l'accès Amazon Pinpoint en fonction des balises
- Exemple : autoriser Amazon Pinpoint à envoyer des e-mails en utilisant des identités vérifiées sur Amazon SES
Bonnes pratiques en matière de politiques
Les politiques basées sur l'identité déterminent si une personne peut créer, consulter ou supprimer des ressources Amazon Pinpoint dans votre compte. Ces actions peuvent entraîner des frais pour votre Compte AWS. Lorsque vous créez ou modifiez des politiques basées sur l’identité, suivez ces instructions et recommandations :
-
Commencez AWS par les politiques gérées et passez aux autorisations du moindre privilège : pour commencer à accorder des autorisations à vos utilisateurs et à vos charges de travail, utilisez les politiques AWS gérées qui accordent des autorisations pour de nombreux cas d'utilisation courants. Ils sont disponibles dans votre Compte AWS. Nous vous recommandons de réduire davantage les autorisations en définissant des politiques gérées par les AWS clients spécifiques à vos cas d'utilisation. Pour plus d'informations, consultez les politiques AWS gérées ou les politiques AWS gérées pour les fonctions professionnelles dans le Guide de IAM l'utilisateur.
-
Appliquer les autorisations du moindre privilège : lorsque vous définissez des autorisations à IAM l'aide de politiques, accordez uniquement les autorisations nécessaires à l'exécution d'une tâche. Pour ce faire, vous définissez les actions qui peuvent être entreprises sur des ressources spécifiques dans des conditions spécifiques, également appelées autorisations de moindre privilège. Pour plus d'informations sur l'utilisation IAM pour appliquer des autorisations, consultez la section Politiques et autorisations du Guide de IAM l'utilisateur. IAM
-
Utilisez des conditions dans IAM les politiques pour restreindre davantage l'accès : vous pouvez ajouter une condition à vos politiques pour limiter l'accès aux actions et aux ressources. Par exemple, vous pouvez rédiger une condition de politique pour spécifier que toutes les demandes doivent être envoyées en utilisantSSL. Vous pouvez également utiliser des conditions pour accorder l'accès aux actions de service si elles sont utilisées par le biais d'un service spécifique Service AWS, tel que AWS CloudFormation. Pour plus d'informations, voir Éléments IAM JSON de politique : Condition dans le guide de IAM l'utilisateur.
-
Utilisez IAM Access Analyzer pour valider vos IAM politiques afin de garantir des autorisations sécurisées et fonctionnelles. IAM Access Analyzer valide les politiques nouvelles et existantes afin qu'elles soient conformes au langage des IAM politiques (JSON) et IAM aux meilleures pratiques. IAMAccess Analyzer fournit plus de 100 vérifications des politiques et des recommandations exploitables pour vous aider à créer des politiques sécurisées et fonctionnelles. Pour plus d'informations, consultez la section Valider les politiques avec IAM Access Analyzer dans le guide de l'IAMutilisateur.
-
Exiger l'authentification multifactorielle (MFA) : si vous avez un scénario qui nécessite des IAM utilisateurs ou un utilisateur root Compte AWS, activez-le MFA pour une sécurité supplémentaire. Pour exiger le MFA moment où les API opérations sont appelées, ajoutez MFA des conditions à vos politiques. Pour plus d'informations, consultez la section APIAccès sécurisé avec MFA dans le guide de IAM l'utilisateur.
Pour plus d'informations sur les meilleures pratiques en matière de sécuritéIAM, consultez la section Bonnes pratiques en matière de sécurité IAM dans le Guide de IAM l'utilisateur.
Utilisation de la console Amazon Pinpoint
Pour accéder à la console Amazon Pinpoint, vous devez disposer d'un ensemble minimum d'autorisations. Ces autorisations doivent vous permettre de répertorier et de consulter les informations relatives aux ressources Amazon Pinpoint de votre AWS compte. Si vous créez une stratégie basée sur l'identité qui applique des autorisations plus restrictives que l'ensemble minimum d'autorisations requis, la console ne fonctionnera pas comme prévu pour les entités (utilisateurs et rôles) tributaires de cette stratégie. Pour vous assurer que ces entités peuvent utiliser la console Amazon Pinpoint, attachez une stratégie aux entités. Pour plus d'informations, consultez la section Ajouter des autorisations à un utilisateur dans le Guide de IAM l'utilisateur.
L'exemple de politique suivant fournit un accès en lecture seule à la console Amazon Pinpoint dans une région spécifique. AWS Il inclut un accès en lecture seule à d'autres services dont dépend la console Amazon Pinpoint, tels qu'Amazon Simple Email Service (Amazon) et SES Amazon IAM Kinesis.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "UseConsole", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:
region
:accountId
:*" }, { "Effect": "Allow", "Action": [ "firehose:ListDeliveryStreams", "iam:ListRoles", "kinesis:ListStreams", "s3:List*", "ses:Describe*", "ses:Get*", "ses:List*", "sns:ListTopics" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId
" } } } ] }
Dans l'exemple de stratégie précédent, remplacez region
avec le nom d'une AWS région, et remplacez accountId
avec votre identifiant de AWS compte.
Il n'est pas nécessaire d'accorder des autorisations de console minimales aux utilisateurs qui passent des appels uniquement vers le AWS CLI ou le AWS API. Au lieu de cela, autorisez uniquement l'accès aux actions correspondant à l'APIopération qu'ils tentent d'effectuer.
Exemple : accès à un seul projet Amazon Pinpoint
Vous pouvez également créer des stratégies en lecture seule qui permettent d'accéder uniquement à des projets spécifiques. L'exemple de stratégie suivant permet à des utilisateurs de se connecter à la console et d'afficher une liste des projets. Il permet également aux utilisateurs de consulter des informations sur les ressources associées à d'autres AWS services dont dépend la console Amazon Pinpoint, tels qu'Amazon SES et Amazon IAM Kinesis. Toutefois, la stratégie permet aux utilisateurs d'afficher des informations supplémentaires uniquement sur le projet spécifié dans la stratégie. Vous pouvez modifier cette politique pour autoriser l'accès à d'autres projets ou AWS régions.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewProject", "Effect": "Allow", "Action": "mobiletargeting:GetApps", "Resource": "arn:aws:mobiletargeting:
region
:accountId
:*" }, { "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": [ "arn:aws:mobiletargeting:region
:accountId
:apps/projectId
", "arn:aws:mobiletargeting:region
:accountId
:apps/projectId
/*", "arn:aws:mobiletargeting:region
:accountId
:reports" ] }, { "Effect": "Allow", "Action": [ "ses:Get*", "kinesis:ListStreams", "firehose:ListDeliveryStreams", "iam:ListRoles", "ses:List*", "sns:ListTopics", "ses:Describe*", "s3:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId
" } } } ] }
Dans l'exemple précédent, remplacez region
avec le nom d'une AWS région, remplacez accountId
avec votre identifiant de AWS compte, et remplacez projectId
avec l'ID du projet Amazon Pinpoint auquel vous souhaitez donner accès.
De même, vous pouvez créer des politiques qui accordent à un utilisateur de votre AWS compte un accès en écriture limité à l'un de vos projets Amazon Pinpoint, par exemple le projet qui possède l'ID du 810c7aab86d42fb2b56c8c966example
projet. Dans ce cas, vous souhaitez autoriser l'utilisateur à afficher, ajouter et mettre à jour des composants de projet, tels que des segments et des campagnes, mais pas à supprimer des composants.
Outre l'octroi d'autorisations pour les actions mobiletargeting:Get
et mobiletargeting:List
, créez une stratégie qui accorde des autorisations pour les actions suivantes : mobiletargeting:Create
, mobiletargeting:Update
et mobiletargeting:Put
. Il s'agit des autorisations supplémentaires requises pour créer et gérer la plupart des composants du projet. Par exemple :
{ "Version": "2012-10-17", "Statement": [ { "Sid": "LimitedWriteProject", "Effect": "Allow", "Action": "mobiletargeting:GetApps", "Resource": "arn:aws:mobiletargeting:
region
:accountId
:*" }, { "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*", "mobiletargeting:Create*", "mobiletargeting:Update*", "mobiletargeting:Put*" ], "Resource": [ "arn:aws:mobiletargeting:region
:accountId
:apps/810c7aab86d42fb2b56c8c966example", "arn:aws:mobiletargeting:region
:accountId
:apps/810c7aab86d42fb2b56c8c966example/*", "arn:aws:mobiletargeting:region
:accountId
:reports" ] }, { "Effect": "Allow", "Action": [ "ses:Get*", "kinesis:ListStreams", "firehose:ListDeliveryStreams", "iam:ListRoles", "ses:List*", "sns:ListTopics", "ses:Describe*", "s3:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId
" } } } ] }
Exemple : affichage des ressources Amazon Pinpoint en fonction des balises
Vous pouvez utiliser des conditions dans une stratégie basée sur l'identité pour contrôler l'accès aux ressources Amazon Pinpoint en fonction des balises. Cet exemple de stratégie montre comment vous pouvez créer ce type de stratégie pour autoriser l'affichage des ressources Amazon Pinpoint. Toutefois, l'autorisation est accordée uniquement si la balise de ressource Owner
a la valeur du nom d'utilisateur de cet utilisateur. Cette politique accorde également les autorisations nécessaires pour réaliser cette action sur la console.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListResources", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "*" }, { "Sid": "ViewResourceIfOwner", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:*:*:*", "Condition": { "StringEquals": { "aws:ResourceTag/Owner": "
userName
" }, "StringEquals": { "aws:SourceAccount": "accountId
" }, "ArnLike": { "aws:SourceArn": "arn:aws:mobiletargeting:region
:accountId
:*" } } } ] }
Vous pouvez attacher ce type de stratégie aux utilisateurs de votre compte. Si un utilisateur nommé richard-roe
tente d'afficher une ressource Amazon Pinpoint, la ressource doit être balisée Owner=richard-roe
ou owner=richard-roe
. Dans le cas contraire, l'utilisateur se voit refuser l'accès. La clé de condition d'étiquette Owner
correspond à la fois à Owner
et à owner
, car les noms de clé de condition ne sont pas sensibles à la casse. Pour plus d'informations, voir Éléments IAM JSON de politique : Condition dans le guide de IAM l'utilisateur.
Exemple : autoriser des utilisateurs à afficher leurs propres autorisations
Cet exemple montre comment créer une politique qui permet aux IAM utilisateurs de consulter les politiques intégrées et gérées associées à leur identité d'utilisateur. Cette politique inclut les autorisations permettant d'effectuer cette action sur la console ou par programmation à l'aide du AWS CLI ou. AWS API
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }
Exemples : fourniture d'un accès aux actions Amazon Pinpoint API
Cette section fournit des exemples de politiques qui autorisent l'accès aux fonctionnalités disponibles sur Amazon PinpointAPI, qui est le principal API Amazon Pinpoint. Pour en savoir plus à ce sujetAPI, consultez le Amazon Pinpoint API Reference.
Accès en lecture seule
L'exemple de politique suivant autorise l'accès en lecture seule à toutes les ressources de votre compte Amazon Pinpoint dans une région spécifique. AWS
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewAllResources", "Effect": "Allow", "Action": [ "mobiletargeting:Get*", "mobiletargeting:List*" ], "Resource": "arn:aws:mobiletargeting:
region
:accountId
:*" } ] }
Dans l'exemple précédent, remplacez region
avec le nom d'une AWS région, et remplacez accountId
avec votre identifiant de AWS
compte.
Accès administrateur
L'exemple de stratégie suivant autorise un accès complet à toutes les actions et ressources Amazon Pinpoint de votre compte Amazon Pinpoint :
{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccess", "Effect": "Allow", "Action": [ "mobiletargeting:*" ], "Resource": "arn:aws:mobiletargeting:
region
:accountId
:*" } ] }
Dans l'exemple précédent, remplacez accountId
avec votre identifiant de AWS compte.
Exemples : fourniture d'un accès à Amazon Pinpoint SMS et aux actions vocales API
Cette section fournit des exemples de politiques qui autorisent l'accès aux fonctionnalités disponibles sur Amazon Pinpoint SMS et Voice. API Il s'agit d'un supplément API qui fournit des options avancées pour l'utilisation SMS et la gestion des canaux vocaux dans Amazon Pinpoint. Pour en savoir plus à ce sujetAPI, consultez le Amazon Pinpoint SMS and Voice API Reference.
Accès en lecture seule
L'exemple de politique suivant autorise l'accès en lecture seule à toutes les actions et ressources Amazon SMS Pinpoint et API Voice de votre compte : AWS
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoiceReadOnly", "Effect": "Allow", "Action": [ "sms-voice:Get*", "sms-voice:List*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "
accountId
" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:region
:accountId
:*" } } } ] }
Accès administrateur
L'exemple de politique suivant permet un accès complet à toutes les API actions et ressources Amazon Pinpoint SMS et Voice de votre AWS compte :
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SMSVoiceFullAccess", "Effect": "Allow", "Action": [ "sms-voice:*", ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "
accountId
" }, "ArnLike": { "aws:SourceArn": "arn:aws:sms-voice:region
:accountId
:*" } } } ] }
Exemple : restriction de l'accès d'un projet Amazon Pinpoint à des adresses IP spécifiques
L'exemple de politique suivant accorde à tout utilisateur l'autorisation d'effectuer une action Amazon Pinpoint sur un projet spécifique (projectId
). Toutefois, la demande doit provenir de la plage d'adresses IP spécifiée dans la condition.
La condition de cette déclaration identifie la 54.240.143.*
plage d'adresses du protocole Internet version 4 (IPv4) autorisées, à une exception près :54.240.143.188
. Le Condition
bloc utilise les NotIpAddress
conditions IpAddress
et et la clé de aws:SourceIp
condition, qui est une clé AWS de condition étendue. Pour plus d'informations sur ces clés de condition, consultez la section Spécification des conditions dans le guide de IAM l'utilisateur d'une politique. Les aws:SourceIp
IPv4 valeurs utilisent la CIDR notation standard. Pour plus d'informations, consultez la section Opérateurs de condition d'adresse IP dans le Guide de IAM l'utilisateur.
{ "Version":"2012-10-17", "Id":"AMZPinpointPolicyId1", "Statement":[ { "Sid":"IPAllow", "Effect":"Allow", "Principal":"*", "Action":"mobiletargeting:*", "Resource":[ "arn:aws:mobiletargeting:
region
:accountId
:apps/projectId
", "arn:aws:mobiletargeting:region
:accountId
:apps/projectId
/*" ], "Condition":{ "IpAddress":{ "aws:SourceIp":"54.240.143.0/24" }, "NotIpAddress":{ "aws:SourceIp":"54.240.143.188/32" } } } ] }
Exemple : restriction de l'accès Amazon Pinpoint en fonction des balises
L'exemple de politique suivant accorde des autorisations pour effectuer n'importe quelle action Amazon Pinpoint sur un projet spécifique (projectId
). Toutefois, les autorisations ne sont accordées que si la demande provient d'un utilisateur dont le nom est une valeur figurant dans la balise de Owner
ressource du projet, comme indiqué dans la condition.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ModifyResourceIfOwner", "Effect": "Allow", "Action": "mobiletargeting:*", "Resource": [ "arn:aws:mobiletargeting:
region
:accountId
:apps/projectId
", "arn:aws:mobiletargeting:region
:accountId
:apps/projectId
/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Owner": "userName
" } } } ] }
Exemple : autoriser Amazon Pinpoint à envoyer des e-mails en utilisant des identités vérifiées sur Amazon SES
Lorsque vous vérifiez une identité e-mail (telle qu'une adresse e-mail ou un domaine) via la console Amazon Pinpoint, cette identité est automatiquement configurée afin qu'elle puisse être utilisée à la fois par Amazon Pinpoint et Amazon. SES Toutefois, si vous vérifiez une identité e-mail par le biais d'Amazon SES et que vous souhaitez utiliser cette identité auprès d'Amazon Pinpoint, vous devez appliquer une politique à cette identité.
L'exemple de politique suivant accorde à Amazon Pinpoint l'autorisation d'envoyer des e-mails en utilisant une identité e-mail vérifiée par Amazon. SES
{ "Version":"2008-10-17", "Statement":[ { "Sid":"PinpointEmail", "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"ses:*", "Resource":"arn:aws:ses:
region
:accountId
:identity/emailId
", "Condition":{ "StringEquals":{ "aws:SourceAccount":"accountId
" }, "StringLike":{ "aws:SourceArn":"arn:aws:mobiletargeting:region
:accountId
:apps/*
" } } } ] }
Si vous utilisez Amazon Pinpoint dans la région AWS GovCloud (ouest des États-Unis), utilisez plutôt l'exemple de politique suivant :
{ "Version":"2008-10-17", "Statement":[ { "Sid":"PinpointEmail", "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"ses:*", "Resource":"arn:aws-us-gov:ses:us-gov-west-1:
accountId
:identity/emailId
", "Condition":{ "StringEquals":{ "aws:SourceAccount":"accountId
" }, "StringLike":{ "aws:SourceArn":"arn:aws-us-gov:mobiletargeting:us-gov-west-1:accountId
:apps/*
" } } } ] }