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.
Utilisation de politiques basées sur l'identité (IAMpolitiques) pour MemoryDB
Cette rubrique fournit des exemples de politiques basées sur l'identité dans lesquelles un administrateur de compte peut associer des politiques d'autorisation aux IAM identités (c'est-à-dire aux utilisateurs, aux groupes et aux rôles).
Important
Nous vous recommandons de lire d'abord les rubriques qui expliquent les concepts et options de base pour gérer l'accès aux ressources MemoryDB. Pour de plus amples informations, veuillez consulter Vue d'ensemble de la gestion des autorisations d'accès à vos ressources MemoryDB.
Les sections de cette rubrique couvrent les sujets suivants :
Un exemple de politique d'autorisation est exposé ci-dessous.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "memorydb:CreateCluster", "memorydb:DescribeClusters", "memorydb:UpdateCluster"], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }
La politique possède deux énoncés:
-
La première instruction accorde des autorisations pour les actions MemoryDB (
memorydb:CreateCluster
,memorydb:DescribeClusters
, etmemorydb:UpdateCluster
) sur tout cluster appartenant au compte. -
La deuxième instruction accorde des autorisations pour l'IAMaction (
iam:PassRole
) sur le nom de IAM rôle spécifié à la fin de laResource
valeur.
La politique ne spécifie pas l'élément Principal
, car dans une politique basée sur une identité, vous ne spécifiez pas le principal qui obtient l'autorisation. Quand vous attachez une politique à un utilisateur, l'utilisateur est le principal implicite. Lorsque vous associez une politique d'autorisation à un IAM rôle, le principal identifié dans la politique de confiance du rôle obtient les autorisations.
Pour un tableau présentant toutes les API actions MemoryDB et les ressources auxquelles elles s'appliquent, consultez. APIAutorisations MemoryDB : référence aux actions, aux ressources et aux conditions
Autorisations requises pour utiliser la console MemoryDB
Le tableau de référence des autorisations répertorie les API opérations MemoryDB et indique les autorisations requises pour chaque opération. Pour plus d'informations sur les API opérations MemoryDB, consultez. APIAutorisations MemoryDB : référence aux actions, aux ressources et aux conditions
Pour utiliser la console MemoryDB, accordez d'abord des autorisations pour des actions supplémentaires, comme indiqué dans la politique d'autorisation suivante.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "MinPermsForMemDBConsole", "Effect": "Allow", "Action": [ "memorydb:Describe*", "memorydb:List*", "ec2:DescribeAvailabilityZones", "ec2:DescribeVpcs", "ec2:DescribeAccountAttributes", "ec2:DescribeSecurityGroups", "cloudwatch:GetMetricStatistics", "cloudwatch:DescribeAlarms", "s3:ListAllMyBuckets", "sns:ListTopics", "sns:ListSubscriptions" ], "Resource": "*" } ] }
La console MemoryDB a besoin de ces autorisations supplémentaires pour les raisons suivantes :
-
Les autorisations pour les actions MemoryDB permettent à la console d'afficher les ressources MemoryDB dans le compte.
-
La console a besoin d'autorisations pour effectuer les
ec2
actions permettant d'interroger Amazon EC2 afin de pouvoir afficher les zones de disponibilitéVPCs, les groupes de sécurité et les attributs de compte. -
Les autorisations relatives aux
cloudwatch
actions permettent à la console de récupérer CloudWatch les métriques et les alarmes Amazon et de les afficher dans la console. -
Les autorisations relatives aux
sns
actions permettent à la console de récupérer les sujets et les abonnements Amazon Simple Notification Service (AmazonSNS) et de les afficher dans la console.
Exemples de politiques gérées par le client
Si vous n'utilisez pas de politique par défaut et que vous choisissez d'utiliser une politique gérée personnalisée, vous devez assurer l'un des deux points suivants. Vous devez soit avoir les autorisations d'appeler iam:createServiceLinkedRole
(pour plus d'informations, veuillez consulter Exemple 4 : Autoriser un utilisateur à appeler IAM CreateServiceLinkedRole API). Ou vous auriez dû créer un rôle lié au service MemoryDB.
Combinés aux autorisations minimales nécessaires pour utiliser la console MemoryDB, les exemples de politiques présentés dans cette section accordent des autorisations supplémentaires. Les exemples sont également pertinents pour le AWS SDKs et le AWS CLI. Pour plus d'informations sur les autorisations nécessaires pour utiliser la console MemoryDB, consultez. Autorisations requises pour utiliser la console MemoryDB
Pour obtenir des instructions sur la configuration des IAM utilisateurs et des groupes, consultez la section Création de votre premier groupe IAM d'utilisateurs et d'administrateurs dans le guide de IAM l'utilisateur.
Important
Testez toujours soigneusement vos IAM politiques avant de les utiliser en production. Certaines actions MemoryDB qui semblent simples peuvent nécessiter d'autres actions pour les prendre en charge lorsque vous utilisez la console MemoryDB. Par exemple, memorydb:CreateCluster
accorde des autorisations pour créer des clusters MemoryDB. Toutefois, pour effectuer cette opération, la console MemoryDB utilise un certain nombre d'List
actions Describe
et pour remplir les listes de consoles.
Exemples
- Exemple 1 : autoriser un utilisateur à accéder en lecture seule aux ressources MemoryDB
- Exemple 2 : Autoriser un utilisateur à effectuer des tâches courantes d'administrateur système MemoryDB
- Exemple 3 : Autoriser un utilisateur à accéder à toutes les actions MemoryDB API
- Exemple 4 : Autoriser un utilisateur à appeler IAM CreateServiceLinkedRole API
Exemple 1 : autoriser un utilisateur à accéder en lecture seule aux ressources MemoryDB
La politique suivante accorde des autorisations pour les actions MemoryDB qui permettent à un utilisateur de répertorier des ressources. En général, vous attachez ce type de politique d'autorisations à un groupe de gestionnaires.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MemDBUnrestricted", "Effect":"Allow", "Action": [ "memorydb:Describe*", "memorydb:List*"], "Resource":"*" } ] }
Exemple 2 : Autoriser un utilisateur à effectuer des tâches courantes d'administrateur système MemoryDB
Les tâches courantes des administrateurs système incluent la modification des clusters, des paramètres et des groupes de paramètres. Un administrateur système peut également souhaiter obtenir des informations sur les événements MemoryDB. La politique suivante accorde à un utilisateur l'autorisation d'effectuer des actions MemoryDB pour ces tâches courantes d'administrateur système. Généralement, vous attachez ce type de politique d'autorisations au groupe d'administrateurs système.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MDBAllowSpecific", "Effect":"Allow", "Action":[ "memorydb:UpdateCluster", "memorydb:DescribeClusters", "memorydb:DescribeEvents", "memorydb:UpdateParameterGroup", "memorydb:DescribeParameterGroups", "memorydb:DescribeParameters", "memorydb:ResetParameterGroup",], "Resource":"*" } ] }
Exemple 3 : Autoriser un utilisateur à accéder à toutes les actions MemoryDB API
La politique suivante permet à un utilisateur d'accéder à toutes les actions MemoryDB. Nous vous conseillons d'accorder ce type de politique d'autorisations uniquement à un utilisateur administrateur.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MDBAllowAll", "Effect":"Allow", "Action":[ "memorydb:*" ], "Resource":"*" } ] }
Exemple 4 : Autoriser un utilisateur à appeler IAM CreateServiceLinkedRole API
La politique suivante permet à l'utilisateur d'appeler le IAM CreateServiceLinkedRole
API. Nous vous recommandons d'accorder ce type de politique d'autorisations à l'utilisateur qui invoque des opérations mutatives de MemoryDB.
{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWS ServiceName":"memorydb.amazonaws.com" } } } ] }