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 valoreResource
.
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.
Esempi
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:*" ] } ] }