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

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 Amazon ElastiCache

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 ElastiCache risorse di Amazon. Per ulteriori informazioni, consulta Panoramica sulla gestione delle autorizzazioni di accesso alle risorse ElastiCache .

In questa sezione vengono trattati gli argomenti seguenti:

Di seguito viene illustrato un esempio di politica di autorizzazioni quando si utilizza Redis OSS.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "elasticache:CreateServerlessCache", "elasticache:CreateCacheCluster", "elasticache:DescribeServerlessCaches", "elasticache:DescribeReplicationGroups", "elasticache:DescribeCacheClusters", "elasticache:ModifyServerlessCache", "elasticache:ModifyReplicationGroup", "elasticache:ModifyCacheCluster" ], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }

Di seguito viene mostrato un esempio di politica di autorizzazioni quando si utilizza Memcached.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "elasticache:CreateServerlessCache", "elasticache:CreateCacheCluster", "elasticache:DescribeServerlessCaches", "elasticache:DescribeCacheClusters", "elasticache:ModifyServerlessCache", "elasticache:ModifyCacheCluster" ], "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 ElastiCache azioni Amazon (elasticache:Create*,,elasticache:Describe*) elasticache:Modify*

  • 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' ElastiCache API Amazon e le risorse a cui si applicano, consultaElastiCache Autorizzazioni API: riferimento ad azioni, risorse e condizioni.

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: consentire a un utente di chiamare l' CreateServiceLinkedRole API IAM). Oppure avresti dovuto creare un ruolo ElastiCache collegato al servizio.

Se combinate con le autorizzazioni minime necessarie per utilizzare la ElastiCache console Amazon, le politiche di esempio in questa sezione concedono autorizzazioni aggiuntive. Gli esempi sono rilevanti anche per il AWS SDKs e il. AWS CLI

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 ElastiCache azioni che sembrano semplici possono richiedere altre azioni per supportarle quando si utilizza la ElastiCache console. Ad esempio, elasticache:CreateCacheCluster concede le autorizzazioni necessarie per creare cluster di cache ElastiCache . Tuttavia, per eseguire questa operazione, la ElastiCache console utilizza una serie di List azioni Describe e per compilare gli elenchi delle console.

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

La seguente politica concede ElastiCache azioni di autorizzazione 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": "ECReadOnly", "Effect":"Allow", "Action": [ "elasticache:Describe*", "elasticache:List*"], "Resource":"*" } ] }

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

Le attività comuni dell'amministratore di sistema includono la modifica delle risorse. Un amministratore di sistema potrebbe, inoltre, voler reperire informazioni sugli eventi ElastiCache . La seguente politica concede a un utente le autorizzazioni per eseguire ElastiCache azioni 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": "ECAllowMutations", "Effect":"Allow", "Action":[ "elasticache:Modify*", "elasticache:Describe*", "elasticache:ResetCacheParameterGroup" ], "Resource":"*" } ] }

Esempio 3: consentire a un utente di accedere a tutte le ElastiCache azioni API

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

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

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

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

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

Esempio 5: assegnazione a un utente dell'autorizzazione a connettersi alla cache serverless utilizzando l'autenticazione IAM

La seguente policy consente a un utente di connettersi a una cache serverless utilizzando l'autenticazione IAM tra il 2023-04-01 e il 2023-06-30.

{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:serverlesscache:*" ], "Condition": { "DateGreaterThan": {"aws:CurrentTime": "2023-04-01T00:00:00Z"}, "DateLessThan": {"aws:CurrentTime": "2023-06-30T23:59:59Z"} } }, { "Effect" : "Allow", "Action" : ["elasticache:Connect"], "Resource" : [ "arn:aws:elasticache:us-east-1:123456789012:user:*" ] } ] }