Utilizzo di politiche basate sull'identità (politiche IAM) per MemoryDB - Amazon MemoryDB

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di politiche basate sull'identità (politiche IAM) per MemoryDB

In questo argomento vengono forniti esempi di policy basate su identità in cui un amministratore account può collegare policy di autorizzazione a identità IAM, ovvero utenti, gruppi e ruoli.

Importante

Ti consigliamo di leggere prima gli argomenti che spiegano i concetti e le opzioni di base per gestire l'accesso alle risorse di MemoryDB. Per ulteriori informazioni, consulta la pagina Panoramica della gestione delle autorizzazioni di accesso alle risorse di MemoryDB.

In questa sezione vengono trattati gli argomenti seguenti:

Di seguito viene illustrato un esempio di policy di autorizzazione.

{ "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 policy include due dichiarazioni:

  • La prima istruzione concede le autorizzazioni per le azioni di MemoryDB (memorydb:CreateClustermemorydb:DescribeClusters, ememorydb:UpdateCluster) su qualsiasi cluster di proprietà dell'account.

  • La seconda istruzione concede le autorizzazioni per l'operazione IAM (iam:PassRole) sul nome del ruolo IAM specificato alla fine del valore Resource.

La policy non specifica l'elemento Principal poiché in una policy basata su identità l'entità che ottiene l'autorizzazione non viene specificata. Quando si collega una policy a un utente, quest'ultimo è l'entità implicita. Quando colleghi una policy di autorizzazioni a un ruolo IAM, il principale identificato nella policy di attendibilità del ruolo ottiene le autorizzazioni.

Per una tabella che mostra tutte le azioni dell'API MemoryDB e le risorse a cui si applicano, vedere. Autorizzazioni API MemoryDB: riferimento ad azioni, risorse e condizioni

Autorizzazioni necessarie per utilizzare la console MemoryDB

La tabella di riferimento delle autorizzazioni elenca le operazioni dell'API MemoryDB e mostra le autorizzazioni richieste per ciascuna operazione. Per ulteriori informazioni sulle operazioni dell'API MemoryDB, vedere. Autorizzazioni API MemoryDB: riferimento ad azioni, risorse e condizioni

Per utilizzare la console MemoryDB, concedi innanzitutto le autorizzazioni per azioni aggiuntive, come mostrato nella seguente politica di autorizzazione.

{ "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 necessita di queste autorizzazioni aggiuntive per i seguenti motivi:

  • Le autorizzazioni per le azioni MemoryDB consentono alla console di visualizzare le risorse MemoryDB nell'account.

  • La console richiede le autorizzazioni per le operazioni ec2 per inviare le query ad Amazon EC2 al fine di poter visualizzare zone di disponibilità, VPC, gruppi di sicurezza e attributi dell'account.

  • Le cloudwatch autorizzazioni per le azioni consentono alla console di recuperare CloudWatch metriche e allarmi di Amazon e di visualizzarli nella console.

  • Le autorizzazioni per le operazioni sns consentono alla console di recuperare argomenti e sottoscrizioni di Amazon Simple Notification Service (Amazon SNS) e mostrarli.

Esempi di policy gestite dal cliente

Se non si utilizza una policy predefinita e si sceglie di utilizzare una policy gestita in modo personalizzato, assicurarsi di trovarsi in una delle due seguenti situazioni. O si dispone delle autorizzazioni per richiamare iam:createServiceLinkedRole (Per ulteriori informazioni, consultaEsempio 4: consenti a un utente di chiamare l'API IAM CreateServiceLinkedRole ). Oppure avresti dovuto creare un ruolo collegato al servizio MemoryDB.

Se combinate con le autorizzazioni minime necessarie per utilizzare la console MemoryDB, le politiche di esempio in questa sezione concedono autorizzazioni aggiuntive. Gli esempi sono rilevanti anche per gli SDK e per. AWS AWS CLI Per ulteriori informazioni sulle autorizzazioni necessarie per utilizzare la console MemoryDB, vedere. Autorizzazioni necessarie per utilizzare la console MemoryDB

Per istruzioni su come impostare gruppi e utenti IAM, consulta Creazione del primo utente e gruppo di amministratori IAM nella Guida per l'utente di IAM.

Importante

Testa sempre in modo approfondito le Policy IAM prima di avvalertene in fase di produzione. Alcune azioni di MemoryDB che sembrano semplici possono richiedere altre azioni per supportarle quando si utilizza la console MemoryDB. Ad esempio, memorydb:CreateCluster concede le autorizzazioni per creare cluster MemoryDB. Tuttavia, per eseguire questa operazione, la console MemoryDB utilizza una serie di azioni per compilare gli elenchi delle Describe console. List

Esempio 1: consentire a un utente l'accesso in sola lettura alle risorse di MemoryDB

La seguente politica concede le autorizzazioni per le azioni di MemoryDB che consentono a un utente di elencare le risorse. In genere, si collega questo tipo di policy di autorizzazione a un gruppo di gestori.

{ "Version": "2012-10-17", "Statement":[{ "Sid": "MemDBUnrestricted", "Effect":"Allow", "Action": [ "memorydb:Describe*", "memorydb:List*"], "Resource":"*" } ] }

Esempio 2: consentire a un utente di eseguire attività comuni di amministratore del sistema MemoryDB

Le attività comuni dell'amministratore di sistema includono la modifica di cluster, parametri e gruppi di parametri. Un amministratore di sistema può anche voler ottenere informazioni sugli eventi di MemoryDB. La seguente politica concede a un utente le autorizzazioni per eseguire azioni di MemoryDB per queste attività comuni dell'amministratore di sistema. In genere, si collega questo tipo di policy di autorizzazione al gruppo degli amministratori di sistema.

{ "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":"*" } ] }

Esempio 3: consentire a un utente di accedere a tutte le azioni dell'API MemoryDB

La seguente politica consente a un utente di accedere a tutte le azioni di MemoryDB. Consigliamo di concedere questo tipo di policy di autorizzazione solo a un utente amministratore.

{ "Version": "2012-10-17", "Statement":[{ "Sid": "MDBAllowAll", "Effect":"Allow", "Action":[ "memorydb:*" ], "Resource":"*" } ] }

Esempio 4: consenti a un utente di chiamare l'API IAM CreateServiceLinkedRole

La policy seguente permette a un utente di chiamare l'API IAM CreateServiceLinkedRole . Si consiglia di concedere questo tipo di politica di autorizzazione all'utente che richiama operazioni mutative di MemoryDB.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWS ServiceName":"memorydb.amazonaws.com" } } } ] }