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à.
Puoi utilizzare le informazioni sull'ultimo accesso per prendere decisioni in merito alle autorizzazioni da concedere alle entità IAM o alle entità AWS Organizations. Per ulteriori informazioni, consulta Perfezionamento delle autorizzazioni in AWS utilizzando le informazioni sull'ultimo accesso.
Nota
Prima di visualizzare le informazioni sull'accesso per una entità o policy in IAM o AWS Organizations, assicurati di comprendere il periodo, le entità riportate e i tipi di policy valutati per i dati. Per ulteriori dettagli, consulta Cose da sapere sulle ultime informazioni di accesso.
È compito dell'amministratore determinare il giusto equilibrio tra accessibilità e privilegio minimo appropriato per l'azienda.
Utilizzo delle informazioni per ridurre le autorizzazioni per un gruppo IAM
Puoi utilizzare le informazioni sull'ultimo accesso per ridurre le autorizzazioni per un gruppo IAM in modo da includere solo i servizi necessari agli utenti. Questo metodo è una fase importante nella concessione del privilegio minimo a livello di servizio.
Ad esempio, Paulo Santos è l'amministratore incaricato di definire le autorizzazioni utente AWS per Example Corp. Questa società ha appena iniziato a utilizzare AWS e il team di sviluppo software non ha ancora stabilito quali servizi AWS saranno utilizzati. Paulo vuole concedere al team l'autorizzazione ad accedere solo ai servizi necessari, ma poiché non sono stati ancora definiti, ha concesso temporaneamente le autorizzazioni di power user. Quindi utilizza le ultime informazioni a cui si accede per ridurre le autorizzazioni del gruppo.
Paulo crea una policy gestita denominata ExampleDevelopment
, utilizzando il seguente testo in formato JSON. La collega poi a un gruppo denominato Development
e aggiunge tutti gli sviluppatori al gruppo.
Nota
I power user di Paulo potrebbero avere bisogno di autorizzazioni iam:CreateServiceLinkedRole
per utilizzare alcuni servizi e funzionalità. È consapevole che l'aggiunta di questa autorizzazione consente agli utenti di creare qualsiasi ruolo collegato al servizio. Accetta questo rischio per i suoi power user.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "FullAccessToAllServicesExceptPeopleManagement",
"Effect": "Allow",
"NotAction": [
"iam:*",
"organizations:*"
],
"Resource": "*"
},
{
"Sid": "RequiredIamAndOrgsActions",
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole",
"iam:ListRoles",
"organizations:DescribeOrganization"
],
"Resource": "*"
}
]
}
Paulo decide di attendere 90 giorni prima di visualizzare i dati sull'ultimo accesso al servizio per il gruppo Development
utilizzando la AWS Management Console. Visualizza l'elenco dei servizi a cui i membri del gruppo hanno effettuato l'accesso. Scopre che gli utenti hanno effettuato l'accesso a cinque servizi nell'ultima settimana: AWS CloudTrail, Amazon CloudWatch Logs, Amazon EC2, AWS KMS e Amazon S3. Hanno effettuato l'accesso ad alcuni altri servizi solo durante la prima fase di valutazione di AWS.
Paulo decide di ridurre le autorizzazioni della policy in modo da includere solo cinque servizi e le operazioni IAM e Organizations necessarie. Modifica la policy ExampleDevelopment
utilizzando il seguente testo in formato JSON.
Nota
I power user di Paulo potrebbero avere bisogno di autorizzazioni iam:CreateServiceLinkedRole
per utilizzare alcuni servizi e funzionalità. È consapevole che l'aggiunta di questa autorizzazione consente agli utenti di creare qualsiasi ruolo collegato al servizio. Accetta questo rischio per i suoi power user.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "FullAccessToListedServices",
"Effect": "Allow",
"Action": [
"s3:*",
"kms:*",
"cloudtrail:*",
"logs:*",
"ec2:*"
],
"Resource": "*"
},
{
"Sid": "RequiredIamAndOrgsActions",
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole",
"iam:ListRoles",
"organizations:DescribeOrganization"
],
"Resource": "*"
}
]
}
Per ridurre ulteriormente le autorizzazioni, Paulo può visualizzare gli eventi dell'account in Event history (Cronologia eventi) in AWS CloudTrail. Qui può visualizzare informazioni dettagliate sugli eventi, che può utilizzare per ridurre le autorizzazioni della policy in modo da includere solo le operazioni e le risorse di cui hanno bisogno gli sviluppatori. Per ulteriori informazioni, consulta Visualizzazione di eventi CloudTrail nella console CloudTrail nella Guida per l'utente di AWS CloudTrail.
Utilizzo delle informazioni per ridurre le autorizzazioni per un utente IAM
Puoi utilizzare le informazioni sull'ultimo accesso per ridurre le autorizzazioni per un singolo utente IAM.
Ad esempio, Martha Rivera è un amministratore IT la cui responsabilità è garantire che le persone nell'organizzazione non dispongano di autorizzazioni AWS eccessive. Come parte di un controllo periodico di sicurezza, l'amministratore esamina le autorizzazioni di tutti gli utenti IAM. Uno di questi utenti, Nikhil Jayashankar, è uno sviluppatore di applicazioni, che in precedenza ha ricoperto il ruolo di tecnico della sicurezza. A causa del cambiamento dei requisiti della mansione, Nikhil è membro sia del gruppo app-dev
sia del gruppo security-team
. Il gruppo app-dev
per la sua nuova mansione concede autorizzazioni per più servizi, tra cui Amazon EC2, Amazon EBS, Auto Scaling, Amazon S3, Route 53 e Elastic Transcoder. Il gruppo security-team
per la vecchia mansione concede autorizzazioni per IAM e CloudTrail.
L'amministratore Martha accede alla console IAM e seleziona Utenti, quindi sceglie il nome nikhilj
e seleziona la scheda Ultimo accesso.
Martha rivede la colonna Ultimo accesso e nota che Nikhil non ha effettuato l'accesso di recente a IAM, CloudTrail, Route 53, Amazon Elastic Transcoder e a un certo numero di altri servizi AWS. Nikhil ha effettuato l'accesso ad Amazon S3. Martha sceglie S3 dall'elenco dei servizi e apprende che Nikhil ha eseguito alcune azioni List
di Amazon S3 nelle ultime due settimane. Martha verifica all'interno dell'azienda che Nikhil non abbia più alcuna necessità aziendale di accedere a IAM e CloudTrail perché non fa più parte del team di sicurezza interno.
Martha è ora pronta ad agire in base al servizio e all'azione dell'ultimo accesso alle informazioni. Tuttavia, diversamente da quanto avviene con il gruppo dell'esempio precedente, un utente IAM come nikhilj
potrebbe essere soggetto a più policy ed essere membro di più gruppi. Martha deve procedere con cautela per evitare di interrompere inavvertitamente l'accesso per nikhilj
o per altri membri del gruppo. Oltre a conoscere il tipo di accesso di cui Nikhil deve disporre, deve determinare il modo in cui Nikhil riceve le autorizzazioni.
Martha sceglie la scheda Permissions (Autorizzazioni), dove visualizza le policy collegate direttamente a nikhilj
e quelle collegate da un gruppo. Espande ogni policy e visualizza il riepilogo per scoprire quale policy consente l'accesso ai servizi che Nikhil non sta utilizzando:
-
IAM: la policy gestita da AWS
IAMFullAccess
è collegata direttamente anikhilj
e collegata al grupposecurity-team
. -
CloudTrail: La policy gestita da AWS
AWSCloudTrailReadOnlyAccess
è collegata al grupposecurity-team
. -
Route 53: la policy gestita dal cliente
App-Dev-Route53
è collegata al gruppoapp-dev
. -
Elastic Transcoder: la policy gestita dal cliente
App-Dev-ElasticTranscoder
è collegata al gruppoapp-dev
.
Martha decide di rimuovere la policy gestita da AWS IAMFullAccess
, collegata direttamente a nikhilj
. Rimuove inoltre l'appartenenza di Nikhil al gruppo security-team
. Queste due operazioni rimuoveranno l'accesso non necessario a IAM e CloudTrail.
Le autorizzazioni di Nikhil per accedere a Route 53 ed Elastic Transcoder sono concesse dal gruppo app-dev
. Anche se Nikhil non li utilizza, questi servizi potrebbero essere utili ad altri membri del gruppo. Martha esamina le informazioni sull'ultimo accesso per il gruppo app-dev
e scopre che diversi membri hanno recentemente effettuato l'accesso a Route 53 e Amazon S3. Ma nessun membro del gruppo ha avuto accesso a Elastic Transcoder nell'ultimo anno. Rimuove quindi dal gruppo la policy gestita dal cliente App-Dev-ElasticTranscoder
.
Martha esamina poi i dati sull'ultimo accesso al servizio per la policy gestita dal cliente App-Dev-ElasticTranscoder
. Scopre che la policy non è collegata a nessun'altra identità IAM. Indaga all'interno della sua azienda per accertarsi che la policy non sarà necessaria in futuro e quindi la elimina.
Utilizzo delle informazioni prima dell'eliminazione delle risorse IAM
Puoi utilizzare le informazioni sull'ultimo accesso al servizio prima di eliminare una risorsa IAM per assicurarti che sia trascorso un determinato intervallo di tempo dall'ultimo utilizzo di tale risorsa. Questo si applica a utenti, gruppi, ruoli e policy. Per ulteriori informazioni su queste operazioni, consulta i seguenti argomenti:
Utilizzo delle informazioni prima della modifica delle policy IAM
Puoi esaminare le informazioni sull'ultimo accesso per un'identità IAM (utente, gruppo o ruolo) o per una policy IAM prima di modificare una policy che influisce sulla risorsa. È un'opzione importante per non rimuovere l'accesso per qualcuno che la utilizza.
Ad esempio, Arnav Desai è uno sviluppatore e amministratore AWS per Example Corp. Quando il suo team ha iniziato a utilizzare AWS, ha fornito a tutti gli sviluppatori l'accesso power-user che consentiva l'accesso completo a tutti i servizi tranne IAM e Organizations. Come primo passo verso la concessione di privilegi minimi, Arnav desidera utilizzare l'AWS CLI per esaminare le policy gestite nel suo account.
A tale scopo, Arnav elenca innanzitutto le policy di autorizzazione gestite dal cliente nel suo account che sono collegate a un'identità, utilizzando il seguente comando:
aws iam list-policies --scope Local --only-attached --policy-usage-filter PermissionsPolicy
Dalla risposta, acquisisce l'ARN per ogni policy. Arnav genera quindi un report relativo ai dati sull'ultimo accesso al servizio per ogni policy, utilizzando il comando seguente.
aws iam generate-service-last-accessed-details --arn arn:aws:iam::123456789012:policy/ExamplePolicy1
Da questa risposta, acquisisce l'ID del report generato dal campo JobId
. Arnav testa il comando seguente finché il campo JobStatus
restituisce un valore COMPLETED
o FAILED
. Se il processo ha esito negativo, acquisisce l'errore.
aws iam get-service-last-accessed-details --job-id 98a765b4-3cde-2101-2345-example678f9
Quando lo stato del processo diventa COMPLETED
, Arnav analizza i contenuti dell'array ServicesLastAccessed
in formato JSON.
"ServicesLastAccessed": [
{
"TotalAuthenticatedEntities": 1,
"LastAuthenticated": 2018-11-01T21:24:33.222Z,
"ServiceNamespace": "dynamodb",
"LastAuthenticatedEntity": "arn:aws:iam::123456789012:user/IAMExampleUser",
"ServiceName": "Amazon DynamoDB"
},
{
"TotalAuthenticatedEntities": 0,
"ServiceNamespace": "ec2",
"ServiceName": "Amazon EC2"
},
{
"TotalAuthenticatedEntities": 3,
"LastAuthenticated": 2018-08-25T15:29:51.156Z,
"ServiceNamespace": "s3",
"LastAuthenticatedEntity": "arn:aws:iam::123456789012:role/IAMExampleRole",
"ServiceName": "Amazon S3"
}
]
Da queste informazioni, Arnav apprende che la policy ExamplePolicy1
consente l'accesso a tre servizi: Amazon DynamoDB, Amazon S3 e Amazon EC2. L'utente IAM denominato IAMExampleUser
ha provato accedere l'ultima volta a DynamoDB il 1° novembre e qualcuno ha utilizzato il ruolo IAMExampleRole
per provare ad accedere ad Amazon S3 il 25 agosto. Ci sono anche altre due entità che hanno provato ad accedere ad Amazon S3 nell'ultimo anno. Tuttavia, nessuno ha provato ad accedere ad Amazon EC2 nell'ultimo anno.
Questo significa che Arnav può rimuovere in modo sicuro le operazioni Amazon EC2 dalla policy. Arnav vuole esaminare l'attuale documento JSON per la policy. In primo luogo, deve determinare il numero di versione della policy utilizzando il comando seguente.
aws iam list-policy-versions --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1
Dalla risposta, Arnav raccoglie l'attuale numero di versione predefinita dall'array Versions
. Utilizza quindi quel numero di versione (v2
) per richiedere il documento JSON della policy utilizzando il comando seguente.
aws iam get-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --version-id v2
Arnav memorizza il documento JSON della policy restituito nel campo Document
dell'array PolicyVersion
. Nel documento della policy, Arnav ricerca le operazioni nello spazio dei nomi ec2
. Se non ci sono operazioni dagli altri spazi dei nomi rimanenti nella policy, scollega la policy dalle identità interessate (utenti, gruppi e ruoli) e la elimina. In questo caso, la policy include i servizi Amazon DynamoDB e Amazon S3. Pertanto, Arnav rimuove le operazioni Amazon EC2 dal documento e salva le modifiche. Utilizza quindi il seguente comando per aggiornare la policy con la nuova versione del documento e impostare tale versione come versione predefinita della policy.
aws iam create-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --policy-document file://UpdatedPolicy.json --set-as-default
La policy ExamplePolicy1
è ora aggiornata per rimuovere l'accesso al servizio Amazon EC2 non necessario.
Altri scenari IAM
Le informazioni sull'ultimo tentativo di accesso di una risorsa IAM (utente, gruppo, ruolo o policy) a un servizio possono essere utili per completare una delle seguenti attività:
-
Policy: Modifica di una policy esistente in linea o gestita dal cliente per rimuovere le autorizzazioni
-
Policy: Conversione di una policy in linea in una policy gestita e successiva eliminazione
-
Policy: Aggiunta di un rifiuto esplicito a una policy esistente
-
Policy: Scollegamento di una policy gestita da un'identità (utente, gruppo o ruolo)
-
Gruppi: Rimozione di utenti da un gruppo
Utilizzo dei dati per perfezionare le autorizzazioni di un'unità organizzativa
Puoi utilizzare i dati sull'ultimo accesso al servizio per perfezionare le autorizzazioni per un'unità organizzativa in AWS Organizations.
Ad esempio, John Stiles è un amministratore AWS Organizations La sua responsabilità è garantire che le persone negli account Account AWS dell'azienda non dispongano di autorizzazioni eccessive. Come parte di un audit di sicurezza periodico, esamina le autorizzazioni dell'organizzazione. La sua unità organizzativa Development
contiene gli account che vengono spesso utilizzati per testare nuovi servizi AWS. John decide di controllare periodicamente il report per servizi a cui non è stato effettuato alcun accesso da più di 180 giorni. Quindi, rimuove le autorizzazioni concesse ai membri dell'unità organizzativa per accedere a questi servizi.
John esegue l'accesso alla console IAM utilizzando le sue credenziali dell'account di gestione. Nella console IAM, individua i dati di Organizations per l'unità organizzativa Development
. Esamina la tabella Service access report (Report di accesso al servizio) e vede che non è stato effettuato alcun accesso a due servizi AWS per un tempo superiore al suo periodo preferito di 180 giorni. Si ricorda di aver aggiunto autorizzazioni per permettere al team di sviluppo di accedere ad Amazon Lex e AWS Database Migration Service. John contatta i team di sviluppo e conferma che non hanno più l'esigenza aziendale di testare questi servizi.
John è pronto a usare le ultime informazioni di accesso. Sceglie Modifica in AWS Organizations e gli viene segnalato che la SCP è collegata a più entità. Sceglie Continue (Continua). In AWS Organizations, esamina le destinazioni per capire a quali entità Organizations è collegata la SCP. Tutte le entità si trovano all'interno dell'unità organizzativa Development
.
John decide di rifiutare l'accesso alle operazioni Amazon Lex e AWS Database Migration Service nella SCP NewServiceTest
. Questa operazione rimuove l'accesso non necessario ai servizi.