Creare un provider di identità SAML in IAM - AWS Identity and Access Management

Creare un provider di identità SAML in IAM

Un provider di identità SAML 2.0 IAM è un'entità in IAM che descrive un servizio del provider di identità (IdP) esterno che supporta lo standard SAML 2.0 (Security Assertion Markup Language 2.0). Puoi utilizzare un provider di identità IAM per stabilire una relazione di attendibilità fra un provider di identità compatibile con SAML, come ad esempio Shibboleth o Active Directory Federation Services, e AWS, in modo che i tuoi utenti possano accedere alle risorse AWS. I provider di identità SAML IAM vengono utilizzati come principali nelle policy di attendibilità IAM.

Per ulteriori informazioni su questo scenario, consulta Federazione SAML 2.0.

Puoi creare e gestire un provider di identità IAM nella Console di gestione AWS o con la AWS CLI, Tools for Windows PowerShell o le chiamate API AWS.

Una volta creato un provider SAML, dovrai creare uno o più ruoli IAM. Un ruolo è un'identità in AWS che non dispone di credenziali proprie (a differenza di un utente). Tuttavia, in questo contesto, un ruolo viene assegnato in modo dinamico a un principale federato SAML autenticato dal tuo IdP. Il ruolo consente all'IdP di richiedere credenziali di sicurezza provvisorie per l'accesso a AWS. Le policy associate al ruolo stabiliscono quali operazioni gli utenti possono eseguire in AWS. Per creare un ruolo per una federazione SAML consultare Creazione di un ruolo per un provider di identità di terze parti .

Infine, una volta creato il ruolo, puoi completare l'attendibilità SAML configurando l'IdP con informazioni su AWS e sui ruoli che desideri rendere disponibili ai principali federati SAML. Questa operazione viene definita configurazione di una relazione di trust fra IdP e AWS. Per configurare una relazione di trust, consultare Configurare il provider di identità SAML 2.0 con una relazione di attendibilità della parte affidabile e aggiunta di attestazioni.

Prerequisiti

Prima di creare un provider di identità SAML, è necessario disporre delle seguenti informazioni dal proprio IdP.

  • Scarica il documento di metadati SAML dal tuo IdP. Questo documento include il nome dell'approvatore, le informazioni sulla scadenza e le chiavi che possono essere utilizzate per convalidare la risposta di autenticazione SAML (asserzioni) che vengono ricevute dal provider di identità. Per generare il documento di metadati, utilizza il software di gestione delle identità fornito dall'IdP esterno.

    Importante

    Questo file di metadati include il nome dell'approvatore, le informazioni sulla scadenza e le chiavi che possono essere utilizzate per convalidare la risposta di autenticazione SAML (asserzioni) ricevute dal provider di identità. Il file di metadati deve essere codificati in formato UTF-8, senza BOM (Byte Order Mark). Per rimuovere il BOM, codifica i file come UTF-8 utilizzando un editor di testi come ad esempio Notepad++.

    Il certificato x.509 incluso come parte del documento di metadati SAML deve utilizzare una chiave di almeno 1.024 bit. Inoltre, il certificato x.509 deve essere privo di eventuali estensioni ripetute. È possibile utilizzare le estensioni, ma possono essere visualizzate una sola volta nel certificato. Se il certificato x.509 non soddisfa nessuna delle due condizioni, la creazione dell'IdP ha esito negativo e restituisce l'errore “Unable to parse metadata”.

    Come definito dal profilo di interoperabilità dei metadati SAML V2.0 versione 1.0, IAM non valuta né interviene in merito alla scadenza dei certificati X.509 nei documenti dei metadati SAML. Se hai preoccupazioni riguardo ai certificati X.509 scaduti, ti consigliamo di monitorare le date di scadenza dei certificati e di ruotarli in base alle policy di governance e sicurezza della tua organizzazione.

  • Quando si sceglie di abilitare la crittografia SAML, è necessario generare un file di chiave privata utilizzando l'IdP e caricare questo file nella configurazione SAML di IAM in formato .pem. AWS STS necessita di questa chiave privata per decrittografare le risposte SAML che corrispondono alla chiave pubblica utilizzata dall'IdP. Sono supportati i seguenti algoritmi:

    • Algoritmi di crittografia

      • AES-128

      • AES-256

      • RSA-OAEP

    • Algoritmi di trasporto della chiave

      • AES-CBC

      • AES-GCM

    Consulta la documentazione del provider di identità per le istruzioni sulla generazione di una chiave privata.

    Nota

    Il Centro identità IAM e Amazon Cognito non supportano le asserzioni SAML crittografate dei provider di identità IAM SAML. Puoi aggiungere indirettamente il supporto per le asserzioni SAML crittografate alla federazione dei pool di identità di Amazon Cognito con i pool di utenti di Amazon Cognito. I pool di utenti dispongono di una federazione SAML che è indipendente dalla federazione IAM SAML e supporta la firma e la crittografia SAML. Sebbene questa funzionalità non si estenda direttamente ai pool di identità, i pool di utenti possono passare da IdP a pool di identità. Per utilizzare la crittografia SAML con pool di identità, aggiungi un provider SAML con crittografia a un pool di utenti che è un IdP a un pool di identità.

    Il tuo provider SAML deve essere in grado di crittografare le asserzioni SAML con una chiave fornita dal tuo pool di utenti. I pool di utenti non accetteranno asserzioni crittografate con un certificato fornito da IAM.

Per istruzioni su come configurare molti dei provider di identità disponibili per AWS e per informazioni su come generare il documento dei metadati SAML richiesto, consultare Integrazione di provider di soluzioni SAML di terze parti con AWS.

Per assistenza sulla federazione SAML, consulta Risoluzione dei problemi della federazione SAML.

Creare e gestire un provider di identità SAML IAM (console)

Puoi utilizzare la Console di gestione AWS per creare, aggiornare e eliminare provider di identità SAML IAM. Per assistenza sulla federazione SAML, consulta Risoluzione dei problemi della federazione SAML.

Come creare un provider di identità SAML IAM (console)
  1. Accedi alla Console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione, scegli Provider di identità, quindi seleziona Aggiungi provider.

  3. Per Configura provider, scegli SAML.

  4. Digitare un nome per il provider di identità.

  5. In Documento metadati, fai clic su Scegli file e specifica il documento di metadati SAML scaricato in Prerequisiti.

    Nota

    L'attributo validUntil o cacheDuration nel documento di metadati SAML definisce la data Valido fino a per il provider di identità. Se il documento di metadati SAML non include un attributo relativo al periodo di validità, la data Valido fino a non corrisponderà alla data di scadenza del certificato X.509.

    IAM non valuta né interviene sulla scadenza dei certificati X.509 nei documenti di metadati SAML. Se hai preoccupazioni riguardo ai certificati X.509 scaduti, ti consigliamo di monitorare le date di scadenza dei certificati e di ruotarli in base alle policy di governance e sicurezza della tua organizzazione.

  6. (Facoltativo) Per la Crittografia SAML, seleziona Scegli file e seleziona il file della chiave privata creato in Prerequisiti. Scegli Richiedi crittografia per accettare solo le richieste crittografate dal tuo IdP.

  7. (Facoltativo) Per Aggiungi tag, puoi aggiungere coppie chiave-valore per facilitare l'identificazione e l'organizzazione dei provider di identità. È inoltre possibile utilizzare i tag per controllare l'accesso alle risorse AWS. Per ulteriori informazioni sull'applicazione di tag ai provider di identità SAML, vedere Aggiungere tag ai provider di identità SAML per IAM.

    Seleziona Aggiungi tag. Immetti i valori per ogni coppia chiave-valore del tag.

  8. Controlla le informazioni inserite. Quando hai finito, scegli Aggiungi provider.

  9. Assegna un ruolo IAM al tuo provider di identità. Questo ruolo assegna alle identità utente esterne gestite dal provider di identità le autorizzazioni per accedere alle risorse AWS dell'account. Per ulteriori informazioni sulla creazione di ruoli per la federazione delle identità, consulta Creazione di un ruolo per un provider di identità di terze parti .

    Nota

    Gli IDP SAML utilizzati in una policy di attendibilità dei ruoli devono appartenere allo stesso account in cui si trova il ruolo.

Per eliminare un provider SAML (console)
  1. Accedi alla Console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione, scegli Identity providers (Provider di identità).

  3. Seleziona la casella di controllo accanto al provider di identità che desideri eliminare.

  4. Scegli Elimina. Viene visualizzata una nuova finestra.

  5. Conferma che desideri eliminare il provider digitando la parola delete nel campo. Quindi, scegli Elimina.

Gestire le chiavi di crittografia SAML

Puoi configurare i provider SAML IAM per ricevere asserzioni crittografate nella risposta SAML dal tuo IdP esterno. Gli utenti possono assumere un ruolo in AWS con le asserzioni SAML crittografate chiamando sts:AssumeRoleWithSAML.

La crittografia SAML garantisce la sicurezza delle asserzioni quando vengono trasmesse tramite intermediari o terze parti. Inoltre, questa funzionalità consente di soddisfare il FedRAMP o qualsiasi requisito della policy di conformità interna che impone la crittografia delle asserzioni SAML.

Per configurare un provider di identità SAML IAM, consulta Creare un provider di identità SAML in IAM. Per assistenza sulla federazione SAML, consulta Risoluzione dei problemi della federazione SAML.

Ruotare la chiave di crittografia SAML

IAM utilizza la chiave privata che hai caricato sul provider SAML IAM per decrittografare le asserzioni SAML crittografate del tuo IdP. Puoi salvare fino a due file di chiave privata per ogni provider di identità, consentendoti di ruotare le chiavi private secondo necessità. Quando vengono salvati due file, ogni richiesta tenterà innanzitutto di decrittografare con la data riportata in Aggiunto il più recente, quindi IAM proverà a decrittografare la richiesta con la data riportata in Aggiunto il più vecchia.

  1. Accedi alla Console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione, scegli Provider di identità, quindi seleziona il tuo provider dall'elenco.

  3. Scegli la scheda Crittografia SAML e seleziona Aggiungi nuova chiave.

  4. Seleziona Scegli file e carica la chiave privata scaricata dal tuo IdP come file .pem, quindi seleziona Aggiungi chiave.

  5. Nella sezione Chiavi private per la decrittografia SAML, seleziona il file di chiave privata scaduto e scegli Rimuovi. Ti consigliamo di rimuovere la chiave privata scaduta dopo aver aggiunto una nuova chiave privata per assicurarti che il primo tentativo di decrittografare l'asserzione abbia esito positivo.

Creare e gestire un provider di identità SAML IAM (AWS CLI)

Puoi utilizzare la AWS CLI per creare, aggiornare ed eliminare i provider SAML. Per assistenza sulla federazione SAML, consulta Risoluzione dei problemi della federazione SAML.

Come creare un provider di identità IAM e caricare un documento di metadati (AWS CLI)
Per aggiornare un provider di identità SAML IAM (AWS CLI)

Puoi aggiornare il file di metadati, le impostazioni di crittografia SAML e ruotare i file di decrittografia a chiave privata per il tuo provider SAML IAM. Per ruotare le chiavi private, aggiungi la tua nuova chiave privata e rimuovi la vecchia chiave in una richiesta separata. Per ulteriori informazioni sulla rotazione delle chiavi private, consulta Gestire le chiavi di crittografia SAML.

Come aggiungere i tag a un provider di identità IAM esistente (AWS CLI)
Come elencare i tag per il provider di identità IAM esistente (AWS CLI)
Come rimuovere i tag da un provider di identità IAM esistente (AWS CLI)
Come eliminare un provider di identità SAML IAM (AWS CLI)
  1. (Facoltativo) Per elencare le informazioni di tutti i provider (ad esempio l'ARN, la data di creazione e la scadenza), eseguire il seguente comando:

  2. (Facoltativo) Per ottenere informazioni su un provider specifico (ad esempio l'ARN, la data di creazione, la scadenza, le impostazioni di crittografia e le informazioni sulla chiave privata), esegui il seguente comando:

  3. Per eliminare un provider di identità IAM, esegui il comando:

Creare e gestire un provider di identità SAML IAM (API AWS)

Puoi utilizzare l'API AWS per creare, aggiornare ed eliminare i provider SAML. Per assistenza sulla federazione SAML, consulta Risoluzione dei problemi della federazione SAML.

Come creare un provider di identità IAM e caricare un documento di metadati (API AWS)
Per aggiornare un provider di identità SAML IAM (API AWS)

Puoi aggiornare il file di metadati, le impostazioni di crittografia SAML e ruotare i file di decrittografia a chiave privata per il tuo provider SAML IAM. Per ruotare le chiavi private, aggiungi la tua nuova chiave privata e rimuovi la vecchia chiave in una richiesta separata. Per ulteriori informazioni sulla rotazione delle chiavi private, consulta Gestire le chiavi di crittografia SAML.

Come aggiungere i tag a un provider di identità IAM (API AWS)
Come elencare i tag per un provider di identità IAM esistente (API AWS)
Come rimuovere i tag da un provider di identità IAM esistente (API AWS)
Come eliminare un provider di identità IAM (API AWS)
  1. (Facoltativo) Per elencare le informazioni di tutti gli IdP (ad esempio l'ARN, la data di creazione e la scadenza), richiamare la seguente operazione:

  2. (Facoltativo) Per ottenere informazioni su un provider specifico (ad esempio l'ARN, la data di creazione, la data di scadenza, le impostazioni di crittografia e le informazioni sulla chiave privata), esegui il seguente comando:

  3. Per eliminare un IdP, richiamare la seguente operazione:

Passaggi successivi

Dopo aver creato un provider di identità SAML, configura l'attendibilità della parte con il tuo IdP. È inoltre possibile utilizzare le attestazioni della risposta di autenticazione del tuo IdP nelle policy per controllare l'accesso a un ruolo.