

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

# Provider di identità e federazione in AWS
<a name="id_roles_providers"></a>

Come best practice, ti consigliamo di richiedere agli utenti umani di utilizzare la federazione con un provider di identità per accedere alle AWS risorse invece di creare singoli utenti IAM nel tuo Account AWS. Con un provider di identità (IdP), puoi gestire le tue identità utente all'esterno AWS e concedere a queste identità utente esterne le autorizzazioni per utilizzare AWS le risorse del tuo account. Questa funzione è utile se la tua organizzazione dispone già di un proprio sistema di gestione delle identità, come ad esempio una directory aziendale degli utenti. È utile anche se stai creando un'app mobile o un'applicazione web che richiede l'accesso alle risorse. AWS 

**Nota**  
Consigliamo inoltre di gestire gli utenti nel [Centro identità IAM](https://docs.aws.amazon.com//singlesignon/latest/userguide/what-is.html) con un provider di identità SAML esterno anziché utilizzare la federazione SAML in IAM. La federazione di IAM Identity Center con un provider di identità ti offre la possibilità di consentire alle persone di accedere a più AWS account nella tua organizzazione e a più AWS applicazioni. Per informazioni su situazioni specifiche in cui è richiesto un utente IAM, consulta la sezione [Quando creare un utente IAM invece di un ruolo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_which-to-choose).

Se preferisci utilizzare un singolo AWS account senza abilitare IAM Identity Center, puoi utilizzare IAM con un IdP esterno che fornisce informazioni sull'identità AWS utilizzando OpenID [Connect (OIDC) o [SAML 2.0 (Security Assertion Markup Language 2.0](https://wiki.oasis-open.org/security))](http://openid.net/connect/). OIDC collega applicazioni, come GitHub Actions, che non funzionano su risorse. AWS AWS Tra i gestori dell'identità digitale SAML noti figurano Shibboleth e Active Directory Federation Services.

Quando utilizzi un provider di identità, non devi creare un codice di accesso personalizzato né gestire le tue identità utente. Tale operazione viene eseguita dall'IdP. I tuoi utenti esterni accedono tramite un IdP e puoi concedere a tali identità esterne le autorizzazioni per utilizzare le AWS risorse del tuo account. I provider di identità aiutano a mantenere la tua Account AWS sicurezza perché non devi distribuire o incorporare credenziali di sicurezza a lungo termine, come le chiavi di accesso, nell'applicazione.

Consulta la tabella seguente per determinare quale tipo di federazione IAM è il migliore per il tuo caso d'uso: IAM, Centro identità IAM o Amazon Cognito. I riepiloghi e la tabella seguenti forniscono una panoramica dei metodi che gli utenti possono utilizzare per ottenere l'accesso federato alle risorse. AWS 


| Tipo di federazione IAM | Tipo di account | Gestione degli accessi di... | Origine di identità supportata | 
| --- | --- | --- | --- | 
|  Federazione con il Centro identità IAM  |  Account multipli gestiti da AWS Organizations  |  Utenti umani della forza lavoro  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/id_roles_providers.html)  | 
|  Federazione con IAM  |  Singolo account autonomo  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/id_roles_providers.html)  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/id_roles_providers.html)  | 
|  Federazione con pool di identità Amazon Cognito  |  Qualsiasi  |  Utenti di app che richiedono l'autorizzazione IAM per accedere alle risorse  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/id_roles_providers.html)  | 

## Federazione con il Centro identità IAM
<a name="id_roles_providers_identity-center"></a>

Per una gestione centralizzata degli accessi degli utenti umani, consigliamo di utilizzare [Centro identità IAM](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) per gestire l'accesso ai tuoi account e le autorizzazioni all'interno di questi account. Agli utenti di IAM Identity Center vengono concesse credenziali a breve termine per AWS le tue risorse. Puoi utilizzare Active Directory, un provider di identità (IdP) esterno o una directory IAM Identity Center come origine di identità per utenti e gruppi per assegnare l'accesso alle tue risorse. AWS 

IAM Identity Center supporta la federazione delle identità con SAML (Security Assertion Markup Language) 2.0 per fornire un accesso single sign-on federato agli utenti autorizzati a utilizzare le applicazioni all'interno del portale di accesso. AWS Gli utenti possono quindi accedere ai servizi che supportano SAML, incluse le applicazioni Console di gestione AWS e quelle di terze parti, come Microsoft 365, SAP Concur e Salesforce.

## Federazione con IAM
<a name="id_roles_providers_iam"></a>

Anche se consigliamo vivamente di gestire gli utenti umani nel Centro identità IAM, è possibile abilitare l’accesso ai principali federati con IAM per gli utenti umani impegnati in implementazioni a breve termine su piccola scala. IAM consente di utilizzare SAML 2.0 e Open ID Connect (OIDC) separati IdPs e di utilizzare attributi principali federati per il controllo degli accessi. Con IAM, puoi trasferire gli attributi utente, come centro di costo, titolo o locale, dal tuo IdPs a e implementare autorizzazioni di AWS accesso granulari basate su questi attributi.

Un *carico di lavoro* è una raccolta di risorse e codice che fornisce valore aziendale, ad esempio un’applicazione o un processo di backend. Il tuo carico di lavoro può richiedere un'identità IAM per effettuare richieste a AWS servizi, applicazioni, strumenti operativi e componenti. Queste identità includono macchine in esecuzione nei tuoi AWS ambienti, come EC2 istanze o AWS Lambda funzioni Amazon.

Puoi anche gestire identità computer per soggetti esterni che necessitano di accesso. Per concedere l'accesso alle identità computer, puoi utilizzare i ruoli IAM. I ruoli IAM dispongono di autorizzazioni specifiche e forniscono un modo per accedere AWS affidandosi a credenziali di sicurezza temporanee con una sessione di ruolo. Inoltre, potresti avere macchine esterne AWS che richiedono l'accesso ai tuoi ambienti. AWS Per le macchine che funzionano all'esterno dell' AWS utente, puoi utilizzare [IAM Roles Anywhere](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html). Per ulteriori informazioni sui ruoli, consulta [Ruoli IAM](id_roles.md). Per i dettagli su come utilizzare i ruoli per delegare l'accesso da una parte all'altra Account AWS, consulta[Tutorial IAM: delega l'accesso tra AWS account utilizzando i ruoli IAM](tutorial_cross-account-with-roles.md).

Per collegare un IdP direttamente a IAM, crei un'entità provider di identità per stabilire una relazione di fiducia tra il tuo Account AWS e l'IdP. Supporti IdPs IAM compatibili con [OpenID Connect (OIDC) o SAML 2.0 (](http://openid.net/connect/)[Security Assertion Markup Language 2.0](https://wiki.oasis-open.org/security)). Per ulteriori informazioni sull'utilizzo di uno di questi IdPs con AWS, consulta le seguenti sezioni:
+ [Federazione OIDC](id_roles_providers_oidc.md)
+ [Federazione SAML 2.0](id_roles_providers_saml.md)

## Federazione con pool di identità Amazon Cognito
<a name="id_roles_providers_cognito"></a>

Amazon Cognito è progettato per gli sviluppatori che desiderano autenticare e autorizzare gli utenti nelle proprie app mobili e Web. I pool di utenti di Amazon Cognito aggiungono funzionalità di accesso e registrazione all'app e i pool di identità forniscono credenziali IAM che consentono agli utenti di accedere alle risorse protette gestite in AWS. I pool di identità acquisiscono le credenziali per le sessioni temporanee tramite il funzionamento dell'operazione API [https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html).

Amazon Cognito funziona con gestori dell'identità digitale esterni che supportano SAML e OpenID Connect e con gestori di identità social come Facebook, Google e Amazon. L'app può far effettuare l'accesso a un utente con un pool di utenti o un gestore dell'identità digitale esterno e recuperare in seguito le risorse per suo conto con sessioni temporanee personalizzate con un ruolo IAM.

## Risorse aggiuntive
<a name="id_roles_providers_additional_resources"></a>
+ Per una dimostrazione su come creare un proxy federativo personalizzato che abiliti il Single Sign-On (SSO) nell' Console di gestione AWS utilizzo del sistema di autenticazione dell'organizzazione, consulta. [Abilita l'accesso personalizzato del broker di identità alla AWS console](id_roles_providers_enable-console-custom-url.md)

# Scenari comuni
<a name="id_federation_common_scenarios"></a>

**Nota**  
Ti consigliamo di richiedere agli utenti umani di utilizzare credenziali temporanee per l'accesso AWS. Hai preso in considerazione l'idea di utilizzarlo AWS IAM Identity Center? Puoi utilizzare IAM Identity Center per gestire centralmente l'accesso a più account Account AWS e fornire agli utenti un accesso Single Sign-On protetto da MFA a tutti gli account assegnati da un'unica posizione. Con IAM Identity Center puoi creare e gestire le identità degli utenti in IAM Identity Center o connetterti facilmente al tuo attuale gestore dell'identità digitale (IdP) compatibile con SAML 2.0. Per ulteriori informazioni, consulta [Cos'è IAM Identity Center?](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) nella *Guida per l'utente di AWS IAM Identity Center *.

Puoi utilizzare un gestore dell’identità digitale (IdP) esterno per gestire le identità degli utenti al di fuori di AWS e dell’IdP esterno. Un IdP esterno può fornire informazioni sull'identità AWS utilizzando OpenID Connect (OIDC) o Security Assertion Markup Language (SAML). L'OIDC viene comunemente utilizzato quando un'applicazione che non funziona richiede l'accesso alle risorse. AWS AWS 

Quando desideri configurare la federazione con un IdP esterno, crei un *provider di identità* IAM per fornire AWS informazioni sull'IdP esterno e sulla sua configurazione. In questo modo si instaura un rapporto di fiducia tra il tuo Account AWS e l'IdP esterno. I seguenti argomenti forniscono scenari comuni per l'utilizzo dei provider di identità IAM.

**Topics**
+ [Amazon Cognito per applicazioni per dispositivi mobili](#id_roles_providers_oidc_cognito)
+ [Federazione OIDC per applicazioni per dispositivi mobili](#id_roles_providers_oidc_manual)

## Amazon Cognito per applicazioni per dispositivi mobili
<a name="id_roles_providers_oidc_cognito"></a>

Il modo migliore per utilizzare la federazione OIDC è utilizzare [Amazon Cognito](https://aws.amazon.com/cognito/). Ad esempio, Adele sta sviluppando un gioco per un dispositivo mobile in cui i dati dell'utente, quali punteggi e profili, vengono memorizzati in Amazon S3 e Amazon DynamoDB. Adele potrebbe archiviare questi dati anche in locale sul dispositivo e utilizzare Amazon Cognito per mantenerli sincronizzati su tutti i dispositivi. Tuttavia, Adele è consapevole che, per motivi di sicurezza e manutenzione, le credenziali di sicurezza AWS a lungo termine non dovrebbero essere distribuite con il gioco. Adele sa anche che il gioco potrebbe avere un gran numero di utenti. Per tutti questi motivi, non desidera creare nuove identità utente in IAM per ciascun giocatore. In alternativa, decide di sviluppare il gioco in modo che gli utenti possano effettuare l’accesso utilizzando un’identità già stabilita con un noto gestore dell’identità digitale (IdP) esterno, ad esempio **Accedi con Amazon**, **Facebook**, **Google** o qualsiasi provider di identità compatibile con **OpenID Connect** (OIDC). Il suo gioco può sfruttare il meccanismo di autenticazione di uno di questi provider per convalidare l'identità dell'utente. 

Per consentire all'app per dispositivi mobili di accedere alle sue AWS risorse, Adele deve innanzitutto registrare un ID sviluppatore presso il suo nome. IdPs Configura anche l'applicazione con ciascuno di questi provider. Nella cartella Account AWS che contiene il bucket Amazon S3 e la tabella DynamoDB per il gioco, Adele utilizza Amazon Cognito per creare ruoli IAM che definiscono con precisione le autorizzazioni di cui il gioco ha bisogno. Se utilizza un IdP OIDC, crea anche un'entità provider di identità IAM OIDC per stabilire un rapporto di fiducia tra il pool di identità di Amazon Cognito che possiede e [l'](https://docs.aws.amazon.com/cognito/latest/developerguide/external-identity-providers.html)IdP. Account AWS 

Nel codice dell'app, Adele chiama l'interfaccia di accesso per il provider di identità che ha configurato in precedenza. L'IdP gestisce tutti i dettagli relativi all'accesso dell'utente e l'app riceve un token di OAuth accesso o un token ID OIDC dal provider. L'app di Adele può scambiare queste informazioni di autenticazione con un set di credenziali di sicurezza temporanee costituite da un ID della chiave di AWS accesso, una chiave di accesso segreta e un token di sessione. L'app può quindi utilizzare queste credenziali per accedere ai servizi web offerti da. AWS L'app è limitata alle autorizzazioni definite nel ruolo che assume.

La figura riportata di seguito mostra un flusso semplificato su come questo processo potrebbe funzionare, usando Login with Amazon come provider di identità. Per la fase 2, l'app può anche utilizzare Facebook, Google o qualsiasi altro IdP compatibile con OIDC, ma ciò non è mostrato qui.

![\[Esempio di flusso di lavoro con utilizzo di Amazon Cognito per effettuare la federazione degli utenti per un'applicazione per dispositivi mobili\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/images/mobile-app-web-identity-federation.diagram.png)


 

1. Un cliente avvia l'app su un dispositivo mobile. L'app richiede all'utente di effettuare l'accesso.

1. L'app utilizza il login con le risorse di Login with Amazon per accettare le credenziali dell'utente.

1. L'app utilizza le operazioni dell'API Amazon Cognito `GetId` e `GetCredentialsForIdentity` per scambiare il token ID di Login with Amazon con un token di Amazon Cognito. Amazon Cognito, che è stato configurato per rendere attendibile il tuo progetto Login with Amazon, genera un token che scambia con credenziali di sessione temporanee per AWS STS.

1. L'app riceve le credenziali di sicurezza temporanee da Amazon Cognito. La tua app può anche utilizzare il flusso di lavoro Basic (Classic) in Amazon Cognito per recuperare i token da utilizzare. AWS STS `AssumeRoleWithWebIdentity` Per ulteriori informazioni, consulta [Flusso di autenticazione dei pool di identità (identità federate)](https://docs.aws.amazon.com/cognito/latest/developerguide/authentication-flow.html) nella Guida per gli sviluppatori di Amazon Cognito.

1. Le credenziali di sicurezza temporanee possono essere utilizzate dall'app per accedere alle risorse AWS richieste dall'applicazione per funzionare. Il ruolo associato alle credenziali di sicurezza temporanee e alle relative policy assegnate determina a quali elementi è possibile accedere.

Utilizza la seguente procedura per configurare la tua app in modo che utilizzi Amazon Cognito per autenticare gli utenti e consentire all'app di accedere alle risorse. AWS Per le operazioni specifiche per realizzare questo scenario, consulta la documentazione di Amazon Cognito.

1. (Facoltativo) Registrati come sviluppatore con Login with Amazon, Facebook, Google o qualsiasi altro provider di identità compatibile con OpenID Connect (OIDC) e configura una o più app con il provider. Questa fase è facoltativa poiché Amazon Cognito supporta anche l'accesso non autenticato (guest) per gli utenti.

1. Vai ad [Amazon Cognito in](https://console.aws.amazon.com/cognito/home). Console di gestione AWS Utilizza la procedura guidata di Amazon Cognito per creare un pool di identità, ovvero un container che Amazon Cognito utilizza per mantenere le identità degli utenti finali organizzate per le app. Puoi condividere i pool di identità tra le app. Quando configuru un pool di identità, Amazon Cognito crea uno o due ruoli IAM (uno per le identità autenticate e uno per le identità "guest" non autenticate) che definiscono le autorizzazioni per gli utenti di Amazon Cognito. 

1. Integra [AWS](https://docs.amplify.aws) Amplify con l’app e importa i file necessari per utilizzare Amazon Cognito.

1. Crea un'istanza del provider di credenziali di Amazon Cognito, passando l'ID del pool di identità, il numero del tuo Account AWS e l'Amazon Resource Name (ARN) dei ruoli associati al pool di identità. La procedura guidata di Amazon Cognito Console di gestione AWS fornisce un codice di esempio per aiutarti a iniziare.

1. Quando l'app accede a una AWS risorsa, passa l'istanza del provider di credenziali all'oggetto client, che passa le credenziali di sicurezza temporanee al client. Le autorizzazioni per le credenziali si basano sul ruolo o sui ruoli definiti in precedenza.

Per ulteriori informazioni, consulta gli argomenti seguenti:
+ [Accedi (Android) nella](https://docs.amplify.aws/lib/auth/signin/q/platform/android/) documentazione del AWS Amplify Framework. 
+ [Accedi (iOS)](https://docs.amplify.aws/lib/auth/signin/q/platform/ios/) nella documentazione del AWS Amplify Framework.

## Federazione OIDC per applicazioni per dispositivi mobili
<a name="id_roles_providers_oidc_manual"></a>

Per risultati ottimali, utilizza Amazon Cognito come gestore di identità per quasi tutti gli scenari di federazione OIDC. Amazon Cognito è semplice da utilizzare e fornisce funzionalità aggiuntive quali l'accesso anonimo (non autenticato) e la sincronizzazione dei dati degli utenti tra più dispositivi e provider. Tuttavia, se hai già creato un'app che utilizza la federazione OIDC chiamando manualmente l'API `AssumeRoleWithWebIdentity`, puoi continuare a utilizzarla e le app funzioneranno comunque correttamente. 

Il processo per l'utilizzo della federazione OIDC ***senza*** Amazon Cognito segue questa struttura generale: 

1. Effettuare la registrazione come sviluppatore al provider di identità (IdP) esterno e configurare l'app con tale provider, che fornisce un ID univoco per l'app. (Diversi IdPs utilizzano una terminologia diversa per questo processo. Questo schema utilizza il termine *configura* per il processo di identificazione dell'app con l'IdP.) Ogni IdP ti fornisce un ID app univoco per quell'IdP, quindi se configuri la stessa app con più app IdPs, la tua app avrà più app. IDs È possibile configurare più app con ciascun provider. 

   I seguenti link esterni forniscono informazioni sull'utilizzo di alcuni dei provider di identità più utilizzati ()IdPs: 
   + [Centro Sviluppatori di Login with Amazon](https://login.amazon.com/) 
   + [Aggiunta dell'accesso a Facebook a un'app o a un sito Web](https://developers.facebook.com/docs/facebook-login/v2.1) sul sito degli sviluppatori di Facebook. 
   + [Utilizzo della OAuth versione 2.0 per il login (OpenID Connect)](https://developers.google.com/accounts/docs/OAuth2Login) sul sito degli sviluppatori di Google.
**Importante**  
Se utilizzi un provider di identità OIDC di Google, Facebook o Amazon Cognito, non creare un provider di identità IAM separato in. Console di gestione AWS AWS dispone di questi provider di identità OIDC integrati e disponibili per l'uso da parte tua. Ignora la fase seguente e passa direttamente alla creazione di nuovi ruoli utilizzando il provider di identità.

1. Se utilizzi un IdP di identità diverso da Google, Facebook o Amazon Cognito compatibile con OIDC, crea un'entità provider di identità IAM.

1. In IAM, [crea uno o più ruoli](id_roles_create_for-idp.md). Per ogni ruolo, definisci chi può assumere il ruolo (policy di attendibilità) e quali autorizzazioni concedere agli utenti dell'app (policy di autorizzazione). Di solito, è necessario creare un ruolo per ogni provider di identità supportato da un'app. Ad esempio, puoi creare un ruolo che può essere assunto da un'applicazione quando l'utente effettua l'accesso tramite Login with Amazon, un secondo ruolo per la stessa applicazione in cui l'utente effettua l'accesso tramite Facebook e un terzo ruolo per l'applicazione in cui l'utente effettua l'accesso tramite Google. Per la relazione di trust, specificare il provider di identità (ad esempio Amazon.com) come `Principal` (l'entità attendibile) e includere un elemento `Condition` corrispondente all'ID app assegnato dal provider di identità. Esempi di ruoli per diversi provider sono descritti più in [Creazione di un ruolo per un provider di identità di terze parti](id_roles_create_for-idp.md). 

1. Nell'applicazione, autenticare gli utenti con il provider di identità. Le specifiche della procedura variano sia in base al provider di identità in uso (Login with Amazon, Facebook o Google) sia in base alla piattaforma su cui viene eseguita l'app. Ad esempio, il metodo di autenticazione di un'app Android può differire da quello di un'app iOS o di un'app Web JavaScript basata.

   In genere, se l'utente non ha già effettuato l'accesso, il provider di identità si occupa di visualizzare una pagina di accesso. Dopo aver autenticato l'utente, il provider di identità restituisce all'app un token di autenticazione con le informazioni sull'utente. Le informazioni incluse dipendono dagli elementi esposti dal provider di identità e dalle informazioni che l'utente è disposto a condividere. Queste informazioni possono essere utilizzate nell'app.

1. Nell'app, effettuare una chiamata *non firmata* all'operazione `AssumeRoleWithWebIdentity` per richiedere le credenziali di sicurezza provvisorie. Nella richiesta, passi il token di autenticazione dell'IdP e specifichi l'Amazon Resource Name (ARN) per il ruolo IAM che hai creato per quell'IdP. AWS verifica che il token sia affidabile e valido e, in tal caso, restituisce all'app credenziali di sicurezza temporanee che dispongono delle autorizzazioni per il ruolo indicato nella richiesta. La risposta include anche i metadati relativi all'utente forniti dal provider di identità, ad esempio l'ID utente univoco che il provider associa all'utente.

1. Utilizzando le credenziali di sicurezza temporanee della `AssumeRoleWithWebIdentity` risposta, l'app invia richieste firmate alle operazioni API. AWS Le informazioni sull'ID utente fornite dall'IdP possono distinguere gli utenti nella tua app. Ad esempio, è possibile inserire in cartelle Amazon S3 oggetti che includono l'ID utente come prefisso o suffisso. Ciò consente di creare policy di controllo degli accessi che bloccano la cartella in modo che solo l'utente con l'ID specificato possa accedervi. Per ulteriori informazioni, consulta [AWS STS principi utente federati](reference_policies_elements_principal.md#sts-session-principals).

1. L'app dovrebbe memorizzare nella cache le credenziali di sicurezza temporanee in modo da non doverne ottenere di nuove ogni volta che ha bisogno di effettuare una richiesta ad AWS. Come impostazione predefinita, le credenziali sono valide per un'ora. Quando scadono (o prima), devi effettuare un'altra chiamata ad `AssumeRoleWithWebIdentity` per ottenere un nuovo set di credenziali di sicurezza temporanee. A seconda del provider di identità e di come gestisce i token, potrebbe essere necessario aggiornare il token del provider prima di effettuare una nuova chiamata ad `AssumeRoleWithWebIdentity`, dato che anche i token di solito scadono dopo un determinato periodo di tempo. Se utilizzi l' AWS SDK per iOS o l'SDK per Android, puoi utilizzare AWS l'azione [STSCredentialsAmazon](https://aws.amazon.com/blogs/mobile/using-the-amazoncredentialsprovider-protocol-in-the-aws-sdk-for-ios) Provider, che gestisce le credenziali temporanee IAM, incluso l'aggiornamento, se necessario.

# Federazione OIDC
<a name="id_roles_providers_oidc"></a>

Immagina di creare un'applicazione che accede a AWS risorse, come GitHub Actions che utilizza flussi di lavoro per accedere ad Amazon S3 e DynamoDB. 

Quando utilizzi questi flussi di lavoro, effettui richieste ai AWS servizi che devono essere firmate con una chiave di accesso. AWS Tuttavia, consigliamo **vivamente** di **non** archiviare AWS le credenziali a lungo termine in applicazioni esterne. AWS*Configura invece le tue applicazioni per richiedere le credenziali di AWS sicurezza temporanee in modo dinamico quando necessario utilizzando la federazione OIDC.* Le credenziali temporanee fornite sono mappate a un AWS ruolo che dispone solo delle autorizzazioni necessarie per eseguire le attività richieste dall'applicazione.

Con la federazione OIDC, non è necessario creare il codice di accesso personalizzato o gestire le proprie identità utente personalizzate. Puoi invece utilizzare OIDC in applicazioni, come GitHub Actions o qualsiasi altro IdP compatibile con OpenID [Connect (OIDC)](http://openid.net/connect/), con cui effettuare l'autenticazione. AWS Ricevono un token di autenticazione, noto come JSON Web Token (JWT), e quindi lo scambiano con credenziali di sicurezza temporanee in AWS quella mappa con un ruolo IAM con le autorizzazioni per utilizzare risorse specifiche dell'utente. Account AWS L'utilizzo di un IdP ti aiuta a mantenere la tua Account AWS sicurezza perché non devi incorporare e distribuire credenziali di sicurezza a lungo termine con la tua applicazione.

La federazione OIDC supporta sia machine-to-machine l'autenticazione (ad esempio CI/CD pipeline, script automatici e applicazioni serverless) sia l'autenticazione degli utenti umani. Nei casi di autenticazione di utenti umani in cui è necessario gestire la registrazione, l’accesso e i profili dell’utente, valuta l’utilizzo di [Amazon Cognito](https://aws.amazon.com/cognito/) come gestore di identità. Per informazioni dettagliate sull’utilizzo di Amazon Cognito con OIDC, consulta [Amazon Cognito per applicazioni per dispositivi mobili](id_federation_common_scenarios.md#id_roles_providers_oidc_cognito).

**Nota**  
I JSON Web Tokens (JWTs) emessi dai provider di identità OpenID Connect (OIDC) contengono una data di scadenza nell'`exp`attestazione che specifica quando scade il token. IAM offre una finestra di cinque minuti oltre la data di scadenza specificata nel JWT per tenere conto dell'alterazione del clock, come consentito dallo standard [OpenID Connect (OIDC) Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html). Ciò significa che gli OIDC JWTs ricevuti da IAM dopo la data di scadenza, ma entro questo intervallo di cinque minuti vengono accettati per un'ulteriore valutazione ed elaborazione.

**Topics**
+ [Risorse aggiuntive per la federazione OIDC](#id_roles_providers_oidc_resources)
+ [Creare un provider di identità OpenID Connect (OIDC) in IAM](id_roles_providers_create_oidc.md)
+ [Ottenere l'impronta digitale per un provider di identità OpenID Connect](id_roles_providers_create_oidc_verify-thumbprint.md)
+ [Controlli tramite provider di identità per i provider OIDC condivisi](id_roles_providers_oidc_secure-by-default.md)

## Risorse aggiuntive per la federazione OIDC
<a name="id_roles_providers_oidc_resources"></a>

Le risorse seguenti possono fornire ulteriori informazioni sulla federazione OIDC:
+ Usa OpenID Connect nei tuoi GitHub flussi di lavoro configurando [OpenID](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services) Connect in Amazon Web Services
+ [Amazon Cognito Identity](https://docs.amplify.aws/lib/auth/advanced/q/platform/android/) nella *Guida alle librerie Amplify per Android* e [Guida all'identità di Amazon Cognito](https://docs.amplify.aws/lib/auth/advanced/q/platform/ios/) nella *Guida alle librerie Amplify per Swift*.
+ [Come usare un ID esterno per concedere l'accesso alle tue AWS risorse](https://aws.amazon.com/blogs/security/how-to-use-external-id-when-granting-access-to-your-aws-resources/) sul *AWS Security Blog* fornisce indicazioni su come configurare in modo sicuro l'accesso tra account e la federazione delle identità esterne.

# Creare un provider di identità OpenID Connect (OIDC) in IAM
<a name="id_roles_providers_create_oidc"></a>

I *provider di identità OIDC IAM* sono entità in IAM che descrivono un servizio del provider di identità (IdP) esterno in grado di supportare lo standard [OpenID Connect](http://openid.net/connect/) (OIDC), come Google o Salesforce. È possibile utilizzare un provider di identità OIDC IAM per stabilire la fiducia tra un provider di identità compatibile con OIDC e il tuo Account AWS. È utile quando si crea un'app mobile o un'applicazione web che richiede l'accesso alle AWS risorse, ma non si desidera creare un codice di accesso personalizzato o gestire le proprie identità utente. Per ulteriori informazioni su questo scenario, consulta [Federazione OIDC](id_roles_providers_oidc.md).

Puoi creare e gestire un provider di identità IAM OIDC utilizzando l' Console di gestione AWS AWS Command Line Interface API Tools for Windows PowerShell o IAM.

Una volta creato un provider di identità OIDC IAM, dovrai creare uno o più ruoli IAM. Un ruolo è un'identità AWS che non ha le proprie credenziali (come invece fa un utente). Tuttavia, in questo contesto, un ruolo viene assegnato in modo dinamico a un principale federato OIDC autenticato dall’IdP dell’organizzazione. Il ruolo consente al provider di identità dell'organizzazione di richiedere credenziali di sicurezza provvisorie per l'accesso a AWS. Le politiche assegnate al ruolo determinano le operazioni consentite agli utenti. AWS Per creare un ruolo per un provider di identità di terze parti, consulta [Creazione di un ruolo per un provider di identità di terze parti](id_roles_create_for-idp.md).

**Importante**  
Quando si configurano politicy basate sull'identità per operazioni che supportano risorse `oidc-provider`, IAM valuta l'URL completo del provider di identità OIDC, inclusi i percorsi specificati. Se l'URL del tuo provider di identità OIDC ha un percorso, devi includere quel percorso nell'ARN `oidc-provider` come valore dell'elemento `Resource`. È inoltre possibile aggiungere una barra in avanti e un carattere jolly (`/*`) al dominio URL o usare caratteri jolly (`*` e `?`) in qualsiasi punto del percorso dell'URL. Se l'URL del provider di identità OIDC nella richiesta non corrisponde al valore impostato nell'elemento `Resource` della policy, la richiesta ha esito negativo.

Per risolvere i problemi più comuni relativi alla federazione IAM OIDC, consulta [Risolvere gli errori relativi a](https://repost.aws/knowledge-center/iam-oidc-idp-federation) OIDC su Re:POST. AWS 

**Topics**
+ [Prerequisiti: convalida la configurazione del tuo provider di identità](#manage-oidc-provider-prerequisites)
+ [Creazione e gestione di un provider OIDC (Console)](#manage-oidc-provider-console)
+ [Creazione e gestione di un provider di identità OIDC IAM (AWS CLI)](#manage-oidc-provider-cli)
+ [Creazione e gestione di un provider di identità (API) OIDC AWS](#manage-oidc-provider-api)

## Prerequisiti: convalida la configurazione del tuo provider di identità
<a name="manage-oidc-provider-prerequisites"></a>

Prima di poter creare un provider di identità OIDC IAM, è necessario disporre delle seguenti informazioni dal proprio IdP. Per ulteriori informazioni su come ottenere le informazioni di configurazione del provider OIDC, consulta la documentazione dell'IdP.

1. Determina l'URL disponibile pubblicamente del tuo provider di identità OIDC. L'URL deve iniziare con i https://. Per the OIDC standard, path com ponenti sono consentiti, ma i parametri di interrogazione no. In genere, l'URL è composto solo da un nome host, ad esempio. https://server.example.org or https://example.com L'URL non deve contenere un numero di porta.

1. Aggiungi **/.well-known/openid-configuration** alla fine dell'URL del tuo provider di identità OIDC per visualizzare il documento di configurazione e i metadati disponibili pubblicamente del provider. È necessario disporre di un documento di rilevamento in formato JSON con il documento di configurazione e i metadati del provider che possono essere recuperati dall'[URL dell'endpoint di rilevamento del provider OpenID Connect](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfig).

1. Verifica che i seguenti valori siano inclusi nelle informazioni di configurazione del tuo provider. Se nella configurazione openid manca uno di questi campi, è necessario aggiornare il documento di rilevamento. Questo processo può variare in base al provider di identità, quindi segui la documentazione del tuo IdP per completare questa attività.
   + emittente: l'URL del dominio.
   + jwks\$1uri: l'endpoint JSON Web Key Set (JWKS) da cui IAM ottiene le chiavi pubbliche. Il provider di identità deve includere un endpoint JSON Web Key Set (JWKS) nella configurazione openid. Questo URI definisce dove ottenere le chiavi pubbliche utilizzate per verificare i token firmati dal provider di identità.
**Nota**  
Il JSON Web Key Set (JWKS) deve contenere almeno una chiave e può avere un massimo di 100 chiavi RSA e 100 chiavi EC. Se il JWKS del tuo provider di identità OIDC contiene più di 100 chiavi RSA o 100 chiavi EC, verrà restituita un'`InvalidIdentityToken`eccezione quando si utilizza l'operazione [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html)API con un JWT firmato da un tipo di chiave che supera il limite di 100 chiavi. Ad esempio, se un JWT è firmato con l’algoritmo RSA e nel JWKS del provider sono presenti più di 100 chiavi RSA, verrà restituita un’eccezione `InvalidIdentityToken`.
   + claims\$1supported: informazioni sull'utente che ti aiutano a garantire che le risposte di autenticazione OIDC del tuo IdP contengano gli attributi richiesti AWS utilizzati nelle policy IAM per verificare le autorizzazioni per i principali federati OIDC. Per un elenco delle chiavi di condizione IAM che possono essere utilizzate per le attestazioni, consulta [Chiavi disponibili per la federazione AWS OIDC](reference_policies_iam-condition-keys.md#condition-keys-wif).
     + aud: devi determinare il valore dichiarato del pubblico dal tuo IdP in JSON Web Tokens (). JWTs L'attestazione del pubblico (aud) è specifica dell'applicazione e identifica i destinatari previsti del token. Quando registri un'app mobile o Web con un provider OpenID Connect, viene stabilito un ID client che identifica l'applicazione. L'ID client è un identificatore univoco per l'app passato nell'attestazione aud per l'autenticazione. Quando crei il tuo provider di identità OIDC IAM, l'attestazione aud deve corrispondere al valore Pubblico.
     + iat: le attestazioni devono includere un valore per `iat` che rappresenti l'ora in cui viene emesso il token ID.
     + iss: l'URL del provider di identità. L'URL deve iniziare con https:// and should correspond to the Provider URL provided to IAM. Per the OIDC standard, path com i ponenti sono consentiti, ma i parametri di query no. In genere, l'URL è composto solo da un nome host, ad esempio. https://server.example.org or https://example.com L'URL non deve contenere un numero di porta.
   + response\$1types\$1supported: id\$1token
   + subject\$1types\$1supported: public
   + id\$1token\$1signing\$1alg\$1values\$1supported:,,,, RS256 RS384 RS512 ES256 ES384 ES512
**Nota**  
Puoi includere rivendicazioni aggiuntive come nell'esempio seguente; tuttavia, ignorerà l'affermazione. `my_custom_claim` AWS STS   

   ```
   {
     "issuer": "https://example-domain.com",
     "jwks_uri": "https://example-domain.com/jwks/keys",
     "claims_supported": [
       "aud",
       "iat",
       "iss",
       "name",
       "sub",
       "my_custom_claim"
     ],
     "response_types_supported": [
       "id_token"
     ],
     "id_token_signing_alg_values_supported": [
       "RS256",
       "RS384",
       "RS512",
       "ES256",
       "ES384",
       "ES512"
     ],
     "subject_types_supported": [
       "public"
     ]
   }
   ```

## Creazione e gestione di un provider OIDC (Console)
<a name="manage-oidc-provider-console"></a>

Segui queste istruzioni per creare e gestire un provider di identità OIDC IAM nella Console di gestione AWS.

**Importante**  
Se utilizzi un provider di identità OIDC di Google, Facebook o Amazon Cognito, non creare un provider di identità IAM separato utilizzando questa procedura. Questi provider di identità OIDC sono già integrati AWS e sono disponibili per l'uso da parte dell'utente. Segui invece i passaggi per creare nuovi ruoli per il provider di identità e consulta [Creare un ruolo per la federazione OpenID Connect (console)](id_roles_create_for-idp_oidc.md).

**Come creare un provider di identità OIDC IAM (console)**

1. <a name="idpoidcstep1"></a>Prima di creare un provider di identità OIDC IAM, occorre registrare l'applicazione sul provider di identità per ricevere un *ID client*. L'ID client (noto anche come *destinatario*) è un identificatore univoco per l'app rilasciato durante la registrazione dell'app sul provider di identità. Per ulteriori informazioni su come ottenere un ID client, consulta la documentazione per l'IdP. 
**Nota**  
AWS protegge la comunicazione con i provider di identità OIDC (IdPs) utilizzando la nostra libreria di autorità di certificazione root affidabili (CAs) per verificare il certificato TLS dell'endpoint JSON Web Key Set (JWKS). Se il tuo IdP OIDC si basa su un certificato non firmato da uno di questi provider affidabili CAs, solo allora proteggiamo la comunicazione utilizzando le impronte digitali impostate nella configurazione dell'IdP. AWS ricorreremo alla verifica dell'impronta digitale se non siamo in grado di recuperare il certificato TLS o se è richiesto TLS v1.3.

1. Aprire la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

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

1. Per **Configura provider**, scegli **OpenID Connect**. 

1. In **Provider URL (URL provider)**, digitare l'URL del provider di identità. L'URL deve soddisfare queste restrizioni:
   + L'URL rileva la distinzione tra lettere maiuscole e minuscole.
   + L'URL deve iniziare con **https://**.
   + L'URL non deve contenere un numero di porta. 
   + All'interno del tuo Account AWS, ogni provider di identità IAM OIDC deve utilizzare un URL univoco. Se provi a inviare un URL che è già stato utilizzato per un provider OpenID Connect in Account AWS, riceverai un errore.

1. Per **Audience**, digita l'ID client dell'applicazione che hai registrato con l'IdP e in cui hai ricevuto e a [Step 1](#idpoidcstep1) cui hai inviato le richieste. AWS Se disponi di client aggiuntivi IDs (noti anche come *audience*) per questo IdP, puoi aggiungerli in un secondo momento nella pagina dei dettagli del provider.
**Nota**  
Se il tuo token IdP JWT include l'attestazione `azp`, inserisci questo valore come valore Pubblico.  
Se il tuo provider di identità OIDC sta impostando entrambi `aud` e le `azp` attestazioni nel token, AWS STS utilizzerà il valore dell'attestazione come `azp` attestazione. `aud`

1. (Facoltativo) Per **Aggiungi tag**, puoi aggiungere coppie chiave-valore per aiutarti a identificare e organizzare le tue. IdPs È inoltre possibile utilizzare i tag per controllare l'accesso alle risorse AWS . Per ulteriori informazioni sul tagging dei provider di identità OIDC IAM, consulta [Aggiungere tag ai provider di identità OpenID Connect (OIDC)](id_tags_oidc.md). Seleziona **Aggiungi tag**. Immetti i valori per ogni coppia chiave-valore del tag. 

1. Controlla le informazioni inserite. Quando hai finito, scegli **Aggiungi provider**. IAM proverà a recuperare e utilizzare l'impronta digitale della CA intermedia del certificato server IdP OIDC per creare il provider di identità OIDC IAM.
**Nota**  
La catena di certificati del provider di identità OIDC deve iniziare con l'URL del dominio o dell'emittente, quindi il certificato intermedio e deve terminare con il certificato root. Se l'ordine della catena di certificati è diverso o se include certificati duplicati o aggiuntivi, riceverai un errore di mancata corrispondenza della firma e STS non riuscirà a convalidare il JSON Web Token (JWT). Correggi l'ordine dei certificati nella catena restituita dal server per risolvere l'errore. Per ulteriori informazioni sugli standard della catena di certificati, consulta [certificate\$1list nella RFC 5246](https://www.rfc-editor.org/rfc/rfc5246#section-7.4.2) sul sito Web della serie RFC.

1. Assegna un ruolo IAM al tuo provider di identità per concedere alle identità degli utenti esterni gestite dal tuo provider di identità le autorizzazioni per accedere AWS alle risorse del tuo 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](id_roles_create_for-idp.md).
**Nota**  
L'OIDC IdPs utilizzato in una politica di fiducia dei ruoli deve appartenere allo stesso account del ruolo che la considera attendibile.

**Come aggiungere o rimuovere un'identificazione personale per un provider di identità OIDC IAM (console)**
**Nota**  
AWS protegge la comunicazione con i provider di identità OIDC (IdPs) utilizzando la nostra libreria di autorità di certificazione root affidabili (CAs) per verificare il certificato TLS dell'endpoint JSON Web Key Set (JWKS). Se il tuo IdP OIDC si basa su un certificato non firmato da uno di questi provider affidabili CAs, solo allora proteggiamo la comunicazione utilizzando le impronte digitali impostate nella configurazione dell'IdP. AWS ricorreremo alla verifica dell'impronta digitale se non siamo in grado di recuperare il certificato TLS o se è richiesto TLS v1.3.

1. Aprire la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel pannello di navigazione, scegli **Identity providers** (Provider di identità). Scegli quindi il nome del provider di identità IAM che desideri aggiornare.

1. Scegli la scheda **Verifica dell'endpoint**, quindi nella sezione **Impronte digitali**, scegli **Gestisci**. Per immettere un nuovo valore di identificazione personale, scegli **Aggiungi identificazione personale**. Per rimuovere un'identificazione personale, scegli **Rimuovi** accanto all'elemento che desideri rimuovere.
**Nota**  
Un provider di identità OIDC IAM deve avere un numero di identificazioni personale compreso tra 1 e 5.

    Al termine, scegli **Salva modifiche**.

**Come aggiungere un destinatario per un provider di identità OIDC IAM (console)**

1. Nel pannello di navigazione, scegli **Provider di identità**, quindi scegli il nome del provider di identità IAM che desideri aggiornare.

1. Nella sezione **Destinatari**, scegli **Operazioni** e seleziona **Aggiungi destinatario**. 

1. Digita l'ID client dell'applicazione che hai registrato con l'IdP e in [Step 1](#idpoidcstep1) cui hai ricevuto le richieste. AWS Quindi scegli **Aggiungi destinatari**.
**Nota**  
Un provider di identità OIDC IAM deve avere un numero di audience compreso tra 1 e 100.

**Come rimuovere un destinatario da un provider di identità OIDC IAM (console)**

1. Nel pannello di navigazione, scegli **Provider di identità**, quindi scegli il nome del provider di identità IAM che desideri aggiornare.

1. Nella sezione **Destinatari**, seleziona il pulsante di opzione accanto al destinatario che desideri rimuovere, quindi seleziona **Operazioni**.

1.  Scegli **Rimuovi destinatario**. Viene visualizzata una nuova finestra.

1. Se rimuovi un destinatario, le identità a esso federate non possono assumere ruoli associati al destinatario. Nella finestra, leggi l'avviso e conferma di volere rimuovere il destinatario digitando la parola `remove` nel campo.

1. Scegli **Rimuovi** per rimuovere il destinatario.

**Come eliminare un provider di identità OIDC IAM (console)**

1. Aprire la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

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

1. Seleziona la casella di controllo accanto al provider di identità IAM che desideri eliminare. Viene visualizzata una nuova finestra.

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

## Creazione e gestione di un provider di identità OIDC IAM (AWS CLI)
<a name="manage-oidc-provider-cli"></a>

Puoi utilizzare i seguenti AWS CLI comandi per creare e gestire i provider di identità IAM OIDC.

**Come creare un provider di identità OIDC IAM (AWS CLI)**

1. (Facoltativo) Per ottenere un elenco di tutti i provider di identità OIDC IAM nell'account AWS , emetti il seguente comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-providers.html](https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-providers.html)

1. Per creare un nuovo provider di identità OIDC IAM, esegui il comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/create-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-open-id-connect-provider.html)

**Come aggiornare l'elenco di identificazioni personali del certificato del server per un provider di identità OIDC IAM esistente (AWS CLI)**
+ Per aggiornare l'elenco di identificazioni personali del certificato del server per un provider di identità OIDC IAM, esegui il comando:
  + [https://docs.aws.amazon.com/cli/latest/reference/iam/update-open-id-connect-provider-thumbprint.html](https://docs.aws.amazon.com/cli/latest/reference/iam/update-open-id-connect-provider-thumbprint.html)

**Come aggiungere i tag a un provider di identità OIDC IAM esistente (AWS CLI)**
+ Per aggiungere i tag a un provider di identità OIDC IAM esistente, esegui il comando:
  + [https://docs.aws.amazon.com/cli/latest/reference/iam/tag-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/tag-open-id-connect-provider.html)

**Come elencare i tag per un provider di identità OIDC IAM esistente (AWS CLI)**
+ Per elencare i tag per un provider di identità OIDC IAM esistente, esegui il comando:
  + [https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-provider-tags.html](https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-provider-tags.html)

**Come rimuovere i tag da un provider di identità OIDC IAM (AWS CLI)**
+ Per rimuovere i tag da un provider di identità OIDC IAM esistente, esegui il comando:
  + [https://docs.aws.amazon.com/cli/latest/reference/iam/untag-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/untag-open-id-connect-provider.html)

**Come aggiungere o rimuovere un ID client da un provider di identità OIDC IAM esistente (AWS CLI)**

1. (Facoltativo) Per ottenere un elenco di tutti i provider di identità OIDC IAM nell'account AWS , emetti il seguente comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-providers.html](https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-providers.html)

1. (Facoltativo) Per ottenere informazioni dettagliate su un provider di identità OIDC IAM, esegui il comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/get-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/get-open-id-connect-provider.html)

1. Per aggiungere un nuovo ID client a un provider di identità OIDC IAM esistente, esegui il comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/add-client-id-to-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/add-client-id-to-open-id-connect-provider.html)

1. Per rimuovere un client da un provider di identità OIDC IAM esistente, esegui il comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/remove-client-id-from-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/remove-client-id-from-open-id-connect-provider.html)

**Come eliminare un provider di identità OIDC IAM (AWS CLI)**

1. (Facoltativo) Per ottenere un elenco di tutti i provider di identità OIDC IAM nell'account AWS , emetti il seguente comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-providers.html](https://docs.aws.amazon.com/cli/latest/reference/iam/list-open-id-connect-providers.html)

1. (Facoltativo) Per ottenere informazioni dettagliate su un provider di identità OIDC IAM, esegui il comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/get-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/get-open-id-connect-provider.html)

1. Per eliminare un provider di identità OIDC IAM, esegui il comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/delete-open-id-connect-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-open-id-connect-provider.html)

## Creazione e gestione di un provider di identità (API) OIDC AWS
<a name="manage-oidc-provider-api"></a>

Puoi utilizzare i seguenti comandi dell'API IAM per creare e gestire provider OIDC.

**Per creare un provider di identità (API) IAM OIDC AWS**

1. (Facoltativo) Per ottenere un elenco di tutti i provider di identità OIDC IAM nell'account AWS , chiama la seguente operazione:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviders.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviders.html)

1. Per creare un nuovo provider di identità OIDC IAM, chiama la seguente operazione: 
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateOpenIDConnectProvider.html)

**Per aggiornare l'elenco delle impronte digitali dei certificati server per un provider di identità (API) IAM OIDC esistente AWS**
+ Per aggiornare l'elenco di identificazioni personali del certificato del server per un provider di identità OIDC IAM, chiama la seguente operazione:
  + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateOpenIDConnectProviderThumbprint.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateOpenIDConnectProviderThumbprint.html)

**Per etichettare un provider di identità (API) IAM OIDC esistente AWS**
+ Per aggiungere i tag a un provider di identità OIDC IAM, richiama la seguente operazione:
  + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_TagOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_TagOpenIDConnectProvider.html)

**Per elencare i tag per un provider di identità (API) IAM OIDC esistente AWS**
+ Per elencare i tag per un provider di identità OIDC IAM esistente, richiama la seguente operazione:
  + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviderTags.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviderTags.html)

**Per rimuovere i tag su un provider di identità (API) IAM OIDC esistente AWS**
+ Per rimuovere i tag da un provider di identità OIDC IAM esistente, richiama la seguente operazione:
  + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_UntagOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UntagOpenIDConnectProvider.html)

**Per aggiungere o rimuovere un ID client da un provider di identità (API) IAM OIDC esistente AWS**

1. (Facoltativo) Per ottenere un elenco di tutti i provider di identità OIDC IAM nell'account AWS , chiama la seguente operazione:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviders.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviders.html)

1. (Facoltativo) Per ottenere informazioni dettagliate su un provider di identità OIDC IAM, chiama la seguente operazione: 
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetOpenIDConnectProvider.html)

1. Per aggiungere un nuovo ID client a un provider di identità OIDC IAM esistente, chiama la seguente operazione: 
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_AddClientIDToOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AddClientIDToOpenIDConnectProvider.html)

1. Per rimuovere un ID client da un provider di identità OIDC IAM esistente, chiama la seguente operazione:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_RemoveClientIDFromOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_RemoveClientIDFromOpenIDConnectProvider.html)

**Per eliminare un provider di identità (API) IAM OIDC AWS**

1. (Facoltativo) Per ottenere un elenco di tutti i provider di identità OIDC IAM nell'account AWS , chiama la seguente operazione: 
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviders.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviders.html)

1. (Facoltativo) Per ottenere informazioni dettagliate su un provider di identità OIDC IAM, chiama la seguente operazione:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetOpenIDConnectProvider.html)

1. Per eliminare un provider di identità OIDC IAM, chiama la seguente operazione:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteOpenIDConnectProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteOpenIDConnectProvider.html)

# Ottenere l'impronta digitale per un provider di identità OpenID Connect
<a name="id_roles_providers_create_oidc_verify-thumbprint"></a>

Durante la [creazione di un provider di identità OpenID Connect (OIDC)](id_roles_providers_create_oidc.md) in IAM, è necessario fornire un'impronta digitale per l'autorità di certificazione (CA) intermedia che ha firmato il certificato utilizzato dal gestore dell'identità digitale esterno. L'identificazione personale è una firma per il certificato della CA che è stato utilizzato per emettere il certificato per il provider di identità compatibile con OIDC. Quando crei un provider di identità IAM OIDC, ti fidi delle identità autenticate da quell'IdP per avere accesso al tuo. Account AWS Utilizzando l'impronta digitale del certificato della CA, si considera attendibile qualsiasi certificato emesso dalla CA con lo stesso nome DNS di quello registrato. Questo elimina la necessità di aggiornare i trust in ogni account quando si rinnova il certificato di firma del provider di identità.

**Importante**  
Nella maggior parte dei casi, il server di federazione utilizza due certificati diversi:  
Il primo stabilisce una connessione HTTPS tra AWS e il tuo IdP. Questo dovrebbe essere emesso da un CA root pubblica nota, ad esempio AWS Certificate Manager. Ciò consente al cliente di verificare l'affidabilità e lo stato del certificato.
Il secondo è usato per crittografare i token e deve essere firmato da un CA *radice* privato o pubblico.

Puoi creare un provider di identità IAM OIDC con [gli AWS Command Line Interface strumenti per Windows PowerShell o l'](id_roles_providers_create_oidc.md#manage-oidc-provider-cli)API IAM. Quando si utilizzano questi metodi, è possibile fornire un'impronta digitale manualmente. Se scegli di non includere un'impronta digitale, IAM recupererà l'impronta della CA intermedia superiore del certificato server IdP OIDC. Se scegli di includere un'impronta digitale, sarà necessario ottenere l'impronta manualmente e fornirla ad AWS.

Quando crei un provider di identità OIDC IAM nella [console IAM](id_roles_providers_create_oidc.md), IAM prova a recuperare l'impronta digitale della CA intermedia del certificato server IdP OIDC per tuo conto. 

Consigliamo di ottenere manualmente anche l'impronta digitale dell'IdP OIDC e di verificare che IAM abbia recuperato l'impronta digitale corretta. Per ulteriori informazioni su come ottenere impronte digitali dei certificati, consulta le seguenti sezioni.

**Nota**  
AWS protegge la comunicazione con i provider di identità OIDC (IdPs) utilizzando la nostra libreria di autorità di certificazione root affidabili (CAs) per verificare il certificato TLS dell'endpoint JSON Web Key Set (JWKS). Se il tuo IdP OIDC si basa su un certificato non firmato da uno di questi provider affidabili CAs, solo allora proteggiamo la comunicazione utilizzando le impronte digitali impostate nella configurazione dell'IdP. AWS ricorreremo alla verifica dell'impronta digitale se non siamo in grado di recuperare il certificato TLS o se è richiesto TLS v1.3.

## Ottenere l'impronta digitale del certificato
<a name="oidc-obtain-thumbprint"></a>

Utilizzare un browser Web e lo strumento a riga di comando OpenSSL per ottenere l'impronta digitale per un provider OIDC. Tuttavia, non è necessario ottenere manualmente l'impronta digitale del certificato per creare un provider di identità OIDC IAM. Puoi utilizzare la procedura seguente per ottenere l'impronta digitale del certificato del provider OIDC.

**Per ottenere l'identificazione personale per un provider di identità OIDC**

1. Prima di poter ottenere l'identificazione personale per un provider di identità OIDC, è necessario ottenere lo strumento a riga di comando OpenSSL. È possibile utilizzare questo strumento per scaricare la catena di certificati del provider di identità OIDC e produrre un'identificazione personale del certificato finale nella catena di certificati. Se è necessario installare e configurare OpenSSL, seguire le istruzioni in [Installare OpenSSL](#oidc-install-openssl) e [Configurare OpenSSL](#oidc-configure-openssl).

1. Inizia con l'URL del provider di identità OIDC (ad esempio, `https://server.example.com`) e quindi aggiungi `/.well-known/openid-configuration` per formare l'URL per il documento di configurazione del provider di identità, nel modo seguente:

   **https://*server.example.com*/.well-known/openid-configuration**

   Apri questo URL in un browser web, sostituendolo *server.example.com* con il nome del tuo server IdP. 

1. <a name="thumbstep2"></a>Nel documento visualizzato, utilizza l'opzione **Trova** del browser Web per individuare il testo `"jwks_uri"`. Subito dopo il testo `"jwks_uri"` sono presenti due punti (:) seguiti da un URL. Copiare il nome di dominio completo dell'URL. Non includere il percorso `https://` o qualsiasi altro percorso dopo il dominio di primo livello. 

   ```
   {
    "issuer": "https://accounts.example.com",
    "authorization_endpoint": "https://accounts.example.com/o/oauth2/v2/auth",
    "device_authorization_endpoint": "https://oauth2.exampleapis.com/device/code",
    "token_endpoint": "https://oauth2.exampleapis.com/token",
    "userinfo_endpoint": "https://openidconnect.exampleapis.com/v1/userinfo",
    "revocation_endpoint": "https://oauth2.exampleapis.com/revoke",
    "jwks_uri": "https://www.exampleapis.com/oauth2/v3/certs",
   ...
   ```

1. Utilizzare lo strumento a riga di comando OpenSSL per eseguire il seguente comando. *keys.example.com*Sostituiscilo con il nome di dominio che hai ottenuto in[Step 3](#thumbstep2).

   ```
   openssl s_client -servername keys.example.com -showcerts -connect keys.example.com:443
   ```

1. Nella finestra di comando, scorrere verso l'alto fino a visualizzare un certificato simile al seguente esempio. Se viene visualizzato più di un certificato, individua l'ultimo certificato visualizzato (nella parte inferiore dell'output di comando). Contiene il certificato della migliore CA intermedia nella catena della certification authority.

   ```
   -----BEGIN CERTIFICATE-----
    MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMC
    VVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6
    b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAd
    BgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhcNMTEwNDI1MjA0NTIxWhcN
    MTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYD
    VQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25z
    b2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFt
    YXpvbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ
    21uUSfwfEvySWtC2XADZ4nB+BLYgVIk60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9T
    rDHudUZg3qX4waLG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswY6786m86gpE
    Ibb3OhjZnzcvQAaRHhdlQWIMm2nrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4
    nUhVVxYUntneD9+h8Mg9q6q+auNKyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0Fkb
    FFBjvSfpJIlJ00zbhNYS5f6GuoEDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTb
    NYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE=
    -----END CERTIFICATE-----
   ```

   Copiare il certificato (incluse le righe `-----BEGIN CERTIFICATE-----` e `-----END CERTIFICATE-----`) e incollarlo in un file di testo. Salvare quindi il file con il nome **certificate.crt**.
**Nota**  
La catena di certificati del provider di identità OIDC deve iniziare con l'URL del dominio o dell'emittente, includere eventuali certificati intermedi (se presenti) e terminare con il certificato root. Se l'ordine della catena di certificati è diverso o se include certificati duplicati o aggiuntivi, riceverai un errore di mancata corrispondenza della firma e STS non riuscirà a convalidare il JSON Web Token (JWT). Correggi l'ordine dei certificati nella catena restituita dal server per risolvere l'errore. Per ulteriori informazioni sugli standard della catena di certificati, consulta [certificate\$1list nella RFC 5246](https://www.rfc-editor.org/rfc/rfc5246#section-7.4.2) sul sito Web della serie RFC.

1. Utilizzare lo strumento a riga di comando OpenSSL per eseguire il seguente comando.

   ```
   openssl x509 -in certificate.crt -fingerprint -sha1 -noout
   ```

   La finestra di comando visualizza l'identificazione personale del certificato, simile a quella dell'esempio seguente:

   ```
   SHA1 Fingerprint=99:0F:41:93:97:2F:2B:EC:F1:2D:DE:DA:52:37:F9:C9:52:F2:0D:9E
   ```

   Rimuovere i due punti (:) da questa stringa per ottenere l'identificazione personale finale, come segue:

   ```
   990F4193972F2BECF12DDEDA5237F9C952F20D9E
   ```

1. Se stai creando il provider di identità IAM OIDC con Tools for Windows o l' AWS CLI API IAM PowerShell, fornire un'impronta personale è facoltativo. Se scegli di non includere un'impronta digitale durante la creazione, IAM recupererà l'impronta della CA intermedia superiore del certificato server IdP OIDC. Dopo aver creato il provider di identità OIDC IAM, potrai confrontare questa impronta digitale con quella recuperata da IAM.

   Se stai creando il provider di identità OIDC IAM nella console IAM, la console prova a recuperare l'impronta digitale della CA intermedia del certificato server IdP OIDC. Puoi confrontare questa impronta digitale con quella recuperata da IAM. Dopo aver creato il provider di identità OIDC IAM, puoi visualizzare l'impronta digitale del provider di identità OIDC IAM nella scheda **Verifica dell'endpoint** nella pagina **Riepilogo** della console del provider OIDC.
**Importante**  
Se l'impronta digitale ottenuta non corrisponde a quella riportata nei dettagli del provider di identità OIDC IAM, il provider OIDC non dovrebbe essere utilizzato. Sarà necessario invece eliminare il provider OIDC creato, quindi riprovare a creare il provider OIDC dopo un po' di tempo. Verifica che le impronte digitali corrispondano prima di utilizzare il provider. Se dopo un secondo tentativo non vi è comunque corrispondenza tra le identificazioni personali, accedere al [forum di IAM](https://forums.aws.amazon.com/forum.jspa?forumID=76) per contattare AWS.

## Installare OpenSSL
<a name="oidc-install-openssl"></a>

Se OpenSSL non è già installato, segui le istruzioni in questa sezione.

**Come installare OpenSSL su Linux e Unix**

1. Passa a [OpenSSL: Source, Tarballs](https://openssl.org/source/) (https://openssl.org/source/).

1. Scarica l'origine più recente e compila il pacchetto.

**Per installare OpenSSL in ambiente Windows**

1. Vai a [OpenSSL: Binary](https://wiki.openssl.org/index.php/Binaries) Distributions (https://wiki.openssl. org/index.php/Binaries) per un elenco di siti da cui è possibile installare la versione per Windows.

1. Segui le istruzioni sul sito selezionato per avviare l'installazione.

1. Se viene richiesto di installare **Microsoft Visual C\$1\$1 2008 Redistributables** e questo non è già installato sul tuo sistema, scegli il link di download appropriato per il tuo ambiente. Segui le istruzioni fornite dalla **Installazione guidata di Microsoft Visual C\$1\$1 2008 Redistributable**.
**Nota**  
Se non sei sicuro che Microsoft Visual C\$1\$1 2008 Redistributables sia già installato nel sistema, puoi provare a installare prima OpenSSL. Il programma di installazione di OpenSSL visualizza un avviso se Microsoft Visual C\$1\$1 2008 Redistributables non è ancora installato. Assicurati di installare l'architettura (32 bit o 64 bit) che corrisponde alla versione di OpenSSL installata.

1. Dopo aver installato Microsoft Visual C\$1\$1 2008 Redistributables, seleziona la versione appropriata dei file binari OpenSSL per l'ambiente e salva il file in locale. Avvia l'**Installazione guidata di OpenSSL**.

1. Segui le istruzioni descritte in **Installazione guidata di OpenSSL**.

## Configurare OpenSSL
<a name="oidc-configure-openssl"></a>

Prima di utilizzare i comandi OpenSSL, è necessario configurare il sistema operativo in modo che contenga le informazioni sulla posizione in cui è installato OpenSSL.

**Come configurare OpenSSL su Linux o Unix**

1. Alla riga di comando, imposta la variabile `OpenSSL_HOME` sulla posizione dell'installazione di OpenSSL:

   ```
   $ export OpenSSL_HOME=path_to_your_OpenSSL_installation
   ```

1. Configura il percorso in modo da includere l'installazione di OpenSSL:

   ```
   $ export PATH=$PATH:$OpenSSL_HOME/bin
   ```
**Nota**  
Eventuali modifiche apportate alle variabili di ambiente con il comando `export` sono valide solo per la sessione corrente. Puoi apportare modifiche permanenti alle variabili di ambiente impostandole nel file di configurazione della shell. Per ulteriori informazioni, consulta la documentazione relativa al sistema operativo in uso.

**Come configurare OpenSSL su Windows**

1. Apri una finestra del **prompt dei comandi**.

1. Configura la variabile `OpenSSL_HOME` sulla posizione dell'installazione di OpenSSL:

   ```
   C:\> set OpenSSL_HOME=path_to_your_OpenSSL_installation
   ```

1. Imposta la variabile `OpenSSL_CONF` sulla posizione del file di configurazione nell'installazione di OpenSSL:

   ```
   C:\> set OpenSSL_CONF=path_to_your_OpenSSL_installation\bin\openssl.cfg
   ```

1. Configura il percorso in modo da includere l'installazione di OpenSSL:

   ```
   C:\> set Path=%Path%;%OpenSSL_HOME%\bin
   ```
**Nota**  
Eventuali modifiche apportate alle variabili di ambiente Windows in una finestra del **prompt dei comandi** sono valide solo per la sessione della riga di comando corrente. È possibile apportare modifiche permanenti alle variabili di ambiente impostandole come proprietà di sistema. Le procedure esatte dipendono dalla versione di Windows in uso. (Ad esempio, su Windows 7, apri **Pannello di controllo**, **Sistema e sicurezza**, **Sistema**. Quindi scegli **Impostazioni di sistema avanzate**, scheda **Avanzate**, **Variabili di ambiente**.) Per ulteriori informazioni, consulta la documentazione di Windows.

# Controlli tramite provider di identità per i provider OIDC condivisi
<a name="id_roles_providers_oidc_secure-by-default"></a>

Per i provider di identità OpenID Connect (OIDC) condivisi riconosciuti, IAM richiede una valutazione esplicita di affermazioni specifiche nelle policy di trust dei ruoli. IdPs Queste attestazioni obbligatorie, chiamate *controlli del provider di identità*, vengono valutate da IAM durante la creazione dei ruoli e gli aggiornamenti delle policy di attendibilità. Se la policy di attendibilità dei ruoli non valuta i controlli richiesti dall’IdP OIDC condiviso, non sarà possibile creare o aggiornare ruoli. Questo garantisce che solo le identità autorizzate dell’organizzazione prevista possano assumere ruoli e accedere alle risorse AWS . Questo controllo di sicurezza è fondamentale quando i provider OIDC sono condivisi tra più clienti AWS .



I controlli dei provider di identità non verranno valutati da IAM per le policy di attendibilità dei ruoli OIDC esistenti. Per qualsiasi modifica alla policy di attendibilità dei ruoli per i ruoli OIDC esistenti, IAM richiederà che i controlli relativi ai provider di identità siano inclusi nella policy stessa.

## Tipi di provider OIDC
<a name="id_roles_providers_oidc_idp_types"></a>

IAM classifica i provider di identità OIDC in due tipi distinti: **privati** e **condivisi**. Un IdP OIDC privato può essere di proprietà e gestito da una singola organizzazione o può essere un tenant di un provider SaaS, con l’URL dell’emittente OIDC che funge da identificatore univoco specifico per tale organizzazione. Al contrario, un IdP OIDC condiviso viene impiegato da più organizzazioni e può avere lo stesso URL dell’emittente OIDC per tutte quelle che lo utilizzano.

La tabella seguente illustra le principali differenze tra i provider OIDC privati e condivisi:


| Caratteristica | Provider OIDC privato | Provider OIDC condiviso | 
| --- | --- | --- | 
|  Emittente  |  Univoco per l’organizzazione  |  Condiviso tra più organizzazioni  | 
|  Informazioni di tenancy  |  Comunicate tramite un emittente unico  |  Comunicate tramite attestazioni nei JWT  | 
|  Requisiti della policy di attendibilità  |  Non è richiesta la valutazione di un’attestazione specifica  |  È richiesta la valutazione di attestazioni specifiche  | 

## Provider di identità OIDC condivisi con controlli dei provider di identità
<a name="id_roles_providers_oidc_idp_shared_oidc_secure_support"></a>

Quando crei o modifichi un provider OIDC in IAM, il sistema identifica e valuta automaticamente le attestazioni richieste per i provider OIDC condivisi e riconosciuti. Se i controlli del provider di identità non sono configurati nella policy di fiducia dei ruoli, la creazione o l'aggiornamento del ruolo avrà esito negativo e verrà generato un errore. MalformedPolicyDocument 

La tabella seguente elenca i provider OIDC condivisi che richiedono i controlli del provider di identità nelle policy di attendibilità dei ruoli e informazioni aggiuntive per aiutarti a configurare i controlli del provider di identità.


| IdP OIDC | URL OIDC | Attestazione di tenancy | Attestazioni obbligatorie | 
| --- | --- | --- | --- | 
| [Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html) |  `cognito-identity.amazonaws.com`  | aud |  `cognito-identity.amazonaws.com:aud`  | 
| [Azure Sentinel](https://learn.microsoft.com/en-us/azure/defender-for-cloud/sentinel-connected-aws) |  https://sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d  |  sts:RoleSessionName  |  sts:RoleSessionName  | 
| [Buildkite](https://buildkite.com/docs/pipelines/security/oidc/aws) |  https://agent.buildkite.com  |  sub  |  agent.buildkite.com:sub  | 
| [Codefresh SaaS](https://codefresh.io/docs/docs/integrations/oidc-pipelines/) | https://oidc.codefresh.io | sub |  oidc.codefresh.io:sub  | 
| [DVC Studio](https://dvc.org/doc/studio/user-guide/openid-connect) | https://studio.datachain.ai/api | sub |  studio.datachain.ai/api:sub  | 
| [GitHub azioni](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services) | https://token.actions.githubusercontent.com | sub |  token.actions.githubusercontent.com:sub  | 
| [GitHub streaming dei registri di controllo](https://docs.github.com/en/enterprise-cloud@latest/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise) | https://oidc-configuration.audit-log.githubusercontent.com | sub |  oidc-configuration.audit-log.githubusercontent.com:sub  | 
| [GitHub vstoken](https://docs.github.com/en/actions/security-for-github-actions/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services) | https://vstoken.actions.githubusercontent.com | sub |  vstoken.actions.githubusercontent.com:sub  | 
| [GitLab](https://docs.gitlab.com/ci/cloud_services/aws/) | https://gitlab.com | sub |  gitlab.com:sub  | 
| [IBM Turbonomic SaaS\$1](https://www.ibm.com/docs/en/tarm/8.16.x?topic=turbonomic-setting-up-aws-iam-role-saas-deployments) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/id_roles_providers_oidc_secure-by-default.html)  | sub |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/id_roles_providers_oidc_secure-by-default.html)  | 
| [Pulumi Cloud](https://www.pulumi.com/docs/pulumi-cloud/deployments/oidc/aws/) | https://api.pulumi.com/oidc | aud |  api.pulumi.com/oidc:aud  | 
| [sandboxes.cloud](https://docs.sandboxes.cloud/docs/cloud-resources-setup) | https://sandboxes.cloud | aud |  sandboxes.cloud:aud  | 
| [Scalr](https://docs.scalr.io/docs/aws) | https://scalr.io | sub |  scalr.io:sub  | 
| [Shisho Cloud](https://shisho.dev/docs/g/getting-started/integrate-apps/aws/) | https://tokens.cloud.shisho.dev | sub |  tokens.cloud.shisho.dev:sub  | 
| [Terraform Cloud](https://developer.hashicorp.com/terraform/cloud-docs/workspaces/dynamic-provider-credentials/aws-configuration) | https://app.terraform.io | sub |  app.terraform.io:sub  | 
| [Upbound](https://docs.upbound.io/providers/provider-aws/authentication/) | https://proidc.upbound.io | sub |  proidc.upbound.io:sub  | 
| [Endpoint globale Vercel](https://vercel.com/docs/oidc/reference) | https://oidc.vercel.com | aud |  oidc.vercel.com:aud  | 

\$1 IBM Turbonomic aggiorna periodicamente l’URL dell’emittente OIDC con nuove versioni della piattaforma. Se necessario, aggiungeremo altri emittenti OIDC Turbonomic come provider condiviso.

Per ogni nuovo OIDC IdPs che IAM identifica come condiviso, i controlli richiesti dai provider di identità per le politiche di fiducia dei ruoli verranno documentati e applicati in modo simile.

## Risorse aggiuntive
<a name="concept_additional_resources"></a>

Risorse aggiuntive:
+ Per ulteriori informazioni sulla creazione di un ruolo IAM per la federazione OIDC, consulta [Creare un ruolo per la federazione OpenID Connect (console)](id_roles_create_for-idp_oidc.md).
+ Per un elenco delle chiavi di condizione IAM che possono essere utilizzate per le attestazioni, consulta [Chiavi disponibili per la federazione AWS OIDC](reference_policies_iam-condition-keys.md#condition-keys-wif).

# Federazione SAML 2.0
<a name="id_roles_providers_saml"></a>

AWS supporta la federazione delle identità con [SAML 2.0 (Security Assertion Markup Language 2.0)](https://wiki.oasis-open.org/security), uno standard aperto utilizzato da molti provider di identità (IdPs). Questa funzionalità abilita il single sign-on (SSO) federato, in modo che gli utenti possano accedere Console di gestione AWS o chiamare le operazioni AWS API senza che tu debba creare un utente IAM per tutti i membri dell'organizzazione. [Utilizzando SAML, puoi semplificare il processo di configurazione della federazione AWS, poiché puoi utilizzare il servizio dell'IdP invece di scrivere un codice proxy di identità personalizzato.](https://docs.aws.amazon.com/STS/latest/UsingSTS/CreatingFedTokens.html)

**Nota**  
La federazione delle identità IAM SAML supporta le risposte SAML crittografate dei provider di identità federati basati su SAML (). IdPs 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](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-SAML-signing-encryption.html). Sebbene questa funzionalità non si estenda direttamente ai pool di identità, i pool di utenti possono riguardare i pool di identità. IdPs 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.

La federazione IAM supporta i casi d'uso indicati di seguito. 
+ [**Accesso federato per consentire a un utente o a un'applicazione dell'organizzazione di chiamare le operazioni AWS API**](#CreatingSAML-configuring). Questo caso d'uso è discusso nella sezione seguente. viene utilizzata un'asserzione SAML (come parte della risposta di autenticazione) generata nell'organizzazione per ottenere credenziali di sicurezza temporanee. Questo scenario è analogo ad altri scenari di federazione supportati da IAM, come descritto in [Richiedere credenziali di sicurezza temporanee](id_credentials_temp_request.md) e [Federazione OIDC](id_roles_providers_oidc.md). Tuttavia, la soluzione basata su SAML 2.0 dell'organizzazione gestisce molti dettagli IdPs in fase di esecuzione per eseguire il controllo dell'autenticazione e delle autorizzazioni.
+ [**Single Sign-On (SSO) basato sul Web**](id_roles_providers_enable-console-saml.md) da e verso l'organizzazione. Console di gestione AWS Gli utenti possono accedere a un portale dell'organizzazione ospitato da un IdP compatibile con SAML 2.0, selezionare un'opzione a cui accedere ed essere reindirizzati AWS alla console senza dover fornire ulteriori informazioni di accesso. Puoi utilizzare un IdP SAML di terze parti per stabilire l'accesso SSO alla console o creare un IdP personalizzato per consentire l'accesso alla console per utenti esterni. Per ulteriori informazioni sulla creazione di un provider di identità personalizzato, consulta [Abilita l'accesso personalizzato del broker di identità alla AWS console](id_roles_providers_enable-console-custom-url.md).

**Topics**
+ [Utilizzo della federazione basata su SAML per l'accesso tramite API a AWS](#CreatingSAML-configuring)
+ [Panoramica della configurazione della federazione basata su SAML 2.0](#CreatingSAML-configuring-IdP)
+ [Panoramica del ruolo per consentire l'accesso federato SAML alle tue risorse AWS](#CreatingSAML-configuring-role)
+ [Identificazione univoca degli utenti nella federazione basata su SAML](#CreatingSAML-userid)
+ [Creare un provider di identità SAML in IAM](id_roles_providers_create_saml.md)
+ [Configurare il provider di identità SAML 2.0 con una relazione di attendibilità della parte affidabile e aggiunta di attestazioni](id_roles_providers_create_saml_relying-party.md)
+ [Integra fornitori di soluzioni SAML di terze parti con AWS](id_roles_providers_saml_3rd-party.md)
+ [Configurare le asserzioni SAML per la risposta di autenticazione](id_roles_providers_create_saml_assertions.md)
+ [Consentire ai principali federati SAML 2.0 di accedere a Console di gestione AWS](id_roles_providers_enable-console-saml.md)
+ [Visualizzare una risposta SAML nel browser](troubleshoot_saml_view-saml-response.md)

## Utilizzo della federazione basata su SAML per l'accesso tramite API a AWS
<a name="CreatingSAML-configuring"></a>

Supponi di voler fornire ai dipendenti un modo per copiare i dati dai loro computer a una cartella di backup. È possibile creare un'applicazione che gli utenti possono eseguire sui propri computer. Sul backend, l'applicazione legge e scrive oggetti in un bucket Amazon S3. Gli utenti non hanno accesso diretto a. AWS viene utilizzato invece il seguente processo:

![\[Ottenere le credenziali di sicurezza temporanee basate su un'asserzione SAML\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/images/saml-based-federation-diagram.png)


1. Un utente dell'organizzazione utilizza un'app client per richiedere l'autenticazione dal provider di identità della propria organizzazione.

1. Il provider di identità autentica l'utente rispetto all'archivio identità organizzazione.

1. Il provider di identità crea un'asserzione SAML con informazioni sull'utente e invia l'asserzione all'app client. Quando abiliti la crittografia SAML per il tuo IdP IAM SAML, questa asserzione viene crittografata dal tuo IdP esterno.

1. L'app client chiama l' AWS STS [https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html)API, passando l'ARN del provider SAML, l'ARN del ruolo da assumere e l'asserzione SAML di IdP. Se la crittografia è abilitata, l'asserzione trasmessa tramite l'app client rimane crittografata durante il transito.

1. (Facoltativo) AWS STS utilizza la chiave privata che hai caricato dal tuo IdP esterno per decrittografare l'asserzione SAML crittografata.

1. La risposta dell'API all'app client include credenziali di sicurezza temporanee.

1. L'app client utilizza le credenziali di sicurezza temporanee per chiamare le operazioni dell'API di Amazon S3. 

## Panoramica della configurazione della federazione basata su SAML 2.0
<a name="CreatingSAML-configuring-IdP"></a>

Prima di poter utilizzare la federazione basata su SAML 2.0 come descritto nello scenario e nel diagramma precedenti, devi configurare l'IdP dell'organizzazione e il tuo in modo che si fidino l'uno dell'altro. Account AWS Di seguito è descritta la procedura generale per la configurazione di questo tipo di attendibilità. All'interno dell'organizzazione, è necessario disporre di un [provider di identità che supporti SAML 2.0](id_roles_providers_saml_3rd-party.md), come Microsoft Active Directory Federation Service (ADFS, parte di Windows Server), Shibboleth o di un altro provider compatibile con SAML 2.0. 

**Nota**  
Per migliorare la resilienza della federazione, ti consigliamo di configurare l'IdP e la federazione AWS per supportare più endpoint di accesso SAML. Per i dettagli, consulta l'articolo del AWS Security Blog [Come utilizzare gli endpoint SAML regionali per il failover](https://aws.amazon.com/blogs//security/how-to-use-regional-saml-endpoints-for-failover).

**Configura l'IdP della tua organizzazione e fidati AWS l'uno dell'altro**

1. Registrati AWS come fornitore di servizi (SP) con l'IdP della tua organizzazione. Utilizzo del documento dei metadati SAML generato da `https://region-code.signin.aws.amazon.com/static/saml-metadata.xml` 

   Per un elenco dei *region-code* valori possibili, consulta la colonna **Regione** negli endpoint di [AWS accesso](https://docs.aws.amazon.com/general/latest/gr/signin-service.html).

   Se lo desideri, puoi utilizzare il documento dei metadati SAML generati da `https://signin.aws.amazon.com/static/saml-metadata.xml` .

1. <a name="createxml"></a>Utilizzando il provider di identità dell’organizzazione, genera un file XML di metadati SAML equivalenti che possono descrivere l’IdP come provider di identità IAM in AWS. Deve includere il nome dell'emittente, una data di creazione, una data di scadenza e le chiavi che AWS possono essere utilizzate per convalidare le risposte di autenticazione (asserzioni) dell'organizzazione. 

   Se consenti l'invio di asserzioni SAML crittografate dal tuo IdP esterno, devi generare un file di chiave privata utilizzando l'IdP della tua organizzazione e caricare questo file nella configurazione IAM SAML in formato file.pem. AWS STS necessita di questa chiave privata per decrittografare le risposte SAML che corrispondono alla chiave pubblica caricata sul tuo IdP.
**Nota**  
Come definito dal [profilo di interoperabilità dei metadati SAML V2.0 versione 1.0](https://docs.oasis-open.org/security/saml/Post2.0/sstc-metadata-iop-os.html), 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.

1. <a name="samlovrcreateentity"></a>Nella console IAM, crea un'entità provider di identità SAML. Come parte di questo processo, è possibile caricare il documento dei metadati SAML e la chiave di decrittografia privata prodotto dal provider di identità nell'organizzazione in [Step 2](#createxml). Per ulteriori informazioni, consulta [Creare un provider di identità SAML in IAM](id_roles_providers_create_saml.md).

1. <a name="samlovrcreaterole"></a>In IAM, vengono creati uno o più ruoli IAM. Nella politica di fiducia del ruolo, imposti il provider SAML come principale, che stabilisce una relazione di fiducia tra la tua organizzazione e. AWS La policy di autorizzazione del ruolo stabilisce le operazioni che gli utenti dell'organizzazione possono effettuare in AWS. Per ulteriori informazioni, consulta [Creazione di un ruolo per un provider di identità di terze parti](id_roles_create_for-idp.md).
**Nota**  
SAML IDPs utilizzato in una politica di fiducia per i ruoli deve trovarsi nello stesso account in cui si trova il ruolo.

1. Nel provider di identità dell'organizzazione, si definiscono asserzioni che associano utenti o gruppi dell'organizzazione ai ruoli IAM. Nota che i diversi utenti e gruppi dell'organizzazione potrebbero essere mappati a diversi ruoli IAM. La procedura per eseguire la mappatura dipende dal provider di identità che si sta utilizzando. Nello [scenario precedente](#CreatingSAML-configuring) che utilizza una cartella Amazon S3 per gli utenti, è possibile che tutti gli utenti dispongano della mappatura allo stesso ruolo che fornisce le autorizzazioni Amazon S3. Per ulteriori informazioni, consulta [Configurare le asserzioni SAML per la risposta di autenticazione](id_roles_providers_create_saml_assertions.md).

   Se il tuo IdP abilita l'SSO AWS sulla console, puoi configurare la durata massima delle sessioni della console. Per ulteriori informazioni, consulta [Consentire ai principali federati SAML 2.0 di accedere a Console di gestione AWS](id_roles_providers_enable-console-saml.md).

1. Nell'applicazione che stai creando, chiami l' AWS Security Token Service `AssumeRoleWithSAML`API, passandole l'ARN del provider SAML in cui hai creato, [Step 3](#samlovrcreateentity) l'ARN del ruolo da assumere in cui hai creato e l'asserzione SAML sull'utente corrente che ricevi dal tuo IdP. [Step 4](#samlovrcreaterole) AWS si assicura che la richiesta di assunzione del ruolo provenga dall'IdP a cui si fa riferimento nel provider SAML. 

   *Per ulteriori informazioni, consulta [AssumeRoleWithSAML](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) nell'API Reference.AWS Security Token Service * 

1. Se la richiesta ha esito positivo, l'API restituisce una serie di credenziali di sicurezza temporanee, che l'applicazione può utilizzare per inviare richieste firmate ad AWS. L'applicazione contiene informazioni sull'utente corrente e può accedere a cartelle specifiche dell'utente in Amazon S3, come descritto nello scenario precedente. 

## Panoramica del ruolo per consentire l'accesso federato SAML alle tue risorse AWS
<a name="CreatingSAML-configuring-role"></a>

I ruoli creati in IAM definiscono ciò che i principali federati SAML dell’organizzazione possono fare in AWS. Quando si creano policy di affidabilità per il ruolo, è necessario specificare il provider SAML creato in precedenza come `Principal`. È inoltre possibile estendere la policy di affidabilità con un elemento `Condition` per permettere solo agli utenti che corrispondono ad alcuni attributi SAML di accedere al ruolo. Ad esempio, è possibile specificare che solo gli utenti con l'affiliazione SAML `staff` (come affermato da https://openidp.feide.no) possono accedere al ruolo, come illustrato dalla seguente policy di esempio:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [{
    "Effect": "Allow",
    "Principal": {"Federated": "arn:aws:iam::111122223333:saml-provider/ExampleOrgSSOProvider"},
    "Action": "sts:AssumeRoleWithSAML",
    "Condition": {
      "StringEquals": {
        "saml:aud": "https://us-east-1.signin.aws.amazon.com/saml",
        "saml:iss": "https://openidp.feide.no"
      },
      "ForAllValues:StringLike": {"saml:edupersonaffiliation": ["staff"]}
    }
  }]
}
```

------

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Federated": "arn:aws-cn:iam::111122223333:saml-provider/ExampleOrgSSOProvider"
            },
            "Action": "sts:AssumeRoleWithSAML",
            "Condition": {
                "StringEquals": {
                    "saml:aud": "https://ap-east-1.signin.amazonaws.cn/saml",
                    "saml:iss": "https://openidp.feide.no"
                },
                "ForAllValues:StringLike": {
                    "saml:edupersonaffiliation": [
                        "staff"
                    ]
                }
            }
        }
    ]
}
```

------

**Nota**  
SAML IDPs utilizzato in una politica di fiducia dei ruoli deve trovarsi nello stesso account in cui si trova il ruolo.

La chiave di contesto `saml:aud` nella policy specifica l’URL visualizzato dal browser quando si accede alla console. L’URL dell’endpoint di accesso deve corrispondere all’attributo destinatario del provider di identità. Puoi includere l'accesso URLs all'interno di aree geografiche particolari. AWS consiglia di utilizzare gli endpoint regionali anziché l'endpoint globale per migliorare la resilienza della federazione. Se hai configurato un solo endpoint, non potrai effettuare la federazione in AWS nell’improbabile caso in cui l’endpoint diventi non disponibile. [Per un elenco dei *region-code* valori possibili, consulta la colonna **Regione** negli AWS endpoint di accesso.](https://docs.aws.amazon.com/general/latest/gr/signin-service.html)

L’esempio seguente mostra il formato di URL di accesso con il `region-code` facoltativo.

`https://region-code.signin.aws.amazon.com/saml`

Se è richiesta la crittografia SAML, l’URL di accesso deve includere l’identificatore univoco che AWS assegna al provider SAML, che puoi trovare nella pagina dei dettagli del provider di identità. Nell’esempio seguente, l’URL di accesso include l’identificatore univoco dell’IdP, per cui è necessario aggiungere /acs/ al percorso di accesso.

`https://region-code.signin.aws.amazon.com/saml/acs/IdP-ID`

Per la policy di autorizzazione nel ruolo, è necessario specificare le autorizzazioni come per qualsiasi ruolo. **Ad esempio, se gli utenti della tua organizzazione sono autorizzati ad amministrare istanze di Amazon Elastic Compute Cloud, devi consentire esplicitamente le azioni di Amazon EC2 nella politica delle autorizzazioni, come quelle nella policy gestita di Amazon. EC2 FullAccess** 

Per ulteriori informazioni sulle chiavi SAML che è possibile verificare in una policy, consulta [Chiavi disponibili per la federazione basata su SAML AWS STS](reference_policies_iam-condition-keys.md#condition-keys-saml).

## Identificazione univoca degli utenti nella federazione basata su SAML
<a name="CreatingSAML-userid"></a>

Quando si creano policy di accesso in IAM, spesso è utile poter specificare le autorizzazioni in base all'identità degli utenti. Ad esempio, per gli utenti che sono stati federati tramite SAML, un'applicazione potrebbe voler mantenere le informazioni in Amazon S3 utilizzando una struttura come questa: 

```
amzn-s3-demo-bucket/app1/user1
amzn-s3-demo-bucket/app1/user2
amzn-s3-demo-bucket/app1/user3
```

Puoi creare il bucket (`amzn-s3-demo-bucket`) e la cartella (`app1`) tramite la console Amazon S3 o AWS CLI il, poiché si tratta di valori statici. Tuttavia, le cartelle specifiche dell'utente (*user1*,, *user2**user3*, ecc.) devono essere create in fase di esecuzione utilizzando il codice, poiché il valore che identifica l'utente non è noto fino alla prima volta che l'utente accede tramite il processo di federazione. 

Per scrivere policy che fanno riferimento ai dettagli specifici dell'utente come parte di un nome di risorsa, l'identità dell'utente deve essere disponibile nelle chiavi SAML che possono essere utilizzate nelle condizioni di policy. Le seguenti chiavi sono disponibili per la federazione basata su SAML 2.0 da utilizzare nelle policy IAM. È possibile utilizzare i valori restituiti dalle chiavi seguenti per creare identificativi utente univoci per risorse come le cartelle Amazon S3. 
+ `saml:namequalifier`. Un valore hash basato sulla concatenazione del valore della risposta `Issuer` (`saml:iss`) e una stringa con l'ID account `AWS` e il nome descrittivo (l'ultima parte dell'ARN) del provider SAML in IAM. La concatenazione dell'ID account e del nome descrittivo del provider SAML è disponibile per le policy IAM sotto forma di chiave `saml:doc`. L'ID account e il nome del provider devono essere separati da una barra "/" come in "123456789012/provider\$1name". Per ulteriori informazioni, consulta la chiave `saml:doc` in [Chiavi disponibili per la federazione basata su SAML AWS STS](reference_policies_iam-condition-keys.md#condition-keys-saml).

  La combinazione di `NameQualifier` e `Subject` può essere utilizzata per identificare in modo univoco un principale federato SAML. Il seguente pseudocodice mostra come viene calcolato questo valore. In questo pseudocodice `+` indica la concatenazione, `SHA1` rappresenta una funzione che produce un digest del messaggio utilizzando SHA-1 e `Base64` rappresenta una funzione che genera una versione con codificazione Base-64 dell'output hash.

   `Base64 ( SHA1 ( "https://example.com/saml" + "123456789012" + "/MySAMLIdP" ) )` 

   Per ulteriori informazioni sulle chiavi di policy disponibili quando si utilizza la federazione basata su SAML, consulta [Chiavi disponibili per la federazione basata su SAML AWS STS](reference_policies_iam-condition-keys.md#condition-keys-saml).
+ `saml:sub` (Stringa). Questo è l'oggetto della richiesta, che include un valore che identifica in modo univoco un singolo utente in un'organizzazione (ad esempio, `_cbb88bf52c2510eabe00c1642d4643f41430fe25e3`). 
+ `saml:sub_type` (Stringa). Questa chiave può essere `persistent`, `transient` o l'URI `Format` completo degli elementi `Subject` e `NameID` utilizzati nell'asserzione SAML. Il valore `persistent` indica che il valore in `saml:sub` è lo stesso per un utente in tutte le sessioni. Se il valore è `transient`, l'utente dispone di un valore `saml:sub` diverso per ogni sessione. Per ulteriori informazioni sull'attributo `Format` dell'elemento `NameID`, consulta [Configurare le asserzioni SAML per la risposta di autenticazione](id_roles_providers_create_saml_assertions.md). 

L'esempio seguente mostra una policy di autorizzazione che utilizza le chiavi precedenti per concedere le autorizzazioni a una cartella specifica per utente in Amazon S3. La policy presuppone che gli oggetti Amazon S3 vengano identificati utilizzando un prefisso che include sia `saml:namequalifier` che `saml:sub`. Si noti che l'elemento `Condition` include un test per assicurarsi che `saml:sub_type` sia impostato su `persistent`. Se è impostato su `transient`, il valore `saml:sub` per l'utente può essere diverso per ogni sessione e la combinazione di valori non deve essere utilizzata per identificare le cartelle specifiche dell'utente. 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "s3:GetObject",
      "s3:PutObject",
      "s3:DeleteObject"
    ],
    "Resource": [
      "arn:aws:s3:::amzn-s3-demo-bucket-org-data/backup/${saml:namequalifier}/${saml:sub}",
      "arn:aws:s3:::amzn-s3-demo-bucket-org-data/backup/${saml:namequalifier}/${saml:sub}/*"
    ],
    "Condition": {"StringEquals": {"saml:sub_type": "persistent"}}
  }
}
```

------

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "s3:GetObject",
      "s3:PutObject",
      "s3:DeleteObject"
    ],
    "Resource": [
      "arn:aws-cn:s3:::amzn-s3-demo-bucket-org-data/backup/${saml:namequalifier}/${saml:sub}",
      "arn:aws-cn:s3:::amzn-s3-demo-bucket-org-data/backup/${saml:namequalifier}/${saml:sub}/*"
    ],
    "Condition": {"StringEquals": {"saml:sub_type": "persistent"}}
  }
}
```

------

Per ulteriori informazioni sulle asserzioni di mappatura dal provider di identità alle chiavi di policy, consulta [Configurare le asserzioni SAML per la risposta di autenticazione](id_roles_providers_create_saml_assertions.md). 

# Creare un provider di identità SAML in IAM
<a name="id_roles_providers_create_saml"></a>

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)](https://wiki.oasis-open.org/security). Utilizzi un provider di identità IAM quando desideri stabilire un rapporto di fiducia tra un IdP compatibile con SAML come Shibboleth o Active Directory Federation Services e consentire agli utenti di accedere alle AWS 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](id_roles_providers_saml.md).

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

Una volta creato un provider SAML, dovrai creare uno o più ruoli IAM. Un ruolo è un'identità AWS che non ha le proprie credenziali (come invece fa 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 politiche assegnate al ruolo determinano le operazioni consentite agli utenti. AWS Per creare un ruolo per una federazione SAML consultare [Creazione di un ruolo per un provider di identità di terze parti](id_roles_create_for-idp.md). 

Infine, dopo aver creato il ruolo, completi il trust SAML configurando il tuo IdP con le informazioni AWS e i ruoli che desideri vengano utilizzati dai tuoi presidi 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](id_roles_providers_create_saml_relying-party.md). 

**Topics**
+ [Prerequisiti](#idp-manage-identityprovider-prerequisites)
+ [Creare e gestire un provider di identità SAML IAM (console)](#idp-manage-identityprovider-console)
+ [Gestire le chiavi di crittografia SAML](#id_federation_manage-saml-encryption)
+ [Creare e gestire un provider di identità SAML IAM (AWS CLI)](#idp-create-identityprovider-CLI)
+ [Crea e gestisci un provider di identità IAM SAML (API)AWS](#idp-create-identityprovider-API)
+ [Fasi successive](#id_roles_create-for-saml-next-steps)

## Prerequisiti
<a name="idp-manage-identityprovider-prerequisites"></a>

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\$1\$1.  
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](https://docs.oasis-open.org/security/saml/Post2.0/sstc-metadata-iop-os.html), IAM non valuta né interviene in merito alla scadenza dei certificati X.509 nei documenti dei metadati SAML. Se hai dubbi in merito a 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](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-SAML-signing-encryption.html). Sebbene questa funzionalità non si estenda direttamente ai pool di identità, i pool di utenti possono riguardare i pool IdPs 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 file disponibili con cui IdPs lavorare AWS, incluso come generare il documento di metadati SAML richiesto, consulta. [Integra fornitori di soluzioni SAML di terze parti con AWS](id_roles_providers_saml_3rd-party.md)

Per assistenza sulla federazione SAML, consulta [Risoluzione dei problemi della federazione SAML](troubleshoot_saml.md).

## Creare e gestire un provider di identità SAML IAM (console)
<a name="idp-manage-identityprovider-console"></a>

Puoi utilizzare il Console di gestione AWS per creare, aggiornare ed eliminare i provider di identità IAM SAML. Per assistenza sulla federazione SAML, consulta [Risoluzione dei problemi della federazione SAML](troubleshoot_saml.md).

**Come creare un provider di identità SAML IAM (console)**

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

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

1. Per **Configura provider**, scegli **SAML**. 

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

1. In **Documento metadati**, fai clic su **Scegli file** e specifica il documento di metadati SAML scaricato in [Prerequisiti](#idp-manage-identityprovider-prerequisites).
**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 dubbi in merito a 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.

1. (Facoltativo) Per la **Crittografia SAML**, seleziona **Scegli file** e seleziona il file della chiave privata creato in [Prerequisiti](#idp-manage-identityprovider-prerequisites). Scegli **Richiedi crittografia** per accettare solo le richieste crittografate dal tuo IdP.

1. (Facoltativo) Per **Aggiungi tag**, puoi aggiungere coppie chiave-valore per aiutarti a identificare e organizzare le tue. IdPs È 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](id_tags_saml.md).

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

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

1. Assegna un ruolo IAM al tuo provider di identità. Questo ruolo fornisce alle identità degli utenti esterni gestite dal tuo provider di identità le autorizzazioni per accedere alle AWS risorse del tuo 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](id_roles_create_for-idp.md).
**Nota**  
SAML IDPs utilizzato in una politica di fiducia dei ruoli deve trovarsi nello stesso account in cui si trova il ruolo.

**Per eliminare un provider SAML (console)**

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

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

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

1. Scegli **Elimina**. Viene visualizzata una nuova finestra.

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

## Gestire le chiavi di crittografia SAML
<a name="id_federation_manage-saml-encryption"></a>

Puoi configurare i provider SAML IAM per ricevere asserzioni crittografate nella risposta SAML dal tuo IdP esterno. Gli utenti possono assumere un ruolo nelle AWS asserzioni SAML crittografate chiamando. `[sts:AssumeRoleWithSAML](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html)`

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](#id_roles_providers_create_saml). Per assistenza sulla federazione SAML, consulta [Risoluzione dei problemi della federazione SAML](troubleshoot_saml.md).

### Ruotare la chiave di crittografia SAML
<a name="id_federation_manage-saml-keys-rotate"></a>

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 Console di gestione AWS e apri la console IAM all'indirizzo. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

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

1. Scegli la scheda **Crittografia SAML** e seleziona **Aggiungi nuova chiave**.

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

1. 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)
<a name="idp-create-identityprovider-CLI"></a>

Puoi utilizzare il AWS CLI per creare, aggiornare ed eliminare i provider SAML. Per assistenza sulla federazione SAML, consulta [Risoluzione dei problemi della federazione SAML](troubleshoot_saml.md).

**Come creare un provider di identità IAM e caricare un documento di metadati (AWS CLI)**
+ Eseguire il comando: [https://docs.aws.amazon.com/cli/latest/reference/iam/create-saml-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/create-saml-provider.html) 

**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](#id_federation_manage-saml-encryption).
+ Eseguire il comando: [https://docs.aws.amazon.com/cli/latest/reference/iam/update-saml-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/update-saml-provider.html) 

**Come aggiungere i tag a un provider di identità IAM esistente (AWS CLI)**
+ Eseguire il comando: [https://docs.aws.amazon.com/cli/latest/reference/iam/tag-saml-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/tag-saml-provider.html) 

**Come elencare i tag per il provider di identità IAM esistente (AWS CLI)**
+ Eseguire il comando: [https://docs.aws.amazon.com/cli/latest/reference/iam/list-saml-provider-tags.html](https://docs.aws.amazon.com/cli/latest/reference/iam/list-saml-provider-tags.html) 

**Come rimuovere i tag da un provider di identità IAM esistente (AWS CLI)**
+ Eseguire il comando: [https://docs.aws.amazon.com/cli/latest/reference/iam/untag-saml-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/untag-saml-provider.html) 

**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:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/list-saml-providers.html](https://docs.aws.amazon.com/cli/latest/reference/iam/list-saml-providers.html)

1. (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:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/get-saml-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/get-saml-provider.html)

1. Per eliminare un provider di identità IAM, esegui il comando:
   + [https://docs.aws.amazon.com/cli/latest/reference/iam/delete-saml-provider.html](https://docs.aws.amazon.com/cli/latest/reference/iam/delete-saml-provider.html)

## Crea e gestisci un provider di identità IAM SAML (API)AWS
<a name="idp-create-identityprovider-API"></a>

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

**Per creare un provider di identità IAM e caricare un documento di metadati (API)AWS**
+ Richiamare l'operazione: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateSAMLProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateSAMLProvider.html)

**Per aggiornare un provider di identità IAM SAML (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](#id_federation_manage-saml-encryption).
+ Richiamare l'operazione: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateSAMLProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateSAMLProvider.html)

**Per etichettare un provider di identità IAM (AWS API) esistente**
+ Richiamare l'operazione: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_TagSAMLProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_TagSAMLProvider.html)

**Per elencare i tag per un provider di identità IAM (AWS API) esistente**
+ Richiamare l'operazione: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListSAMLProviderTags.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListSAMLProviderTags.html)

**Per rimuovere i tag su un provider di identità IAM (AWS API) esistente**
+ Richiamare l'operazione: [https://docs.aws.amazon.com/IAM/latest/APIReference/API_UntagSAMLProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UntagSAMLProvider.html)

**Per eliminare un provider di identità IAM (AWS API)**

1. (Facoltativo) Per elencare le informazioni per tutti IdPs, come l'ARN, la data di creazione e la scadenza, chiamate la seguente operazione:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListSAMLProviders.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListSAMLProviders.html)

1. (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:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetSAMLProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetSAMLProvider.html)

1. Per eliminare un IdP, richiamare la seguente operazione:
   + [https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteSAMLProvider.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteSAMLProvider.html)

## Fasi successive
<a name="id_roles_create-for-saml-next-steps"></a>

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.
+ Devi informare l'IdP in AWS qualità di fornitore di servizi. Questa relazione è nota come relazione di attendibilità tra il provider di identità e AWS. L'esatto processo per aggiungere una relazione di trust dipende dall'IdP utilizzato. Per informazioni dettagliate, vedi [Configurare il provider di identità SAML 2.0 con una relazione di attendibilità della parte affidabile e aggiunta di attestazioni](id_roles_providers_create_saml_relying-party.md).
+ Quando l'IdP invia la risposta contenente le attestazioni a AWS, molte delle attestazioni in entrata vengono mappate alle AWS chiavi di contesto. Puoi utilizzare queste chiavi di contesto nelle policy IAM utilizzando l'elemento Condition per controllare l'accesso a un ruolo. Per maggiori dettagli, consultare [Configurare le asserzioni SAML per la risposta di autenticazione](id_roles_providers_create_saml_assertions.md).

# Configurare il provider di identità SAML 2.0 con una relazione di attendibilità della parte affidabile e aggiunta di attestazioni
<a name="id_roles_providers_create_saml_relying-party"></a>

Quando crei un provider di identità IAM e un ruolo per l'accesso SAML, indichi ad AWS il provider di identità (IdP) esterno e le operazioni che i rispettivi utenti sono autorizzati a effettuare. Il passaggio successivo consiste nell'informare l'IdP in AWS qualità di fornitore di servizi. Questa relazione è nota come *relazione di trust* tra il provider di identità e AWS. L'esatto processo per aggiungere una relazione di trust dipende dall'IdP utilizzato. Per ulteriori informazioni, consulta la documentazione relativa al tuo software di gestione delle identità. 

Molti IdPs consentono di specificare un URL da cui l'IdP può leggere un documento XML contenente informazioni e certificati del relying party. Per AWS, utilizza l'URL dell'endpoint di accesso. Nell’esempio seguente viene illustrato il formato per l’URL con il `region-code` facoltativo.

`https://region-code.signin.aws.amazon.com/static/saml-metadata.xml`

Se è richiesta la crittografia SAML, l'URL deve includere l'identificatore univoco AWS assegnato al provider SAML, che puoi trovare nella pagina dei dettagli del provider di identità. L’esempio seguente mostra un URL di accesso regionale che include un identificatore univoco.

`https://region-code.signin.aws.amazon.com/static/saml/IdP-ID/saml-metadata.xml`

[Per un elenco dei *region-code* valori possibili, consulta la colonna **Regione** negli endpoint di accesso.AWS](https://docs.aws.amazon.com/general/latest/gr/signin-service.html) Per il AWS valore, puoi anche utilizzare l'endpoint non regionale. `https://signin.aws.amazon.com/saml`

Se non è possibile specificare direttamente un URL, scaricare il documento XML dall'URL precedente e importarlo nel software dell'IdP. 

Inoltre, devi creare regole di reclamo appropriate nel tuo IdP che specifichino AWS come controparte. *Quando l'IdP invia una risposta SAML all' AWS endpoint, include un'*asserzione* SAML che contiene una o più attestazioni.* Un'attestazione consiste in un set di informazioni sull'utente e sui rispettivi gruppi. Una regola di attestazione mappa tali informazioni negli attributi SAML. Ciò ti consente di assicurarti che le risposte di autenticazione SAML del tuo IdP contengano gli attributi AWS necessari utilizzati nelle policy IAM per verificare le autorizzazioni per i principali federati SAML. Per ulteriori informazioni, consulta i seguenti argomenti:
+  [Panoramica del ruolo per consentire l'accesso federato SAML alle tue risorse AWS](id_roles_providers_saml.md#CreatingSAML-configuring-role). In questo argomento viene descritto l’uso di chiavi specifiche SAML nelle policy IAM e le modalità di utilizzo per limitare le autorizzazioni per i principali federati SAML.
+ [Configurare le asserzioni SAML per la risposta di autenticazione](id_roles_providers_create_saml_assertions.md). In questo argomento viene descritto come configurare le attestazioni SAML che includono informazioni sull'utente. Le attestazioni sono raggruppate in un'asserzione SAML e incluse nella risposta SAML inviata ad AWS. Devi assicurarti che le informazioni necessarie alle AWS policy siano incluse nell'asserzione SAML in un formato riconoscibile e utilizzabile. AWS 
+  [Integra fornitori di soluzioni SAML di terze parti con AWS](id_roles_providers_saml_3rd-party.md). Questo argomento fornisce collegamenti alla documentazione fornita da organizzazioni di terze parti su come integrare soluzioni di identità con AWS. 

**Nota**  
Per migliorare la resilienza della federazione, ti consigliamo di configurare l'IdP e la federazione AWS per supportare più endpoint di accesso SAML. Per i dettagli, consulta l'articolo del AWS Security Blog [Come utilizzare gli endpoint SAML regionali per](https://aws.amazon.com/blogs//security/how-to-use-regional-saml-endpoints-for-failover) il failover.

# Integra fornitori di soluzioni SAML di terze parti con AWS
<a name="id_roles_providers_saml_3rd-party"></a>

**Nota**  
Ti consigliamo di richiedere agli utenti umani di utilizzare credenziali temporanee per l'accesso. AWS Hai preso in considerazione l'idea di utilizzarlo AWS IAM Identity Center? Puoi utilizzare IAM Identity Center per gestire centralmente l'accesso a più account Account AWS e fornire agli utenti un accesso Single Sign-On protetto da MFA a tutti gli account assegnati da un'unica posizione. Con IAM Identity Center puoi creare e gestire le identità degli utenti in IAM Identity Center o connetterti facilmente al tuo attuale gestore dell'identità digitale (IdP) compatibile con SAML 2.0. Per ulteriori informazioni, consulta [Cos'è IAM Identity Center?](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) nella *Guida per l'utente di AWS IAM Identity Center *.

I seguenti collegamenti consentono di configurare soluzioni di provider di identità (IdP) SAML 2.0 di terze parti in modo che AWS funzionino con la federazione. Rivolgiti al tuo provider di identità per determinare se supporta la crittografia con token SAML. Per i requisiti di crittografia SAML, consulta [Gestire le chiavi di crittografia SAML](id_roles_providers_create_saml.md#id_federation_manage-saml-encryption).

**Suggerimento**  
AWS I tecnici dell'assistenza possono assistere i clienti che dispongono di piani di supporto aziendali e aziendali con alcune attività di integrazione che coinvolgono software di terze parti. Per un elenco aggiornato delle piattaforme e delle applicazioni supportate, vedi [Quali software di terze parti sono supportati?](https://aws.amazon.com/premiumsupport/faqs/#what3rdParty) nel *AWS Support FAQs*.


****  

| Soluzione | Ulteriori informazioni | 
| --- | --- | 
| Auth0 |  [Integrazione con Amazon Web Services](https://auth0.com/docs/integrations/aws): questa pagina del sito Web di documentazione Auth0 contiene collegamenti a risorse che descrivono come configurare il Single Sign-On (SSO) con Console di gestione AWS e include un esempio. JavaScript È possibile configurare Auth0 per passare i [tag di sessione](id_session-tags.md). Per ulteriori informazioni, consulta [Auth0 annuncia una partnership](https://auth0.com/blog/auth0-partners-with-aws-for-iam-session-tags/) con i tag di sessione IAM. AWS  | 
| Microsoft Entra |  [Tutorial: integrazione SSO di Microsoft Entra con AWS Single-Account Access](https://learn.microsoft.com/en-us/azure/active-directory/saas-apps/amazon-web-service-tutorial) — Questo tutorial sul sito Web di Microsoft descrive come configurare Microsoft Entra (precedentemente noto come Azure AD) come provider di identità (IdP) utilizzando la federazione SAML. | 
| Centrify | [Configura Centrify e usa SAML per SSO AWS: questa pagina del sito Web di Centrify spiega come configurare](https://docs.centrify.com/Content/Applications/AppsWeb/AmazonSAML.htm) Centrify per utilizzare SAML per SSO. AWS | 
| CyberArk | Configura [CyberArk](https://docs.cyberark.com/Product-Doc/OnlineHelp/Idaptive/Latest/en/Content/Applications/AppsWeb/AmazonSAML.htm)per fornire l'accesso ad Amazon Web Services (AWS) agli utenti che accedono tramite SAML Single Sign-On (SSO) dal portale utenti. CyberArk  | 
| ForgeRock | [La ForgeRock piattaforma Identity si integra con.](https://backstage.forgerock.com/docs/am/6.5/saml2-guide/#saml2-create-hosted-idp) AWS Puoi configurare ForgeRock per passare i [tag di sessione](id_session-tags.md). Per ulteriori informazioni, consulta [Attribute Based Access Control for Amazon Web Services](https://www.forgerock.com/blog/attribute-based-access-control-amazon-web-services). | 
| Google Workspace | [Applicazione cloud Amazon Web Services](https://support.google.com/a/answer/6194963): questo articolo sul sito di assistenza per amministratori di Google Workspace descrive come configurare Google Workspace come IdP SAML 2.0 e come fornitore di AWS servizi. | 
| IBM | È possibile configurare IBM per passare i [tag di sessione](id_session-tags.md). Per ulteriori informazioni, consulta [IBM Cloud Identity IDaa S, uno dei primi a supportare i tag di sessione](https://community.ibm.com/community/user/security/blogs/adam-case/2019/11/25/ibm-cloud-identity-idaas-one-of-first-to-support-aws-session-tags). AWS  | 
| JumpCloud |  [Concessione dell'accesso tramite IAM Roles for Single Sign On (SSO) con Amazon AWS](https://support.jumpcloud.com/support/s/article/Granting-Access-via-IAM-Roles-for-Single-Sign-On-SSO-with-Amazon-AWS): questo articolo sul JumpCloud sito Web descrive come configurare e abilitare l'SSO basato sui ruoli IAM per. AWS | 
| Matrix42 | MyWorkspace Guida [introduttiva: questa guida](https://myworkspace.matrix42.com/documents/MyWorkspace-Getting-Started-with-AWS.pdf) descrive come integrare i servizi di AWS identità con Matrix42. MyWorkspace | 
| Microsoft Active Directory Federation Services (AD FS) |  [Note sul campo: Integrazione di Active Directory Federation Service con AWS IAM Identity Center](https://aws.amazon.com/blogs/architecture/field-notes-integrating-active-directory-federation-service-with-aws-single-sign-on/) — Questo post sul blog di AWS architettura spiega il flusso di autenticazione tra AD FS e AWS IAM Identity Center (IAM Identity Center). IAM Identity Center supporta la federazione delle identità con SAML 2.0, consentendo l'integrazione con le soluzioni AD FS. Gli utenti possono accedere al portale di IAM Identity Center con le proprie credenziali aziendali, riducendo il sovraccarico amministrativo dovuto al mantenimento di credenziali separate. Inoltre, puoi configurare AD FS per passare i [tag di sessione](id_session-tags.md). Per ulteriori informazioni, consulta [Utilizzo del controllo accessi basato sugli attributi con AD FS per semplificare la gestione delle autorizzazioni IAM](https://aws.amazon.com/blogs/security/attribute-based-access-control-ad-fs-simplify-iam-permissions-management/).  | 
| miniOrange | [SSO per AWS](http://miniorange.com/amazon-web-services-%28aws%29-single-sign-on-%28sso%29): questa pagina del sito Web MiniOrange descrive come stabilire un accesso sicuro AWS per le aziende e il pieno controllo sull'accesso alle AWS applicazioni.  | 
| Okta |  [Integrazione dell'interfaccia a riga di comando di Amazon Web Services tramite Okta](https://support.okta.com/help/Documentation/Knowledge_Article/Integrating-the-Amazon-Web-Services-Command-Line-Interface-Using-Okta): da questa pagina del sito del supporto di Okta è possibile ottenere informazioni su come configurare Okta per l'utilizzo con AWS. È possibile configurare Okta per passare i [tag di sessione](id_session-tags.md). Per ulteriori informazioni, [consulta Okta and AWS Partner to Simplify Access Tramite](https://www.okta.com/blog/2019/11/okta-and-aws-partner-to-simplify-access-via-session-tags/) Session Tags. | 
| Okta | [AWS Account Federation](https://help.okta.com/oie/en-us/Content/Topics/DeploymentGuides/AWS/aws-deployment.htm): questa sezione del sito Web di Okta descrive come configurare e abilitare IAM Identity Center per. AWS | 
| OneLogin | Nella [OneLoginKnowledgebase](https://onelogin.service-now.com/support), SAML AWS cerca un elenco di articoli che spiegano come configurare la funzionalità di IAM Identity Center tra OneLogin e AWS per scenari a ruolo singolo e multiruolo. [È possibile configurare il passaggio dei tag di sessione. OneLogin ](id_session-tags.md) Per ulteriori informazioni, consulta [OneLogin e Tag di sessione: controllo degli accessi alle risorse basato sugli attributi](https://www.onelogin.com/blog/aws-session-tags-integration). AWS  | 
| Identità Ping |  [PingFederate AWS Connettore](https://support.pingidentity.com/s/marketplace-integration-details?recordId=a7i1W0000004HBwQAM): visualizza i dettagli sul PingFederate AWS Connector, un modello di connessione rapida per configurare facilmente una connessione Single Sign-On (SSO) e di provisioning. Leggi la documentazione e scarica la versione più recente di PingFederate AWS Connector per le integrazioni con. AWSÈ possibile configurare Ping Identity per passare i [tag di sessione](id_session-tags.md). Per ulteriori informazioni, consulta [Announcing Ping Identity Support for Attribute-Based Access Control in AWS](https://support.pingidentity.com/s/document-item?bundleId=integrations&topicId=pon1571779451105.html).  | 
| RadiantLogic | [Radiant Logic Technology Partners](http://www.radiantlogic.com/about/partners/technology-partners/): il RadiantOne Federated Identity Service di Radiant Logic si integra con AWS per fornire un hub di identità per SSO basato su SAML.  | 
| RSA | [Amazon Web Services - Guida all'implementazione di RSA Ready](https://community.rsa.com/s/article/Amazon-Web-Services-RSA-Ready-Implementation-Guide) fornisce linee guida per l'integrazione di AWS e RSA. Per ulteriori informazioni sulla configurazione di SAML, consulta [Amazon Web Services - Configurazione SSO della mia pagina SAML - Guida all'implementazione di RSA Ready](https://community.rsa.com/s/article/Amazon-Web-Services-SAML-My-Page-SSO-Configuration-RSA-Ready-Implementation-Guide). | 
| Salesforce.com |  [Come configurare l'SSO da Salesforce a AWS](https://developer.salesforce.com/page/Configuring-SAML-SSO-to-AWS): questo articolo pratico sul sito per sviluppatori Salesforce.com descrive come configurare un provider di identità (IdP) in Salesforce e configurarlo come provider di servizi. AWS  | 
| SecureAuth |  [AWS - SecureAuth SAML SSO](https://docs.secureauth.com/2104/en/amazon-web-services--aws---idp-initiated--integration-guide.html): questo articolo sul sito Web descrive come configurare l'integrazione SAML con per un'appliance. SecureAuth AWS SecureAuth  | 
| Shibboleth |  [Come utilizzare Shibboleth per SSO su Console di gestione AWS: questo articolo del](https://aws.amazon.com/blogs/security/how-to-use-shibboleth-for-single-sign-on-to-the-aws-management-console) AWS Security Blog fornisce un step-by-step tutorial su come configurare Shibboleth e configurarlo come provider di identità per. AWSÈ possibile configurare Shibboleth per passare i [tag di sessione](id_session-tags.md). | 

[Per maggiori dettagli, consulta la pagina IAM Partners sul sito Web.](https://aws.amazon.com/iam/partners/) AWS 

# Configurare le asserzioni SAML per la risposta di autenticazione
<a name="id_roles_providers_create_saml_assertions"></a>

Dopo aver verificato l'identità di un utente nell'organizzazione, il provider di identità esterno (IdP) invia una risposta di autenticazione all'URL dell'endpoint di AWS accesso. Questa risposta è una richiesta POST che include un token SAML che aderisce al [binding POST HTTP per lo standard SAML 2.0](http://docs.oasis-open.org/security/saml/v2.0/saml-bindings-2.0-os.pdf) e che contiene i seguenti elementi o *attestazioni*. È possibile configurare queste affermazioni nell'IDP compatibile con SAML. Per ulteriori informazioni, consulta la documentazione del provider di identità per istruzioni su come inserire queste attestazioni.

Quando l'IdP invia la risposta contenente le attestazioni a AWS, molte delle attestazioni in entrata vengono mappate alle AWS chiavi di contesto. Queste chiavi di contesto possono essere controllate nelle policy IAM utilizzando l'elemento `Condition`. L'elenco delle mappature disponibili è incluso nella sezione [Mappatura degli attributi SAML per considerare attendibili le chiavi contestuali delle AWS politiche](#saml-attribute-mapping).

## `Subject` e `NameID`
<a name="saml_subject-name-id"></a>

La risposta deve includere esattamente un elemento `SubjectConfirmation` con un elemento `SubjectConfirmationData` che include sia l’attributo `NotOnOrAfter` sia l’attributo `Recipient`. L'attributo Recipient deve includere un valore che corrisponda all'URL dell'endpoint di AWS accesso. Il tuo IdP può utilizzare il termine `ACS` o fare riferimento `Target` a questo attributo. `Recipient`

Se è richiesta la crittografia SAML, l’URL di accesso deve includere l’identificatore univoco assegnato da AWS al provider SAML e consultabile nella pagina dei dettagli del provider di identità. L’esempio seguente mostra il formato di URL di accesso con il `region-code` facoltativo.

`https://region-code.signin.aws.amazon.com/saml`

Nell’esempio seguente, l’URL di accesso include un identificatore univoco, per cui è necessario aggiungere /acs/ al percorso di accesso.

`https://region-code.signin.aws.amazon.com/saml/acs/IdP-ID`

Per un elenco dei *region-code* valori possibili, consulta la colonna **Regione** negli endpoint di [AWS accesso](https://docs.aws.amazon.com/general/latest/gr/signin-service.html). Per il AWS valore, puoi anche utilizzare l'endpoint di accesso globale. `https://signin.aws.amazon.com/saml`

Gli elementi `NameID` possono avere il valore persistente, transitorio o oppure possono essere costituiti dall'URI formato completo, come fornito dalla soluzione IdP. Un valore permanente indica che il valore in `NameID` è lo stesso per un utente da una sessione all'altra. Se il valore è transitorio, l'utente dispone di un valore `NameID` diverso per ogni sessione. Le interazioni Single Sign-on supportano i seguenti tipi di identificatori:
+ `urn:oasis:names:tc:SAML:2.0:nameid-format:persistent`
+ `urn:oasis:names:tc:SAML:2.0:nameid-format:transient`
+ `urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress`
+ `urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified`
+ `urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName`
+ `urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName`
+ `urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos`
+ `urn:oasis:names:tc:SAML:2.0:nameid-format:entity`

Di seguito viene riportato un estratto di esempio. Sostituire con i propri valori i valori contrassegnati.

```
<Subject>
  <NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent">_cbb88bf52c2510eabe00c1642d4643f41430fe25e3</NameID>
  <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
    <SubjectConfirmationData NotOnOrAfter="2013-11-05T02:06:42.876Z" Recipient="https://region-code.signin.aws.amazon.com/saml/SAMLSP4SHN3UIS2D558H46"/>
  </SubjectConfirmation>
</Subject>
```

**Importante**  
Al contrario, la chiave di contesto `saml:aud` proviene dall'attributo *recipient* SAML perché è l'equivalente SAML del campo del destinatario OIDC, ad esempio, `accounts.google.com:aud`.

## Attributo SAML `PrincipalTag`
<a name="saml_role-session-tags"></a>

(Facoltativo) Puoi utilizzare un elemento `Attribute` con l'attributo `Name` impostato su `https://aws.amazon.com/SAML/Attributes/PrincipalTag:{TagKey}`. Questo elemento consente di passare attributi come tag di sessione nell'asserzione SAML. Per ulteriori informazioni sui tag di sessione, consultare [Passa i tag di sessione AWS STS](id_session-tags.md).

Per passare gli attributi come tag di sessione, includi l'elemento `AttributeValue` che specifica il valore del tag. Ad esempio, per passare la coppia chiave-valore del tag `Project` = `Marketing` e `CostCenter` = `12345`, utilizza il seguente attributo. Includi un elemento `Attribute` separato per ogni tag.

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:Project">
  <AttributeValue>Marketing</AttributeValue>
</Attribute>
<Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:CostCenter">
  <AttributeValue>12345</AttributeValue>
</Attribute>
```

Per impostare i tag sopra elencati come transitivi, includere un altro elemento `Attribute` con l'attributo `Name` impostato a `https://aws.amazon.com/SAML/Attributes/TransitiveTagKeys`. Questo è un attributo con più valori opzionale che imposta i tag di sessione come transitivi. I tag transitivi persistono quando utilizzi la sessione SAML per assumere un altro ruolo in AWS. Questo è noto come [concatenazione del ruolo](id_roles.md#iam-term-role-chaining). Ad esempio, per impostare entrambi i tag `CostCenter` e `Principal` come transitivi, utilizza il seguente attributo per specificare le chiavi.

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/TransitiveTagKeys">
  <AttributeValue>Project</AttributeValue>
  <AttributeValue>CostCenter</AttributeValue>
</Attribute>
```

## Attributo SAML `Role`
<a name="saml_role-attribute"></a>

Puoi utilizzare un elemento `Attribute` con l'attributo `Name` impostato su `https://aws.amazon.com/SAML/Attributes/Role` Questo elemento contiene uno o più elementi `AttributeValue` che elencano il ruolo e il provider di identità IAM a cui l'utente è mappato dall'IdP. [Il ruolo IAM e il provider di identità IAM sono specificati come una coppia delimitata da virgole nello stesso formato dei `PrincipalArn` parametri `RoleArn` and passati ARNs a SAML. AssumeRoleWith](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithSAML.html) Questo elemento deve contenere almeno una coppia ruolo-provider (elemento `AttributeValue`) e può contenere più coppie. Se l'elemento contiene più coppie, all'utente viene chiesto di scegliere il ruolo da assumere quando utilizza WebSSO per accedere alla Console di gestione AWS.

**Importante**  
Il valore dell'attributo `Name` nel tag `Attribute` è sensibile alla distinzione tra maiuscolo/minuscolo. Il valore deve essere impostato esattamente su `https://aws.amazon.com/SAML/Attributes/Role`.

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/Role">
  <AttributeValue>arn:aws:iam::account-number:role/role-name1,arn:aws:iam::account-number:saml-provider/provider-name</AttributeValue>
  <AttributeValue>arn:aws:iam::account-number:role/role-name2,arn:aws:iam::account-number:saml-provider/provider-name</AttributeValue>
  <AttributeValue>arn:aws:iam::account-number:role/role-name3,arn:aws:iam::account-number:saml-provider/provider-name</AttributeValue>
</Attribute>
```

## Attributo SAML `RoleSessionName`
<a name="saml_role-session-attribute"></a>

Puoi utilizzare un elemento `Attribute` con l'attributo `Name` impostato su `https://aws.amazon.com/SAML/Attributes/RoleSessionName` Questo elemento contiene un elemento `AttributeValue` che fornisce un identificatore per le credenziali temporanee emesse quando viene assunto il ruolo. È possibile utilizzare questa opzione per associare le credenziali temporanee all'utente che utilizza l'applicazione. Questo elemento viene utilizzato per visualizzare le informazioni sull'utente in. Console di gestione AWS Il valore nell'elemento `AttributeValue` deve contenere tra 2 e 64 caratteri, può contenere solo caratteri alfanumerici, caratteri di sottolineatura e i seguenti caratteri: **. , \$1 = @ -** (trattino). Non può contenere spazi. Il valore è in genere un ID utente (`john`) o un indirizzo e-mail (`johndoe@example.com`). Non deve essere un valore che include uno spazio, ad esempio il nome di visualizzazione di un utente (`John Doe`).

**Importante**  
Il valore dell'attributo `Name` nel tag `Attribute` è sensibile alla distinzione tra maiuscolo/minuscolo. Il valore deve essere impostato esattamente su `https://aws.amazon.com/SAML/Attributes/RoleSessionName`.

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/RoleSessionName">
  <AttributeValue>user-id-name</AttributeValue>
</Attribute>
```

## Attributo SAML `SessionDuration`
<a name="saml_role-session-duration"></a>

(Facoltativo) Puoi utilizzare un elemento `Attribute` con l'attributo `Name` impostato su `https://aws.amazon.com/SAML/Attributes/SessionDuration`. Questo elemento contiene un `AttributeValue` elemento che specifica per quanto tempo l'utente può accedere Console di gestione AWS prima di dover richiedere nuove credenziali temporanee. Il valore è un numero intero che rappresenta il numero di secondi per la sessione. Il valore può variare da 900 secondi (15 minuti) a 43.200 secondi (12 ore). Se questo attributo non è presente, la credenziale dura per un'ora (il valore predefinito del parametro `DurationSeconds` dell'API `AssumeRoleWithSAML`).

Per utilizzare questo attributo, devi configurare il provider SAML in modo che fornisca l'accesso Single Sign-On all'endpoint web di accesso Console di gestione AWS tramite console all'indirizzo. `https://region-code.signin.aws.amazon.com/saml` [Per un elenco dei *region-code* valori possibili, consulta la colonna **Regione negli endpoint di accesso.**AWS](https://docs.aws.amazon.com/general/latest/gr/signin-service.html) Facoltativamente, puoi utilizzare il seguente URL: `https://signin.aws.amazon.com/static/saml`. Si noti che questo attributo estende le sessioni solo alla Console di gestione AWS. Non può estendere la durata di altre credenziali. Tuttavia, se è presente in una chiamata API `AssumeRoleWithSAML`, può essere utilizzato per *abbreviare* la durata della sessione. La durata predefinita delle credenziali restituite dalla chiamata è di 60 minuti. 

Si noti inoltre che, se viene definito anche un attributo `SessionNotOnOrAfter`, il valore ***inferiore*** dei due attributi, `SessionDuration` o `SessionNotOnOrAfter`, stabilisce la durata massima della sessione della console.

Quando si abilitano le sessioni della console con una durata estesa, aumenta il rischio di compromissione delle credenziali. Per mitigare questo rischio, è possibile disabilitare immediatamente le sessioni della console attiva per tutti i ruoli, scegliendo **Revoca sessioni** nella pagina **Riepilogo ruolo** della console IAM. Per ulteriori informazioni, consulta [Revocare le credenziali di sicurezza temporanee per i ruoli IAM](id_roles_use_revoke-sessions.md). 

**Importante**  
Il valore dell'attributo `Name` nel tag `Attribute` è sensibile alla distinzione tra maiuscolo/minuscolo. Il valore deve essere impostato esattamente su `https://aws.amazon.com/SAML/Attributes/SessionDuration`.

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/SessionDuration">
  <AttributeValue>1800</AttributeValue>
</Attribute>
```

## Attributo SAML `SourceIdentity`
<a name="saml_sourceidentity"></a>

(Facoltativo) Puoi utilizzare un elemento `Attribute` con l'attributo `Name` impostato su `https://aws.amazon.com/SAML/Attributes/SourceIdentity`. Questo elemento contiene un elemento `AttributeValue` che fornisce un identificatore per la persona o l'applicazione che utilizza un ruolo IAM. [Il valore dell'identità di origine persiste quando utilizzi la sessione SAML per assumere un altro ruolo, AWS noto come concatenamento dei ruoli.](id_roles.md#iam-term-role-chaining) Il valore per l'identità di origine è presente nella richiesta per ogni operazione eseguita durante la sessione del ruolo. Il valore impostato non può essere modificato durante la sessione del ruolo. Gli amministratori possono quindi utilizzare AWS CloudTrail i log per monitorare e controllare le informazioni sull'identità di origine per determinare chi ha eseguito azioni con ruoli condivisi.

Il valore nell'elemento `AttributeValue` deve contenere tra 2 e 64 caratteri, può contenere solo caratteri alfanumerici, caratteri di sottolineatura e i seguenti caratteri: **. , \$1 = @ -** (trattino). Non può contenere spazi. Il valore è in genere un attributo associato all'utente, ad esempio un ID utente (`john`) o un indirizzo e-mail (`johndoe@example.com`). Non deve essere un valore che include uno spazio, ad esempio il nome di visualizzazione di un utente (`John Doe`). Per ulteriori informazioni sull'utilizzo dell'identità di origine, consulta [Monitoraggio e controllo delle operazioni intraprese con i ruoli assunti](id_credentials_temp_control-access_monitor.md).

**Importante**  
Se l'asserzione SAML è configurata per utilizzare l'attributo [`SourceIdentity`](#saml_sourceidentity), allora la policy di attendibilità del ruolo deve includere anche l'operazione `sts:SetSourceIdentity` altrimenti l'operazione di assunzione del ruolo avrà esito negativo. Per ulteriori informazioni sull'utilizzo dell'identità di origine, consulta [Monitoraggio e controllo delle operazioni intraprese con i ruoli assunti](id_credentials_temp_control-access_monitor.md).

Per inviare un attributo dell'identità di origine, includi l'elemento `AttributeValue` che specifica il valore dell'identità di origine. Ad esempio, per inviare `Diego` dell'identità di origine, utilizza il seguente attributo.

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/SourceIdentity">
  <AttributeValue>Diego</AttributeValue>
```

## Mappatura degli attributi SAML per considerare attendibili le chiavi contestuali delle AWS politiche
<a name="saml-attribute-mapping"></a>

Le tabelle in questa sezione elencano gli attributi SAML comunemente usati e il modo in cui sono mappati alle chiavi di contesto delle condizioni delle policy in AWS. Puoi utilizzare queste chiavi per controllare l'accesso a un ruolo. A tale scopo, confronta le chiavi con i valori che sono inclusi nelle asserzioni incluse in una richiesta di accesso SAML.

**Importante**  
Queste chiavi sono disponibili solo nelle policy di affidabilità IAM (policy che determinano chi può assumere un ruolo) e non sono applicabili alle policy di autorizzazione.

Nella tabella degli attributi eduPerson e eduOrg, i valori vengono digitati come stringhe o come elenchi di stringhe. Per i valori di stringa, puoi testare questi valori nelle policy di attendibilità IAM utilizzando le condizioni `StringEquals` o `StringLike`. Per i valori che contengono un elenco di stringhe, è possibile utilizzare gli `ForAnyValue`operatori del set di policy`ForAllValues` [ e ](reference_policies_condition-single-vs-multi-valued-context-keys.md#reference_policies_condition-multi-valued-context-keys) per un test dei valori delle policy di attendibilità.

**Nota**  
Dovresti includere solo un claim per chiave di AWS contesto. Se ne include più di una, verrà mappata una sola attestazione. 

La tabella riportata di seguito mostra gli attributi eduPerson ed eduOrg.


| Attributo eduPerson o eduOrg (chiave `Name`) | Si associa a questa chiave di AWS contesto (`FriendlyName`chiave) | Tipo | 
| --- | --- | --- | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.1`   |   `eduPersonAffiliation`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.2`   |   `eduPersonNickname`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.3`   |   `eduPersonOrgDN`   |  Stringa  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.4`   |   `eduPersonOrgUnitDN`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.5`   |   `eduPersonPrimaryAffiliation`   |  Stringa  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.6`   |   `eduPersonPrincipalName`   |  Stringa  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.7`   |   `eduPersonEntitlement`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.8`   |   `eduPersonPrimaryOrgUnitDN`   |  Stringa  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.9`   |   `eduPersonScopedAffiliation`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.10`   |   `eduPersonTargetedID`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.1.1.11`   |   `eduPersonAssurance`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.2.1.2`   |   `eduOrgHomePageURI`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.2.1.3`   |   `eduOrgIdentityAuthNPolicyURI`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.2.1.4`   |   `eduOrgLegalName`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.2.1.5`   |   `eduOrgSuperiorURI`   |  Elenco di stringhe  | 
|   `urn:oid:1.3.6.1.4.1.5923.1.2.1.6`   |   `eduOrgWhitePagesURI`   |  Elenco di stringhe  | 
|   `urn:oid:2.5.4.3`   |   `cn`   |  Elenco di stringhe  | 

La tabella riportata di seguito mostra gli attributi di Active Directory.


| Attributo AD | Si associa a questa chiave di AWS contesto | Tipo | 
| --- | --- | --- | 
|  `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name`  |  `name`  |  Stringa  | 
|  `http://schemas.xmlsoap.org/claims/CommonName`  |  `commonName`  |  Stringa  | 
|  `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname`  |  `givenName`  |  Stringa  | 
|  `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname`  |  `surname`  |  Stringa  | 
|  `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`  |  `mail`  |  Stringa  | 
|  `http://schemas.microsoft.com/ws/2008/06/identity/claims/primarygroupsid`  |  `uid`  |  Stringa  | 

La tabella riportata di seguito mostra gli attributi X.500.


| Attributo X.500 | Si associa a questa chiave di AWS contesto | Tipo | 
| --- | --- | --- | 
|  `2.5.4.3`  |  `commonName`  |  Stringa  | 
|  `2.5.4.4`  |  `surname`  |  Stringa  | 
|  `2.4.5.42`  |  `givenName`  |  Stringa  | 
|  `2.5.4.45`  |  `x500UniqueIdentifier`  |  Stringa  | 
|  `0.9.2342.19200300100.1.1`  |  `uid`  |  Stringa  | 
|  `0.9.2342.19200300100.1.3`  |  `mail`  |  Stringa  | 
|  `0.9.2342.19200300.100.1.45`  |  `organizationStatus`  |  Stringa  | 

# Consentire ai principali federati SAML 2.0 di accedere a Console di gestione AWS
<a name="id_roles_providers_enable-console-saml"></a>

Puoi utilizzare un ruolo per configurare il tuo provider di identità (IdP) conforme a SAML 2.0 e consentire AWS ai principali federati SAML di accedere a. Console di gestione AWS Il ruolo concede all'utente le autorizzazioni per eseguire attività nella console. Se desideri offrire ai responsabili federati SAML altri modi di accesso, consulta uno di questi argomenti: AWS
+ AWS CLI: [Passaggio a un ruolo IAM (AWS CLI)](id_roles_use_switch-role-cli.md)
+ Strumenti per Windows: PowerShell [Passare a un ruolo IAM (Tools for Windows PowerShell)](id_roles_use_switch-role-twp.md)
+ AWS API: [Passa a un ruolo IAM (AWS API)](id_roles_use_switch-role-api.md)

## Panoramica di
<a name="enable-console-saml-overview"></a>

Il seguente diagramma mostra il flusso per il Single Sign-On abilitato per SAML. 

**Nota**  
Questo uso specifico di SAML differisce da quello più generale illustrato in precedenza [Federazione SAML 2.0](id_roles_providers_saml.md) perché questo flusso di lavoro lo apre per Console di gestione AWS conto dell'utente. In questo caso occorre utilizzare l'endpoint di accesso ad AWS anziché richiamare direttamente l'API `AssumeRoleWithSAML`. L'endpoint richiama l'API per l'utente e restituisce un'URL che reindirizza automaticamente il browser dell'utente alla Console di gestione AWS.

![\[Accesso Single Sign-On (SSO) alla console di gestione tramite SAML AWS\]](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/images/saml-based-sso-to-console.diagram.png)


Il diagramma illustra i passaggi seguenti:

1. L'utente accede al portale dell'organizzazione e seleziona l'opzione che consente di accedere alla Console di gestione AWS. Nella tua organizzazione, il portale è in genere una funzione del tuo IdP che gestisce lo scambio di fiducia tra l'organizzazione e. AWS Ad esempio, in Active Directory Federation Services, l'URL del portale è: `https://ADFSServiceName/adfs/ls/IdpInitiatedSignOn.aspx` 

1. Il portale verifica l'identità dell'utente nell'organizzazione.

1. Il portale genera una risposta di autenticazione SAML che include asserzioni che identificano l'utente e includono gli attributi dell'utente. È anche possibile configurare il provider di identità per includere un attributo di asserzione SAML chiamato `SessionDuration` che specifica la durata della validità della sessione della console. È anche possibile configurare il provider di identità per passare gli attributi come [tag di sessione](id_session-tags.md). Il portale invia questa risposta al browser del client.

1. Il browser del client viene reindirizzato all'endpoint AWS Single Sign-On e pubblica l'asserzione SAML. 

1. L'endpoint richiede le credenziali di sicurezza provvisorie per conto dell'utente e crea una URL di accesso alla console che utilizza tali credenziali. 

1. AWS invia l'URL di accesso al client come reindirizzamento.

1. Il browser del client è reindirizzato alla Console di gestione AWS. Se la risposta di autenticazione SAML include attributi mappati a più ruoli IAM, all'utente viene chiesto di selezionare il ruolo per l'accesso alla console. 

Dal punto di vista dell'utente, il processo avviene in modo trasparente: l'utente inizia dal portale interno dell'organizzazione e finisce al Console di gestione AWS, senza mai dover fornire alcuna credenziale. AWS 

Consulta le seguenti sezioni per una panoramica della configurazione di questo comportamento insieme ai collegamenti alla procedura dettagliata.

## Configura la tua rete come provider SAML per AWS
<a name="fedconsole-config-network-as-saml"></a>

All'interno della rete aziendale, è possibile configurare l'archivio identità (ad esempio Windows Active Directory) per l'utilizzo con un IdP basato su SAML come, ad esempio, Windows Active Directory Federation Services e Shibboleth. Utilizzando il provider di identità, si genera un documento di metadati che descrive l'organizzazione come un IdP e include le chiavi di autenticazione. Inoltre, configuri il portale della tua organizzazione per indirizzare le richieste degli utenti Console di gestione AWS all'endpoint AWS SAML per l'autenticazione utilizzando le asserzioni SAML. Il modo in cui è possibile configurare il provider di identità per la produzione del file metadata.xml dipende dal provider di identità. Per ulteriori informazioni, consulta la documentazione del provider di identità, oppure consulta [Integra fornitori di soluzioni SAML di terze parti con AWS](id_roles_providers_saml_3rd-party.md) per i collegamenti alla documentazione Web per molti dei fornitori di SAML supportati.

## Creazione di un provider SAML in IAM
<a name="fedconsole-create-saml-provider"></a>

Successivamente, accedi Console di gestione AWS e vai alla console IAM. Qui si crea un nuovo provider SAML, ovvero un'entità in IAM che contiene informazioni sul provider di identità dell'organizzazione. Come parte di questo processo, è possibile caricare il documento di metadati prodotto dal software IdP nella propria organizzazione nella sezione precedente. Per informazioni dettagliate, vedi [Creare un provider di identità SAML in IAM](id_roles_providers_create_saml.md). 

## Configura le autorizzazioni AWS per i principali federati SAML
<a name="fedconsole-grantperms"></a>

La fase successiva consiste nel creare un ruolo IAM che stabilisca una relazione di attendibilità tra IAM e il provider di identità dell'organizzazione. Questo ruolo deve identificare il tuo provider di identità come un principale (entità attendibile) ai fini della federazione. Il ruolo definisce anche le operazioni consentite agli utenti autenticati dall'IdP dell'organizzazione. AWSÈ possibile utilizzare la console IAM per creare questo ruolo. Quando si crea la policy di attendibilità che indica chi può assumere il ruolo, specifica il provider SAML creato in precedenza in IAM. È inoltre possibile specificare uno o più attributi SAML a cui un utente deve corrispondere per poter assumere quel ruolo. Ad esempio, è possibile specificare che solo gli utenti il cui valore SAML `[eduPersonOrgDN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_iam-condition-keys.html#ck_edupersonorgdn)` è `ExampleOrg` sono autorizzati ad accedere. La procedura guidata relativa al ruolo aggiunge automaticamente una condizione per testare l'attributo `saml:aud` per assicurarsi che il ruolo venga assunto solo per l'accesso alla Console di gestione AWS.

Se è richiesta la crittografia SAML, l’URL di accesso deve includere l’identificatore univoco assegnato da AWS al provider SAML e consultabile nella pagina dei dettagli del provider di identità. La policy di affidabilità potrebbe apparire come segue:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Federated": "arn:aws:iam::111122223333:saml-provider/ExampleOrgSSOProvider"
            },
            "Action": "sts:AssumeRoleWithSAML",
            "Condition": {
                "StringEquals": {
                    "saml:edupersonorgdn": "ExampleOrg",
                    "saml:aud": "https://region-code.signin.aws.amazon.com/saml/acs/SAMLSP4SHN3UIS2D558H46"
                }
            }
        }
    ]
}
```

------

**Nota**  
SAML IDPs utilizzato in una politica di fiducia dei ruoli deve trovarsi nello stesso account in cui si trova il ruolo.

Ti consigliamo di utilizzare gli endpoint regionali per l’attributo `saml:aud` all’indirizzo `https://region-code.signin.aws.amazon.com/static/saml-metadata.xml`. Per un elenco dei *region-code* valori possibili, consulta la colonna **Regione** negli endpoint di [AWS accesso](https://docs.aws.amazon.com/general/latest/gr/signin-service.html).

Per la [policy di autorizzazione](access_policies.md) nel ruolo, è necessario specificare le autorizzazioni come per qualsiasi utente, gruppo o ruolo. Ad esempio, se gli utenti dell'organizzazione sono autorizzati ad amministrare le istanze Amazon EC2, consenti esplicitamente le operazioni Amazon EC2 nella policy di autorizzazione. A tale scopo, puoi assegnare una [policy gestita](access_policies_manage-attach-detach.md), ad esempio la policy di **accesso completo di Amazon EC2**. 

Per ulteriori informazioni sulla creazione di un ruolo per un provider di identità SAML, consulta [Creare un ruolo per una federazione SAML 2.0 (console)](id_roles_create_for-idp_saml.md). 

## Fine della configurazione e creazione di asserzioni SAML
<a name="fedconsole-configassertions"></a>

Informa il tuo IdP SAML AWS che è il tuo fornitore di servizi installando `saml-metadata.xml` il file disponibile `https://region-code.signin.aws.amazon.com/static/saml-metadata.xml` in o. `https://signin.aws.amazon.com/static/saml-metadata.xml` Se è richiesta la crittografia SAML, il file si trova in. `https://region-code.signin.aws.amazon.com/static/saml/SAMLSP4SHN3UIS2D558H46/saml-metadata.xml`

Per un elenco dei *region-code* valori possibili, consulta la colonna **Regione** negli endpoint di [AWS accesso](https://docs.aws.amazon.com/general/latest/gr/signin-service.html). 

Il modo in cui installare tale file dipende dal provider di identità. Alcuni provider danno la possibilità di digitare l'URL, dopodiché il provider di identità ottiene e installa il file per conto dell'utente. Altri richiedono di scaricare il file dall'URL e quindi fornirlo come file locale. Per ulteriori informazioni, consulta la documentazione del provider di identità, oppure consulta [Integra fornitori di soluzioni SAML di terze parti con AWS](id_roles_providers_saml_3rd-party.md) per i collegamenti alla documentazione Web per molti dei fornitori di SAML supportati.

È anche possibile configurare le informazioni che si desidera che il provider di identità passi come attributi SAML per AWS come parte della risposta di autenticazione. La maggior parte di queste informazioni viene visualizzata AWS come chiavi di contesto delle condizioni che puoi valutare nelle tue politiche. Queste chiavi di condizione garantiscono che solo agli utenti autorizzati nei giusti contesti vengono concesse le autorizzazioni per accedere alle risorse AWS . È possibile specificare le finestre di tempo che limitano l'utilizzo della console. È inoltre possibile specificare il tempo massimo (fino a 12 ore) durante il quale gli utenti possono accedere alla console prima di dover aggiornare le proprie credenziali. Per informazioni dettagliate, vedi [Configurare le asserzioni SAML per la risposta di autenticazione](id_roles_providers_create_saml_assertions.md).

# Visualizzare una risposta SAML nel browser
<a name="troubleshoot_saml_view-saml-response"></a>

Le procedure seguenti descrivono come visualizzare nel browser la risposta SAML del proprio provider di servizi durante la risoluzione di un problema relativo a SAML 2.0. 

Per tutti i browser, passare alla pagina in cui è possibile riprodurre il problema. Quindi seguire i passaggi per il browser appropriato:

**Topics**
+ [Google Chrome](#chrome)
+ [Mozilla Firefox](#firefox)
+ [Apple Safari](#safari)
+ [Operazioni da effettuare con la risposta SAML codificata Base64](#whatnext)

## Google Chrome
<a name="chrome"></a>

**Per visualizzare una risposta SAML in Chrome**

Questi passaggi sono stati testati utilizzando la versione 106.0.5249.103 (versione ufficiale) (arm64) di Google Chrome. Se si utilizza una versione diversa, potrebbe essere necessario modificare i passaggi di conseguenza.

1. Premere **F12** per avviare la console **Strumenti per sviluppatori**.

1. Selezionare la scheda **Netowrk** (Rete), quindi selezionare **Preserve log** (Conserva registro) nella parte superiore sinistra della finestra **Developer Tools** (Strumenti per sviluppatori).

1. Riprodurre il problema.

1. (Facoltativo) Se la colonna **Method** (Metodo) non è visibile nel pannello di registrazione **Developer Tools** (Strumenti per sviluppatori) **Network** (Rete), fare clic con il pulsante destro del mouse su qualsiasi etichetta di colonna e scegliere **Method** (Metodo) per aggiungere la colonna

1. Cercare un **SAML Post** (Post SAML) nel pannello di registrazione **Developer Tools** (Strumenti per sviluppatori) **Network** (Rete). Selezionare la riga e quindi visualizzare la scheda **Payload** (Carico utile) nella parte superiore. Cerca l'**SAMLResponse**elemento che contiene la richiesta codificata. Il valore associato è la risposta codificata Base64.

## Mozilla Firefox
<a name="firefox"></a>

**Per visualizzare una risposta SAML in Firefox**

Questa procedura è stata testata con la versione 105.0.3 (64 bit) di Mozilla Firefox. Se si utilizza una versione diversa, potrebbe essere necessario modificare i passaggi di conseguenza.

1. Premere **F12** per avviare la console **Strumenti per sviluppatori Web**.

1. Selezionare la scheda **Network (Rete)**. 

1. In alto a destra nella finestra **Web Developer Tools **(Strumenti per sviluppatori Web), fare clic sull'icona delle opzioni (il piccolo ingranaggio). Selezionare **Persist logs** (Preserva registri). 

1. Riprodurre il problema.

1. (Facoltativo) Se la colonna **Method** (Metodo) non è visibile nel pannello di registrazione **Developer Tools** (Strumenti per sviluppatori Web) **Network** (Rete), fare clic con il pulsante destro del mouse su qualsiasi etichetta di colonna e scegliere **Method** (Metodo) per aggiungere la colonna

1. Cercare un **MESSAGGIO** **SAML** nella tabella. Seleziona quella riga, quindi visualizza la scheda **Richiesta** e trova l'**SAMLResponse**elemento. Il valore associato è la risposta codificata Base64.

## Apple Safari
<a name="safari"></a>

**Per visualizzare una risposta Safari**

Questi passaggi sono stati testati utilizzando la versione 16.0 (17614.1.25.9.10, 17614) di Apple Safari. Se si utilizza una versione diversa, potrebbe essere necessario modificare i passaggi di conseguenza.

1. Abilitare Web Inspector in Safari. Aprire la finestra delle **preferenze** selezionare la scheda delle impostazioni **avanzate** e quindi selezionare l'opzione per **mostrare il menu Sviluppo nella barra dei menu**.

1. Ora è possibile aprire Web Inspector. Scegliere **Develop** (Sviluppo) nella barra dei menu, quindi selezionare **Show Web Inspector** (Mostra Web Inspector).

1. Selezionare la scheda **Network (Rete)**.

1. Nella parte superiore sinistra della finestra **Web Inspector**, fare clic sull'icona delle opzioni (il piccolo cerchio con tre linee orizzontali). Selezionare **Preserve Logs** (Conserva registri).

1. (Facoltativo) Se la colonna **Method** (Metodo) non è visibile nel pannello di registrazione **Web Inspector** **Network** (Rete), fare clic con il pulsante destro del mouse su qualsiasi etichetta di colonna e scegliere **Method** (Metodo) per aggiungere la colonna

1. Riprodurre il problema.

1. Cercare un **MESSAGGIO** **SAML** nella tabella. Selezionare la riga e quindi visualizzare la scheda Headers (Intestazioni).

1. Cerca l'**SAMLResponse**elemento che contiene la richiesta codificata. Scorrere per trovare l'elemento `Request Data` con nome `SAMLResponse`. Il valore associato è la risposta codificata Base64.

## Operazioni da effettuare con la risposta SAML codificata Base64
<a name="whatnext"></a>

Una volta trovato l'elemento di risposta SAML con codifica Base64 nel browser, copiarlo e utilizzare lo strumento di decodifica Base-64 preferito per estrarre la risposta con tag XML.

**Suggerimento per la sicurezza**  
Poiché i dati di risposta SAML visualizzati potrebbero contenere dati di sicurezza sensibili, si consiglia di non utilizzare un decodificatore *base64*. Utilizzare invece uno strumento installato sul computer locale che non invia i dati SAML sulla rete.

**Opzione integrata per i sistemi Windows (PowerShell):**

```
PS C:\> [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String("base64encodedtext"))
```

**Opzione integrata per sistemi MacOS e Linux:**

```
$ echo "base64encodedtext" | base64 --decode
```

**Rivedere i valori nel file decodificato**  
Rivedi i valori nel file di risposta SAML decodificato. 
+ Verifica che il valore dell'attributo saml:NameID corrisponda al nome utente dell'utente autenticato.
+ Esamina il valore di https://aws.amazon.com/SAML/ Attributi/Ruolo. I provider ARN e SAML fanno distinzione tra maiuscole e minuscole e l'[ARN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) deve corrispondere alla risorsa del tuo account.
+ Controlla il valore di Attributes/. https://aws.amazon.com/SAML/ RoleSessionName Il valore deve corrispondere al valore nella [regola di rivendicazione](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html).
+ Se configuri il valore dell'attributo per un indirizzo e-mail o un nome di account, assicurati che i valori siano corretti. I valori devono corrispondere all'indirizzo e-mail o al nome dell'account dell'utente autenticato.

**Verificare la presenza di errori e confermare la configurazione**  
Controlla se i valori contengono errori e conferma che le seguenti configurazioni siano corrette.
+ Le regole relative ai reclami soddisfano gli elementi richiesti e sono tutte ARNs corrette. Per ulteriori informazioni, consulta [Configurare il provider di identità SAML 2.0 con una relazione di attendibilità della parte affidabile e aggiunta di attestazioni](id_roles_providers_create_saml_relying-party.md).
+ Hai caricato il file di metadati più recente dal tuo IdP AWS nel tuo provider SAML. Per ulteriori informazioni, consulta [Consentire ai principali federati SAML 2.0 di accedere a Console di gestione AWS](id_roles_providers_enable-console-saml.md).
+ La policy di attendibilità del ruolo IAM sia stata configurata correttamente. Per ulteriori informazioni, consulta [Metodi per assumere un ruolo](id_roles_manage-assume.md).