Specifica delle condizioni: Utilizzo di tag personalizzati - Amazon Relational Database Service

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à.

Specifica delle condizioni: Utilizzo di tag personalizzati

Amazon RDS supporta la specificazione di condizioni in una IAM policy utilizzando tag personalizzati.

Ad esempio, supponi di aggiungere alle istanze database un tag denominato environment con valori quali beta, staging, production e così via. In questo modo, puoi creare una policy che limita alcuni utenti alle istanze database in base al valore del tag environment.

Nota

Per gli identificatori di tag personalizzati viene fatta distinzione tra maiuscole e minuscole.

La tabella seguente elenca gli identificatori di RDS tag che puoi utilizzare in un elemento. Condition

RDSidentificatore di tag Si applica a
db-tag Istanze database, incluse repliche di lettura
snapshot-tag Snapshot DB
ri-tag Istanze database riservate
og-tag Gruppi di opzioni database
pg-tag Gruppi di parametri database
subgrp-tag Gruppi di sottoreti database
es-tag Abbonamenti a eventi
cluster-tag Cluster database
cluster-pg-tag Gruppi di parametri di cluster database
cluster-snapshot-tag Snapshot cluster database

La sintassi per una condizione di un tag personalizzato è la seguente:

"Condition":{"StringEquals":{"rds:rds-tag-identifier/tag-name": ["value"]} }

Ad esempio, l'elemento Condition seguente si applica alle istanze database con un tag denominato environment e un valore di tag corrispondente a production.

"Condition":{"StringEquals":{"rds:db-tag/environment": ["production"]} }

Per informazioni sulla creazione di tag, consulta Etichettatura di RDS.

Importante

Se gestisci l'accesso alle tue RDS risorse utilizzando i tag, ti consigliamo di proteggere l'accesso ai tag delle tue RDS risorse. È possibile gestire l'accesso ai tag creando policy per le operazioni AddTagsToResource e RemoveTagsFromResource. Ad esempio, la policy seguente nega agli utenti la possibilità di aggiungere o rimuovere tag per tutte le risorse. Puoi quindi creare policy per permettere a utenti specifici di aggiungere o rimuovere tag.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"DenyTagUpdates", "Effect":"Deny", "Action":[ "rds:AddTagsToResource", "rds:RemoveTagsFromResource" ], "Resource":"*" } ] }

Per visualizzare un elenco di azioni di Amazon RDS , consulta Actions Defined by Amazon RDS nel Service Authorization Reference.

Policy di esempio: Utilizzo di tag personalizzati

Di seguito sono riportati alcuni esempi di come è possibile utilizzare tag personalizzati nelle politiche di IAM autorizzazione di RDS . Per ulteriori informazioni sull'aggiunta di tag a una risorsa Amazon RDS , consulta. Nomi di risorse Amazon (ARNs) in Amazon RDS

Nota

Tutti gli esempi utilizzano la regione us-west-2 e contengono account fittizi. IDs

Esempio 1: Concessione dell'autorizzazione per le operazioni su una risorsa con un tag specifico con due valori diversi

La seguente politica consente l'autorizzazione a eseguire l'CreateDBSnapshotAPIoperazione su istanze DB con il stage tag impostato su o. development test

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowAnySnapshotName", "Effect":"Allow", "Action":[ "rds:CreateDBSnapshot" ], "Resource":"arn:aws:rds:*:123456789012:snapshot:*" }, { "Sid":"AllowDevTestToCreateSnapshot", "Effect":"Allow", "Action":[ "rds:CreateDBSnapshot" ], "Resource":"arn:aws:rds:*:123456789012:db:*", "Condition":{ "StringEquals":{ "rds:db-tag/stage":[ "development", "test" ] } } } ] }

La seguente politica consente l'autorizzazione a eseguire l'ModifyDBInstanceAPIoperazione su istanze DB con il stage tag impostato su o. development test

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowChangingParameterOptionSecurityGroups", "Effect":"Allow", "Action":[ "rds:ModifyDBInstance" ], "Resource":" [ "arn:aws:rds:*:123456789012:pg:*", "arn:aws:rds:*:123456789012:secgrp:*", "arn:aws:rds:*:123456789012:og:*" ] }, { "Sid":"AllowDevTestToModifyInstance", "Effect":"Allow", "Action":[ "rds:ModifyDBInstance" ], "Resource":"arn:aws:rds:*:123456789012:db:*", "Condition":{ "StringEquals":{ "rds:db-tag/stage":[ "development", "test" ] } } } ] }

Esempio 2: Rifiuto esplicito dell'autorizzazione per creare un'istanza database che utilizza gruppi di parametri database specificati

La policy seguente rifiuta in modo esplicito l'autorizzazione per creare un'istanza database che utilizza gruppi di parametri database con valori di tag specifici. Puoi applicare questa policy se desideri che uno specifico gruppo di parametri database creato dal cliente venga sempre utilizzato nella creazione di istanze database. Le policy che utilizzano Deny servono per lo più a limitare l'accesso concesso da una policy più ampia.

Il rifiuto esplicito di un'autorizzazione prevale su qualsiasi altra autorizzazione concessa. In questo modo si evita che le identità ottengano accidentalmente un'autorizzazione che non desideravi concedere.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"DenyProductionCreate", "Effect":"Deny", "Action":"rds:CreateDBInstance", "Resource":"arn:aws:rds:*:123456789012:pg:*", "Condition":{ "StringEquals":{ "rds:pg-tag/usage":"prod" } } } ] }

Esempio 3: Concessione dell'autorizzazione per le operazioni in un'istanza database con un nome di istanza che ha come prefisso un nome utente

La seguente politica consente l'autorizzazione a chiamare qualsiasi istanza DB API (eccetto AddTagsToResource oRemoveTagsFromResource) su un'istanza DB con un nome di istanza DB preceduto dal nome dell'utente e con un tag chiamato stage uguale devo o senza tag chiamato. stage

La Resource riga della policy identifica una risorsa in base al relativo Amazon Resource Name (ARN). Per ulteriori informazioni sull'utilizzo ARNs con le risorse di RDSAmazon , consulta. Nomi di risorse Amazon (ARNs) in Amazon RDS

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowFullDevAccessNoTags", "Effect":"Allow", "NotAction":[ "rds:AddTagsToResource", "rds:RemoveTagsFromResource" ], "Resource":"arn:aws:rds:*:123456789012:db:${aws:username}*", "Condition":{ "StringEqualsIfExists":{ "rds:db-tag/stage":"devo" } } } ] }