

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

# Configurazione di Login with Amazon come IdP di pool di identità
<a name="amazon"></a>

I pool di identità di Amazon Cognito funzionano con Login with Amazon per fornire l'autenticazione federata agli utenti delle app per dispositivi mobili e Web. Questa sezione spiega come registrare e impostare la tua applicazione con Login with Amazon come provider di identità.

Configura Login with Amazon per l'uso di Amazon Cognito nel [portale per sviluppatori](https://developer.amazon.com/login-with-amazon). Per ulteriori informazioni, consulta [Configurazione di Login with Amazon](https://developer.amazon.com/docs/login-with-amazon/faq.html#setting-up-login-with-amazon) nelle domande frequenti (FAQ) di Login with Amazon.

**Nota**  
Per integrare Login with Amazon in un'applicazione Xamarin, segui la [Guida introduttiva di Xamarin](https://developer.xamarin.com/guides/cross-platform/getting_started/).

**Nota**  
Non puoi integrare in modo nativo Login with Amazon nella piattaforma Unity. Puoi utilizzare invece una visualizzazione Web e seguire il flusso di accesso del browser.

## Configurazione di Login with Amazon
<a name="login-with-amazon-setup"></a>

**Implementazione di Login with Amazon**

Nel [portale per sviluppatori di Amazon](https://developer.amazon.com/apps-and-games/login-with-amazon), puoi configurare un' OAuth applicazione da integrare con il tuo pool di identità, trovare la documentazione di Login with Amazon e scaricarla SDKs. Scegli **Developer console** (Console per sviluppatori), quindi **Login with Amazon** nel portale per gli sviluppatori. Puoi creare un profilo di sicurezza per la tua applicazione e quindi costruire meccanismi di autenticazione Login with Amazon nella tua app. Consulta [Ottenere le credenziali](getting-credentials.md) per ulteriori informazioni su come integrare l'autenticazione Login with Amazon con la tua app.

Amazon rilascia un **ID client OAuth ** 2.0 per il tuo nuovo profilo di sicurezza. Puoi trovare l'**ID client** nella scheda **Web Settings** (Impostazioni Web) del profilo di sicurezza. Inserisci l'**ID del profilo di sicurezza** nel campo **ID app** dell'IdP Login with Amazon nel pool di identità.

**Nota**  
Inserisci l'**ID del profilo di sicurezza** nel campo **ID app** dell'IdP Login with Amazon nel pool di identità. Ciò differisce dai pool di utenti, che utilizzano l'**ID client.**

## Configurazione del provider esterno nella console di Amazon Cognito
<a name="login-with-amazon-configure-provider"></a>

**Per aggiungere un gestore dell'identità digitale Login with Amazon**

1. Scegli **Pool di identità** dalla [console di Amazon Cognito](https://console.aws.amazon.com/cognito/home). Seleziona un pool di identità.

1. Seleziona la scheda **Accesso utente**.

1. Seleziona **Aggiungi provider di identità**.

1. Scegli **Login with Amazon**.

1. Inserisci l'**ID app** del OAuth progetto che hai creato in [Login with Amazon](https://developer.amazon.com/apps-and-games/login-with-amazon). Per ulteriori informazioni, consultare la [documentazione di Login with Amazon](https://developer.amazon.com/docs/login-with-amazon/documentation-overview.html).

1. Per impostare il ruolo richiesto da Amazon Cognito quando emette credenziali per gli utenti che hanno eseguito l'autenticazione con questo provider, configura **Impostazioni ruolo**.

   1. Puoi assegnare agli utenti di tale IdP il **ruolo predefinito** impostato quando hai configurato il **ruolo autenticato** oppure selezionare l'opzione **Scegli ruolo con regole**.

     1. Se scegli l'opzione **Scegli ruolo con regole**, inserisci la **Richiesta** dall'autenticazione dell'utente, l'**Operatore** con cui desideri confrontare la richiesta, il **Valore** che determina una corrispondenza a questa scelta di ruolo e il **Ruolo** che desideri assegnare quando l'**Assegnazione del ruolo** corrisponde. Seleziona **Aggiungi un altro** per creare una regola aggiuntiva basata su una condizione diversa.

     1. Scegli una **Risoluzione del ruolo**. Quando le richieste dell'utente non corrispondono alle regole, puoi negare le credenziali o emettere credenziali per il **Ruolo autenticato**.

1. Per modificare i tag principali assegnati da Amazon Cognito quando emette credenziali per gli utenti che hanno eseguito l'autenticazione con questo provider, configura **Attributi per il controllo degli accessi**.

   1. Per non applicare alcun tag principale, scegli **Inattivo**.

   1. Per applicare i tag principali in base alle richieste `sub` e `aud`, scegli **Utilizza mappature predefinite**.

   1. Per creare un tuo schema personalizzato di attributi dei tag principali, scegli **Utilizza mappature personalizzate**. Quindi, inserisci una **Chiave tag** che deve essere originata da ciascuna **Richiesta** che desideri rappresentare in un tag.

1. Seleziona **Salva modifiche**.

## Utilizzo di Login with Amazon: Android
<a name="set-up-amazon-1.android"></a>

Dopo aver autenticato Amazon Login, puoi passare il token al provider di credenziali Amazon Cognito nel metodo OnSuccess dell'interfaccia. TokenListener Il codice sarà il seguente:

```
@Override
public void onSuccess(Bundle response) {
    String token = response.getString(AuthzConstants.BUNDLE_KEY.TOKEN.val);
    Map<String, String> logins = new HashMap<String, String>();
    logins.put("www.amazon.com", token);
    credentialsProvider.setLogins(logins);
}
```

## Utilizzo di Login with Amazon: iOS - Objective-C
<a name="set-up-amazon-1.ios-objc"></a>

Dopo aver autenticato l'accesso ad Amazon, puoi passare il token al provider di credenziali Amazon Cognito nel modo requestDidSucceed seguente: AMZNAccess TokenDelegate

```
- (void)requestDidSucceed:(APIResult \*)apiResult {
    if (apiResult.api == kAPIAuthorizeUser) {
        [AIMobileLib getAccessTokenForScopes:[NSArray arrayWithObject:@"profile"] withOverrideParams:nil delegate:self];
    }
    else if (apiResult.api == kAPIGetAccessToken) {
        credentialsProvider.logins = @{ @(AWSCognitoLoginProviderKeyLoginWithAmazon): apiResult.result };
    }
}}
```

## Utilizzo di Login with Amazon: iOS - Swift
<a name="set-up-amazon-1.ios-swift"></a>

Una volta autenticato l'accesso ad Amazon, puoi passare il token al provider di credenziali di Amazon Cognito nel metodo `requestDidSucceed` di `AMZNAccessTokenDelegate`:

```
func requestDidSucceed(apiResult: APIResult!) {
    if apiResult.api == API.AuthorizeUser {
        AIMobileLib.getAccessTokenForScopes(["profile"], withOverrideParams: nil, delegate: self)
    } else if apiResult.api == API.GetAccessToken {
        credentialsProvider.logins = [AWSCognitoLoginProviderKey.LoginWithAmazon.rawValue: apiResult.result]
    }
}
```

## Usa Login with Amazon: JavaScript
<a name="set-up-amazon-1.javascript"></a>

Dopo che l'utente ha effettuato l'autenticazione con Login with Amazon e viene reindirizzato al tuo sito Web, il token di accesso di Login with Amazon viene fornito nella stringa di query. Passa tale token alla mappa degli accessi delle credenziali.

```
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
   IdentityPoolId: 'IDENTITY_POOL_ID',
   Logins: {
       'www.amazon.com': 'Amazon Access Token'
   }
});
```