- Amazon Aurora

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

Le seguenti sezioni presentano esempi di politiche di autorizzazione che concedono e limitano l'accesso alle risorse:

Consenti a un utente di creare istanze DB in un account AWS

Di seguito è riportato un esempio di politica che consente all'account con l'ID di 123456789012 creare istanze DB per il tuo AWS account. La policy richiede che il nome della nuova istanza database inizi con test. La nuova istanza DB deve inoltre utilizzare il motore di SQL database My e la classe di istanze db.t2.micro DB. Inoltre, la nuova istanza database deve utilizzare un gruppo di opzioni e un gruppo di parametri database che inizia con default, e deve utilizzare il gruppo di sottoreti default.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateDBInstanceOnly", "Effect": "Allow", "Action": [ "rds:CreateDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:db:test*", "arn:aws:rds:*:123456789012:og:default*", "arn:aws:rds:*:123456789012:pg:default*", "arn:aws:rds:*:123456789012:subgrp:default" ], "Condition": { "StringEquals": { "rds:DatabaseEngine": "mysql", "rds:DatabaseClass": "db.t2.micro" } } } ] }

La policy include una singola istruzione che specifica le autorizzazioni seguenti per l'utente :

  • La policy consente all'account di creare un'istanza DB utilizzando l'reateDBInstanceAPIoperazione C (ciò vale anche per il create-db-instance AWS CLI comando e il AWS Management Console).

  • L'elemento Resource specifica che l'utente può eseguire azioni in o con altre risorse. Specifichi le risorse utilizzando un Amazon Resources Name (ARN). Ciò ARN include il nome del servizio a cui appartiene la risorsa (rds), la AWS regione (*indica qualsiasi regione in questo esempio), il numero di AWS account (123456789012è il numero di account in questo esempio) e il tipo di risorsa. Per ulteriori informazioni sulla creazioneARNs, vedereNomi di risorse Amazon (ARNs) in Amazon RDS.

    L'elemento Resource nell'esempio specifica i seguenti vincoli della policy sulle risorse per l'utente:

    • L'identificatore istanze DB per la nuova istanza database deve iniziare con test (per esempio, testCustomerData1, test-region2-data).

    • Il gruppo di opzioni per la nuova istanza database deve iniziare con default.

    • Il gruppo di parametri database per la nuova istanza database deve iniziare con default.

    • Il gruppo di sottoreti per la nuova istanza database deve essere il gruppo di sottoreti default.

  • L'Conditionelemento specifica che il motore DB deve essere My SQL e la classe dell'istanza DB deve esseredb.t2.micro. L'elemento Condition specifica le condizioni quando deve essere applicata una policy. È possibile aggiungere permessi o restrizioni aggiuntivi usando l'elemento Condition. Per ulteriori informazioni su come specificare le condizioni;, consulta Chiavi relative alle condizioni delle politiche per Aurora. Questo esempio specifica le condizioni rds:DatabaseEngine e rds:DatabaseClass. Per informazioni sui valori delle condizioni validi perrds:DatabaseEngine, consultate l'elenco sotto il Engine parametro in C. reateDBInstance Per informazioni sui valori di condizione validi per rds:DatabaseClass, consulta Motori DB supportati per classi di istanza database.

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 si associa una politica di autorizzazione a un IAM ruolo, il principale identificato nella politica di fiducia del ruolo ottiene le autorizzazioni.

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

Consenti a un utente di eseguire qualsiasi azione di descrizione su qualsiasi risorsa RDS

La seguente policy di autorizzazione concede a un utente le autorizzazioni per eseguire tutte le operazioni che iniziano con Describe. Queste azioni mostrano informazioni su una RDS risorsa, ad esempio un'istanza DB. Il carattere jolly (*) nell'Resourceelemento indica che le azioni sono consentite per tutte le risorse Aurora di proprietà dell'account.

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

Consentire a un utente di creare un'istanza database che utilizza il gruppo parametri del database e il gruppo di sottorete specificati

La seguente policy di autorizzazioni concede le autorizzazioni per consentire a un utente di creare un'istanza database che deve usare il gruppo di parametri database mydbpg e il gruppo di sottorete DB mydbsubnetgroup.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "rds:CreateDBInstance", "Resource": [ "arn:aws:rds:*:*:pg:mydbpg", "arn:aws:rds:*:*:subgrp:mydbsubnetgroup" ] } ] }

Concedere l'autorizzazione per le operazioni su una risorsa con un tag specifico con due valori diversi

Puoi utilizzare le condizioni della tua policy basata sull'identità per controllare l'accesso alle risorse di Amazon in base ai tag. La seguente policy 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" ] } } } ] }

Impedire a un utente di eliminare un'istanza database

La seguente policy di autorizzazione assegna le autorizzazioni per impedire a un utente di eliminare un'istanza database specifica. Ad esempio, potresti voler negare la possibilità di eliminare le istanze database di produzione a qualsiasi utente che non sia un amministratore.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyDelete1", "Effect": "Deny", "Action": "rds:DeleteDBInstance", "Resource": "arn:aws:rds:us-west-2:123456789012:db:my-mysql-instance" } ] }

Negare tutti gli accessi a una risorsa

È anche possibile negare esplicitamente l'accesso a una risorsa. I criteri di negazione hanno la precedenza sui criteri di autorizzazione. La policy seguente nega esplicitamente a un utente la possibilità di gestire una risorsa:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "rds:*", "Resource": "arn:aws:rds:us-east-1:123456789012:db:mydb" } ] }