Autenticazione e controllo degli accessi per AWS KMS - AWS Key Management 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à.

Autenticazione e controllo degli accessi per AWS KMS

Per utilizzarlo AWS KMS, devi disporre di credenziali che AWS possano essere utilizzate per autenticare le tue richieste. Le credenziali devono includere i permessi di accesso alle AWS risorse e gli alias. AWS KMS keys Nessun AWS principale dispone di alcuna autorizzazione per una chiave KMS a meno che tale autorizzazione non sia fornita esplicitamente e mai negata. Non sono disponibili autorizzazioni implicite o automatiche per l'utilizzo o la gestione di una chiave KMS.

Il modo principale per gestire l'accesso alle AWS KMS risorse è attraverso le politiche. Le policy sono documenti che descrivono quali principali possono accedere a quali risorse. Le policy allegate a un'identità IAM sono definite policy basate su identità (o policy IAM), mentre quelle collegate ad altri tipi di risorse vengono definite policy di risorse. Le policy di risorse AWS KMS per le chiavi KMS sono dette policy delle chiavi. Tutte le chiavi KMS dispongono di una policy delle chiavi.

Per controllare l'accesso ai tuoi AWS KMS alias, utilizza le policy IAM. Per consentire ai principali di creare gli alias, è necessario fornire l'autorizzazione all'alias in una policy IAM e l'autorizzazione alla chiave in una policy delle chiavi. Per informazioni dettagliate, vedi Controllo dell'accesso agli alias.

Per controllare l'accesso alle chiavi KMS, è possibile utilizzare i seguenti meccanismi delle policy.

  • Policy delle chiavi: ogni chiave KMS ha una policy delle chiavi. Le policy delle chiavi sono il meccanismo principale per controllare l'accesso a una chiave KMS. Puoi utilizzare la sola policy delle chiavi per il controllo dell'accesso, per cui l'accesso alla chiave KMS nella sua interezza è definito in un unico documento (la policy delle chiavi). Per ulteriori informazioni sull'utilizzo delle policy delle chiavi, consulta Policy delle chiavi.

  • Policy IAM: è possibile utilizzare le policy IAM insieme alla policy delle chiavi e alle concessioni per controllare l'accesso a una chiave KMS. Il controllo dell'accesso eseguito in questo modo consente di gestire tutte le autorizzazioni delle identità IAM in IAM. Per utilizzare una policy IAM per consentire l'accesso a una chiave KMS, la policy delle chiavi deve consentirla esplicitamente. Per ulteriori informazioni sull'utilizzo di policy IAM consulta Policy IAM.

  • Concessioni: è possibile utilizzare le concessioni insieme alla policy delle chiavi e alle policy IAM per consentire l'accesso a una chiave KMS. Il controllo dell'accesso eseguito in questo modo ti consente di accedere alla chiave KMS nella policy delle chiavi e di permettere alle identità di delegare l'accesso ad altri utenti. Per ulteriori informazioni sull'utilizzo di concessioni, consulta Sovvenzioni in AWS KMS.

Le chiavi KMS appartengono all' AWS account in cui sono state create. Tuttavia, nessuna identità o principale, incluso l'utente root dell' AWS account, è autorizzato a utilizzare o gestire una chiave KMS a meno che tale autorizzazione non sia esplicitamente fornita in una politica chiave, una politica o una concessione IAM. L'identità IAM che crea una chiave KMS non è considerata il proprietario della chiave e non dispone automaticamente dell'autorizzazione a utilizzare o gestire la chiave KMS creata. Come qualsiasi altra identità, il creatore di chiavi deve ottenere l'autorizzazione tramite una policy chiave, una policy IAM o una concessione. Tuttavia, le identità che hanno l'autorizzazione kms:CreateKey possono impostare la policy chiave iniziale e concedersi l'autorizzazione all'utilizzo o alla gestione della chiave.

I seguenti argomenti forniscono dettagli su come utilizzare AWS Identity and Access Management (IAM) e AWS KMS le autorizzazioni per proteggere le risorse controllando chi può accedervi.

Concetti sul controllo degli AWS KMS accessi

Scopri i concetti utilizzati nelle discussioni sul controllo degli accessi in AWS KMS.

Autenticazione

L'autenticazione è il processo di verifica della tua identità. Per inviare una richiesta a AWS KMS, devi accedere AWS utilizzando AWS le tue credenziali.

Autorizzazione

L'autorizzazione consente di inviare richieste per creare, gestire o utilizzare AWS KMS risorse. Ad esempio, devi avere l'autorizzazione per utilizzare una chiave KMS in un'operazione di crittografia.

Per controllare l'accesso alle AWS KMS risorse, utilizza le policy chiave, le policy IAM e le sovvenzioni. Ogni chiave KMS deve avere una policy delle chiavi. Se la policy delle chiavi lo consente, puoi anche utilizzare le policy IAM e le concessioni per consentire ai principali l'accesso alla chiave KMS. Per affinare l'autorizzazione, puoi utilizzare le chiavi di condizione che consentono o negano l'accesso solo quando una richiesta o una risorsa soddisfa le condizioni specificate. Puoi anche consentire l'accesso a presidi di cui ti fidi di altri. Account AWS

Autenticazione con identità

L'autenticazione è il modo in cui accedi AWS utilizzando le tue credenziali di identità. Devi essere autenticato (aver effettuato l' Utente root dell'account AWS accesso AWS) come utente IAM o assumendo un ruolo IAM.

Puoi accedere AWS come identità federata utilizzando le credenziali fornite tramite una fonte di identità. AWS IAM Identity Center Gli utenti (IAM Identity Center), l'autenticazione Single Sign-On della tua azienda e le tue credenziali di Google o Facebook sono esempi di identità federate. Se accedi come identità federata, l'amministratore ha configurato in precedenza la federazione delle identità utilizzando i ruoli IAM. Quando accedi AWS utilizzando la federazione, assumi indirettamente un ruolo.

A seconda del tipo di utente, puoi accedere al AWS Management Console o al portale di AWS accesso. Per ulteriori informazioni sull'accesso a AWS, vedi Come accedere al tuo Account AWS nella Guida per l'Accedi ad AWS utente.

Se accedi a AWS livello di codice, AWS fornisce un kit di sviluppo software (SDK) e un'interfaccia a riga di comando (CLI) per firmare crittograficamente le tue richieste utilizzando le tue credenziali. Se non utilizzi AWS strumenti, devi firmare tu stesso le richieste. Per ulteriori informazioni sull'utilizzo del metodo consigliato per firmare autonomamente le richieste, consulta Signing AWS API request nella IAM User Guide.

A prescindere dal metodo di autenticazione utilizzato, potrebbe essere necessario specificare ulteriori informazioni sulla sicurezza. Ad esempio, ti AWS consiglia di utilizzare l'autenticazione a più fattori (MFA) per aumentare la sicurezza del tuo account. Per ulteriori informazioni, consulta Autenticazione a più fattori nella Guida per l'utente di AWS IAM Identity Center e Utilizzo dell'autenticazione a più fattori (MFA) in AWSnella Guida per l'utente IAM.

Account AWS utente root

Quando si crea un account Account AWS, si inizia con un'identità di accesso che ha accesso completo a tutte Servizi AWS le risorse dell'account. Questa identità è denominata utente Account AWS root ed è accessibile effettuando l'accesso con l'indirizzo e-mail e la password utilizzati per creare l'account. Si consiglia vivamente di non utilizzare l'utente root per le attività quotidiane. Conserva le credenziali dell'utente root e utilizzale per eseguire le operazioni che solo l'utente root può eseguire. Per un elenco completo delle attività che richiedono l'accesso come utente root, consulta la sezione Attività che richiedono le credenziali dell'utente root nella Guida per l'utente IAM.

Identità federata

Come procedura consigliata, richiedi agli utenti umani, compresi gli utenti che richiedono l'accesso come amministratore, di utilizzare la federazione con un provider di identità per accedere Servizi AWS utilizzando credenziali temporanee.

Un'identità federata è un utente dell'elenco utenti aziendale, di un provider di identità Web AWS Directory Service, della directory Identity Center o di qualsiasi utente che accede utilizzando le Servizi AWS credenziali fornite tramite un'origine di identità. Quando le identità federate accedono Account AWS, assumono ruoli e i ruoli forniscono credenziali temporanee.

Per la gestione centralizzata degli accessi, consigliamo di utilizzare AWS IAM Identity Center. Puoi creare utenti e gruppi in IAM Identity Center oppure puoi connetterti e sincronizzarti con un set di utenti e gruppi nella tua fonte di identità per utilizzarli su tutte le tue applicazioni. Account AWS Per ulteriori informazioni su IAM Identity Center, consulta Cos'è IAM Identity Center? nella Guida per l'utente di AWS IAM Identity Center .

Utenti e gruppi IAM

Un utente IAM è un'identità interna Account AWS che dispone di autorizzazioni specifiche per una singola persona o applicazione. Ove possibile, consigliamo di fare affidamento a credenziali temporanee invece di creare utenti IAM con credenziali a lungo termine come le password e le chiavi di accesso. Tuttavia, se si hanno casi d'uso specifici che richiedono credenziali a lungo termine con utenti IAM, si consiglia di ruotare le chiavi di accesso. Per ulteriori informazioni, consulta la pagina Rotazione periodica delle chiavi di accesso per casi d'uso che richiedono credenziali a lungo termine nella Guida per l'utente IAM.

Un gruppo IAM è un'identità che specifica un insieme di utenti IAM. Non è possibile eseguire l'accesso come gruppo. È possibile utilizzare gruppi per specificare le autorizzazioni per più utenti alla volta. I gruppi semplificano la gestione delle autorizzazioni per set di utenti di grandi dimensioni. Ad esempio, è possibile avere un gruppo denominato IAMAdmins e concedere a tale gruppo le autorizzazioni per amministrare le risorse IAM.

Gli utenti sono diversi dai ruoli. Un utente è associato in modo univoco a una persona o un'applicazione, mentre un ruolo è destinato a essere assunto da chiunque ne abbia bisogno. Gli utenti dispongono di credenziali a lungo termine permanenti, mentre i ruoli forniscono credenziali temporanee. Per ulteriori informazioni, consulta Quando creare un utente IAM (invece di un ruolo) nella Guida per l'utente IAM.

Ruoli IAM

Un ruolo IAM è un'identità interna all'utente Account AWS che dispone di autorizzazioni specifiche. È simile a un utente IAM, ma non è associato a una persona specifica. Puoi assumere temporaneamente un ruolo IAM in AWS Management Console cambiando ruolo. Puoi assumere un ruolo chiamando un'operazione AWS CLI o AWS API o utilizzando un URL personalizzato. Per ulteriori informazioni sui metodi per l'utilizzo dei ruoli, consulta Utilizzo di ruoli IAM nella Guida per l'utente IAM.

I ruoli IAM con credenziali temporanee sono utili nelle seguenti situazioni:

  • Accesso utente federato: per assegnare le autorizzazioni a una identità federata, è possibile creare un ruolo e definire le autorizzazioni per il ruolo. Quando un'identità federata viene autenticata, l'identità viene associata al ruolo e ottiene le autorizzazioni da esso definite. Per ulteriori informazioni sulla federazione dei ruoli, consulta Creazione di un ruolo per un provider di identità di terza parte nella Guida per l'utente IAM. Se utilizzi IAM Identity Center, configura un set di autorizzazioni. IAM Identity Center mette in correlazione il set di autorizzazioni con un ruolo in IAM per controllare a cosa possono accedere le identità dopo l'autenticazione. Per informazioni sui set di autorizzazioni, consulta Set di autorizzazioni nella Guida per l'utente di AWS IAM Identity Center .

  • Autorizzazioni utente IAM temporanee: un utente IAM o un ruolo può assumere un ruolo IAM per ottenere temporaneamente autorizzazioni diverse per un'attività specifica.

  • Accesso multi-account: è possibile utilizzare un ruolo IAM per permettere a un utente (un principale affidabile) con un account diverso di accedere alle risorse nell'account. I ruoli sono lo strumento principale per concedere l'accesso multi-account. Tuttavia, con alcuni Servizi AWS, è possibile allegare una policy direttamente a una risorsa (anziché utilizzare un ruolo come proxy). Per conoscere la differenza tra ruoli e politiche basate sulle risorse per l'accesso tra account diversi, consulta Cross Account Resource Access in IAM nella IAM User Guide.

  • Accesso tra servizi: alcuni Servizi AWS utilizzano funzionalità in altri. Servizi AWS Ad esempio, quando effettui una chiamata in un servizio, è comune che tale servizio esegua applicazioni in Amazon EC2 o archivi oggetti in Amazon S3. Un servizio può eseguire questa operazione utilizzando le autorizzazioni dell'entità chiamante, utilizzando un ruolo di servizio o utilizzando un ruolo collegato al servizio.

    • Sessioni di accesso diretto (FAS): quando utilizzi un utente o un ruolo IAM per eseguire azioni AWS, sei considerato un principale. Quando si utilizzano alcuni servizi, è possibile eseguire un'operazione che attiva un'altra operazione in un servizio diverso. FAS utilizza le autorizzazioni del principale che chiama an Servizio AWS, combinate con la richiesta Servizio AWS per effettuare richieste ai servizi downstream. Le richieste FAS vengono effettuate solo quando un servizio riceve una richiesta che richiede interazioni con altri Servizi AWS o risorse per essere completata. In questo caso è necessario disporre delle autorizzazioni per eseguire entrambe le azioni. Per i dettagli delle policy relative alle richieste FAS, consulta la pagina Forward access sessions.

    • Ruolo di servizio: un ruolo di servizio è un ruolo IAM che un servizio assume per eseguire azioni per tuo conto. Un amministratore IAM può creare, modificare ed eliminare un ruolo di servizio dall'interno di IAM. Per ulteriori informazioni, consulta la sezione Creazione di un ruolo per delegare le autorizzazioni a un Servizio AWSnella Guida per l'utente IAM.

    • Ruolo collegato al servizio: un ruolo collegato al servizio è un tipo di ruolo di servizio collegato a un. Servizio AWS Il servizio può assumere il ruolo per eseguire un'azione per tuo conto. I ruoli collegati al servizio vengono visualizzati nel tuo account Account AWS e sono di proprietà del servizio. Un amministratore IAM può visualizzare le autorizzazioni per i ruoli collegati ai servizi, ma non modificarle.

  • Applicazioni in esecuzione su Amazon EC2: puoi utilizzare un ruolo IAM per gestire le credenziali temporanee per le applicazioni in esecuzione su un'istanza EC2 e che AWS CLI effettuano richieste API. AWS Ciò è preferibile all'archiviazione delle chiavi di accesso nell'istanza EC2. Per assegnare un AWS ruolo a un'istanza EC2 e renderlo disponibile per tutte le sue applicazioni, crei un profilo di istanza collegato all'istanza. Un profilo dell'istanza contiene il ruolo e consente ai programmi in esecuzione sull'istanza EC2 di ottenere le credenziali temporanee. Per ulteriori informazioni, consulta Utilizzo di un ruolo IAM per concedere autorizzazioni ad applicazioni in esecuzione su istanze di Amazon EC2 nella Guida per l'utente IAM.

Per informazioni sull'utilizzo dei ruoli IAM, consulta Quando creare un ruolo IAM (invece di un utente) nella Guida per l'utente IAM.

Gestione dell'accesso con policy

Puoi controllare l'accesso AWS creando policy e collegandole a AWS identità o risorse. Una policy è un oggetto AWS che, se associato a un'identità o a una risorsa, ne definisce le autorizzazioni. AWS valuta queste politiche quando un principale (utente, utente root o sessione di ruolo) effettua una richiesta. Le autorizzazioni nelle policy determinano l'approvazione o il rifiuto della richiesta. La maggior parte delle politiche viene archiviata AWS come documenti JSON. Per ulteriori informazioni sulla struttura e sui contenuti dei documenti delle policy JSON, consulta Panoramica delle policy JSON nella Guida per l'utente IAM.

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale principale può eseguire azioni su quali risorse e in quali condizioni.

Per impostazione predefinita, utenti e ruoli non dispongono di autorizzazioni. Per concedere agli utenti l'autorizzazione a eseguire operazioni sulle risorse di cui hanno bisogno, un amministratore IAM può creare policy IAM. L'amministratore può quindi aggiungere le policy IAM ai ruoli e gli utenti possono assumere i ruoli.

Le policy IAM definiscono le autorizzazioni relative a un'operazione, a prescindere dal metodo utilizzato per eseguirla. Ad esempio, supponiamo di disporre di una policy che consente l'operazione iam:GetRole. Un utente con tale policy può ottenere informazioni sul ruolo dall' AWS Management Console AWS CLI, dall'o dall' AWS API.

Policy basate su identità

Le policy basate su identità sono documenti di policy di autorizzazione JSON che è possibile allegare a un'identità (utente, gruppo di utenti o ruolo IAM). Tali policy definiscono le azioni che utenti e ruoli possono eseguire, su quali risorse e in quali condizioni. Per informazioni su come creare una policy basata su identità, consulta Creazione di policy IAM nella Guida per l'utente IAM.

Le policy basate su identità possono essere ulteriormente classificate come policy inline o policy gestite. Le policy inline sono integrate direttamente in un singolo utente, gruppo o ruolo. Le politiche gestite sono politiche autonome che puoi allegare a più utenti, gruppi e ruoli nel tuo Account AWS. Le politiche gestite includono politiche AWS gestite e politiche gestite dai clienti. Per informazioni su come scegliere tra una policy gestita o una policy inline, consulta Scelta fra policy gestite e policy inline nella Guida per l'utente IAM.

Policy basate su risorse

Una politica AWS KMS chiave è una politica basata sulle risorse che controlla l'accesso a una chiave KMS. Ogni chiave KMS deve avere una policy delle chiavi. Puoi utilizzare un altro meccanismo di autorizzazione per consentire l'accesso alla chiave KMS, ma solo se la policy delle chiavi lo consente. (Puoi utilizzare una policy IAM per negare l'accesso a una chiave KMS anche se la policy delle chiavi non lo consente esplicitamente).

Le policy basate sulle risorse sono documenti di policy JSON che colleghi a una risorsa, come una chiave KMS, per controllare l'accesso a una risorsa specifica. Le policy basate su risorse stabiliscono quali operazioni uno specifico principale può eseguire, su quale risorsa e in quali condizioni. Non si specifica la risorsa in una politica basata sulle risorse, ma è necessario specificare un principale, ad esempio account, utenti, ruoli, utenti federati o. Servizi AWS Le policy basate sulle risorse sono policy inline che si trovano nel servizio che gestisce la risorsa. Non è possibile utilizzare le policy AWS gestite di IAM, come la policy AWSKeyManagementServicePowerUser gestita, in una policy basata sulle risorse.

Liste di controllo degli accessi (ACL)

Le liste di controllo degli accessi (ACL) controllano quali principali (membri, utenti o ruoli dell'account) hanno le autorizzazioni per accedere a una risorsa. Le ACL sono simili alle policy basate su risorse, sebbene non utilizzino il formato del documento di policy JSON.

Amazon S3 e Amazon VPC sono esempi di servizi che supportano gli ACL. AWS WAF Per maggiori informazioni sulle ACL, consulta Panoramica delle liste di controllo degli accessi (ACL) nella Guida per gli sviluppatori di Amazon Simple Storage Service.

AWS KMS non supporta gli ACL.

Altri tipi di policy

AWS supporta tipi di policy aggiuntivi e meno comuni. Questi tipi di policy possono impostare il numero massimo di autorizzazioni concesse dai tipi di policy più comuni.

  • Limiti delle autorizzazioni: un limite delle autorizzazioni è una funzionalità avanzata nella quale si imposta il numero massimo di autorizzazioni che una policy basata su identità può concedere a un'entità IAM (utente o ruolo IAM). È possibile impostare un limite delle autorizzazioni per un'entità. Le autorizzazioni risultanti sono l'intersezione delle policy basate su identità dell'entità e i relativi limiti delle autorizzazioni. Le policy basate su risorse che specificano l'utente o il ruolo nel campo Principalsono condizionate dal limite delle autorizzazioni. Un rifiuto esplicito in una qualsiasi di queste policy sostituisce l'autorizzazione. Per ulteriori informazioni sui limiti delle autorizzazioni, consulta Limiti delle autorizzazioni per le entità IAM nella Guida per l'utente IAM.

  • Politiche di controllo dei servizi (SCP): le SCP sono politiche JSON che specificano le autorizzazioni massime per un'organizzazione o un'unità organizzativa (OU) in. AWS Organizations AWS Organizations è un servizio per il raggruppamento e la gestione centralizzata di più Account AWS di proprietà dell'azienda. Se abiliti tutte le funzionalità in un'organizzazione, puoi applicare le policy di controllo dei servizi (SCP) a uno o tutti i tuoi account. L'SCP limita le autorizzazioni per le entità negli account dei membri, inclusa ciascuna. Utente root dell'account AWS Per ulteriori informazioni su organizzazioni e policy SCP, consulta la pagina sulle Policy di controllo dei servizi nella Guida per l'utente di AWS Organizations .

  • Policy di sessione: le policy di sessione sono policy avanzate che vengono trasmesse come parametro quando si crea in modo programmatico una sessione temporanea per un ruolo o un utente federato. Le autorizzazioni della sessione risultante sono l'intersezione delle policy basate su identità del ruolo o dell'utente e le policy di sessione. Le autorizzazioni possono anche provenire da una policy basata su risorse. Un rifiuto esplicito in una qualsiasi di queste policy sostituisce l'autorizzazione. Per ulteriori informazioni, consulta Policy di sessione nella Guida per l'utente IAM.

Più tipi di policy

Quando più tipi di policy si applicano a una richiesta, le autorizzazioni risultanti sono più complicate da comprendere. Per scoprire come si AWS determina se consentire una richiesta quando sono coinvolti più tipi di policy, consulta Logica di valutazione delle policy nella IAM User Guide.

AWS KMS risorse

Nel AWS KMS, la risorsa principale è un AWS KMS key. AWS KMS supporta anche un alias, una risorsa indipendente che fornisce un nome descrittivo per una chiave KMS. Alcune AWS KMS operazioni consentono di utilizzare un alias per identificare una chiave KMS.

Ogni istanza di una chiave KMS o un alias ha un Amazon Resource Name (ARN) univoco con un formato standard. Nelle AWS KMS risorse, il nome del AWS servizio è. kms

  • AWS KMS key

    Formato ARN:

    arn:AWS partition name:AWS service name:Regione AWS:Account AWS ID:key/key ID

    Esempio di ARN:

    arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

  • Alias

    Formato ARN:

    arn:AWS partition name:AWS service name:Regione AWS:Account AWS ID:alias/alias name

    Esempio di ARN:

    arn:aws:kms:us-west-2:111122223333:alias/example-alias

AWS KMS fornisce una serie di operazioni API per lavorare con AWS KMS le tue risorse. Per ulteriori informazioni sull'identificazione delle chiavi KMS nelle operazioni AWS Management Console e sulle AWS KMS API, consultaIdentificatori chiave () KeyId. Per un elenco delle AWS KMS operazioni, consulta l'AWS Key Management Service API Reference.