IAM: consente e rifiuta l'accesso a più servizi a livello di programmazione e nella console
Questo esempio mostra come creare una policy basata sull'identità che consenta l'accesso completo a diversi servizi e l'accesso autonomo limitato in IAM. Rifiuta inoltre l'accesso al bucket logs
di Amazon S3 o all'istanza i-1234567890abcdef0
Amazon EC2. Questa policy definisce le autorizzazioni per l'accesso a livello di programmazione e alla console. Per utilizzare questa policy, sostituisci il testo segnaposto in corsivo
nella policy di esempio con le tue informazioni. Quindi, segui le indicazioni fornite in Creazione di una policy o Modifica di una policy.
avvertimento
Questa policy consente l'accesso completo a tutte le operazioni e risorse in più servizi. Questa policy deve essere applicata solo ad amministratori fidati.
Puoi usare questa policy come un limite delle autorizzazioni per definire il numero massimo di autorizzazioni che una policy basata su identità può concedere a un utente IAM. Per ulteriori informazioni, consultare Delega di responsabilità ad altri mediante i limiti delle autorizzazioni. Quando la policy viene usata come un limite delle autorizzazioni per un utente, le dichiarazioni definiscono i seguenti limiti:
-
L'istruzione
AllowServices
consente l'accesso completo ai servizi AWS specificati. Ciò significa che le operazioni dell'utente in questi servizi sono limitate solo dalle policy di autorizzazioni collegate all'utente. -
La dichiarazione
AllowIAMConsoleForCredentials
consente l'accesso per elencare tutti gli utenti IAM. Questo accesso è necessario per navigare nella pagina Users (Utenti) nella AWS Management Console. Inoltre, consente di visualizzare i requisiti associati alle password per l'account, operazione necessaria per permettere all'utente di modificare la sua password. -
L'istruzione
AllowManageOwnPasswordAndAccessKeys
consente agli utenti di gestire solo le proprie chiavi di accesso programmatiche e password della console. Questo è importante perché se un'altra policy offre a un utente l'accesso IAM completo, tale utente può modificare le sue autorizzazioni o quelle di altri utenti. Questa istruzione impedisce che ciò si verifichi. -
L'istruzione
DenyS3Logs
nega esplicitamente l'accesso al bucketlogs
. Questa policy applica limitazioni aziendali all'utente. -
L'istruzione
DenyEC2Production
nega esplicitamente l'accesso all'istanzai-1234567890abcdef0
.
Questa policy non consente l'accesso ad altri servizi o operazioni. Quando la policy viene usata come un limite delle autorizzazioni per un utente, anche se le altre policy collegate all'utente consentono tali operazioni, AWS rifiuta la richiesta.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowServices", "Effect": "Allow", "Action": [ "s3:*", "cloudwatch:*", "ec2:*" ], "Resource": "*" }, { "Sid": "AllowIAMConsoleForCredentials", "Effect": "Allow", "Action": [ "iam:ListUsers", "iam:GetAccountPasswordPolicy" ], "Resource": "*" }, { "Sid": "AllowManageOwnPasswordAndAccessKeys", "Effect": "Allow", "Action": [ "iam:*AccessKey*", "iam:ChangePassword", "iam:GetUser", "iam:*LoginProfile*" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "DenyS3Logs", "Effect": "Deny", "Action": "s3:*", "Resource": [ "arn:aws:s3:::
logs
", "arn:aws:s3:::logs
/*" ] }, { "Sid": "DenyEC2Production", "Effect": "Deny", "Action": "ec2:*", "Resource": "arn:aws:ec2:*:*:instance/i-1234567890abcdef0
" } ] }