

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

# Accesso gestito interattivo dall'utente ed endpoint dell'interfaccia utente ospitati in versione classica
<a name="managed-login-endpoints"></a>

Amazon Cognito attiva gli endpoint di accesso gestiti in questa sezione quando aggiungi un dominio al tuo pool di utenti. Sono pagine Web in cui gli utenti possono completare le operazioni di autenticazione di base di un pool di utenti. Includono pagine per la gestione delle password, l'autenticazione a più fattori (MFA) e la verifica degli attributi.

Le pagine Web che costituiscono l'accesso gestito sono un'applicazione Web front-end per sessioni utente interattive con i clienti. L'app deve richiamare l'accesso gestito nei browser degli utenti. Amazon Cognito non supporta l'accesso programmatico alle pagine Web di questo capitolo. Gli endpoint di federazione in [Endpoint del provider di identità e del relying party](federation-endpoints.md) che restituiscono una risposta JSON possono essere interrogati direttamente nel codice dell'app. I [Endpoint Authorize](authorization-endpoint.md) reindirizzamenti all'accesso gestito o a una pagina di accesso IdP devono inoltre essere aperti nei browser degli utenti.

Tutti gli endpoint del pool di utenti accettano traffico da e indirizzi IP di origine. IPv4 IPv6 

Gli argomenti di questa guida descrivono in dettaglio l'accesso gestito di uso frequente e gli endpoint dell'interfaccia utente ospitati classici. La differenza tra l'accesso gestito e l'interfaccia utente ospitata è visibile, non funzionale. Ad eccezione di`/passkeys/add`, tutti i percorsi sono condivisi tra le due versioni del branding di accesso gestito.

Amazon Cognito rende disponibili le pagine Web seguenti quando si assegna un dominio al pool di utenti.


**Endpoint di accesso gestiti**  

| URL dell'endpoint | Description | Modalità di accesso | 
| --- | --- | --- | 
| https:///login Your user pool domain | Accede agli utenti locali e federati del pool di utenti. |  Esegui il reindirizzamento da endpoint come [Endpoint Authorize](authorization-endpoint.md), `/logout` e `/confirmforgotPassword`. Per informazioni, consulta [Endpoint Login](login-endpoint.md).  | 
| https:///logout Your user pool domain | Disconnette gli utenti del pool di utenti. |  Collegamento diretto. Per informazioni, consulta [Endpoint Logout](logout-endpoint.md).  | 
| https:///ConfirmUser Your user pool domain | Conferma gli utenti che hanno selezionato un collegamento e-mail per verificare il proprio account utente. |  Collegamento selezionato dall'utente in un messaggio di posta elettronica.  | 
| https:///registrazione Your user pool domain | Registra un nuovo utente. La pagina /login indirizza l'utente a /signup quando si seleziona Sign up (Registrati). |  Collegamento diretto con gli stessi parametri di `/oauth2/authorize`.  | 
| https:///conferma Your user pool domain | Dopo che il pool di utenti invia un codice di conferma a un utente che ha effettuato la registrazione, richiede il codice all'utente. |  Solo reindirizzamento da `/signup`.  | 
| https://Your user pool domain/Password dimenticata | Richiede all'utente il nome utente e invia un codice di ripristino della password. La pagina /login indirizza l'utente a /forgotPassword quando si seleziona Forgot your password? (Hai dimenticato la password?). |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cognito/latest/developerguide/managed-login-endpoints.html)  | 
| https:///ConfirmPassword dimenticata Your user pool domain | Richiede all'utente il codice di ripristino della password e una nuova password. La pagina /forgotPassword indirizza l'utente a /confirmforgotPassword quando si seleziona Reset your password (Reimposta la password). | Solo reindirizzamento da /forgotPassword. | 
| https:///resendcode Your user pool domain | Invia un nuovo codice di conferma a un utente che ha effettuato la registrazione nel pool di utenti. |  Solo reindirizzamento dal collegamento **Invia un nuovo codice** a `/confirm`.  | 
| https://passkeys/add Your user pool domain | [Registra una nuova passkey.](amazon-cognito-user-pools-authentication-flow-methods.md#amazon-cognito-user-pools-authentication-flow-methods-passkey) Disponibile solo nell'accesso gestito. |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/cognito/latest/developerguide/managed-login-endpoints.html)  | 

**Topics**
+ [L'endpoint di accesso gestito: `/login`](login-endpoint.md)
+ [L'endpoint di disconnessione con accesso gestito: `/logout`](logout-endpoint.md)

# L'endpoint di accesso gestito: `/login`
<a name="login-endpoint"></a>

L'endpoint di accesso è un server di autenticazione e una destinazione di reindirizzamento da. [Endpoint Authorize](authorization-endpoint.md) È il punto di accesso all'accesso gestito quando non si specifica un provider di identità. Quando generi un reindirizzamento all'endpoint di accesso, la pagina di accesso viene caricata e vengono presentate le opzioni di autenticazione configurate per il client all'utente.

**Nota**  
L'endpoint di accesso è un componente dell'accesso gestito. Nell'app, richiama le pagine di federazione e di accesso gestito che reindirizzano all'endpoint di accesso. L'accesso diretto da parte degli utenti all'endpoint di accesso non è una best practice.

## GET /login
<a name="get-login"></a>

L'endpoint `/login` supporta solo `HTTPS GET` per la richiesta iniziale dell'utente. L'app richiama la pagina in un browser come Chrome o Firefox. Quando esegui il reindirizzamento `/login` da a[Endpoint Authorize](authorization-endpoint.md), vengono trasmessi tutti i parametri che hai fornito nella richiesta iniziale. L'endpoint di accesso supporta tutti i parametri di richiesta dell'endpoint Authorize. Puoi anche accedere direttamente all'endpoint di accesso. Come best practice, crea tutte le sessioni degli utenti in `/oauth2/authorize`.

**Esempio: richiedere all'utente di accedere**

In questo esempio viene visualizzata la schermata di accesso.

```
GET https://mydomain.auth.us-east-1.amazoncognito.com/login?
                response_type=code&
                client_id=ad398u21ijw3s9w3939&
                redirect_uri=https://YOUR_APP/redirect_uri&
                state=STATE&
                scope=openid+profile+aws.cognito.signin.user.admin
```

**Esempio: risposta**  
Il server di autenticazione reindirizza all'app con lo stato e il codice di autorizzazione. IL server deve restituire il codice e lo stato nei parametri della stringa di query e non nel frammento.

```
HTTP/1.1 302 Found
                    Location: https://YOUR_APP/redirect_uri?code=AUTHORIZATION_CODE&state=STATE
```

## Richiesta di accesso avviata dall'utente
<a name="post-login"></a>

Dopo aver caricato l'endpoint `/login`, l'utente può inserire un nome utente e una password e scegliere **Accedi**. Quando lo fanno, generano una richiesta `HTTPS POST` con gli stessi parametri di richiesta di intestazione come richiesta `GET`  e un corpo della richiesta con il nome utente, la password e l'impronta digitale del dispositivo.

# L'endpoint di disconnessione con accesso gestito: `/logout`
<a name="logout-endpoint"></a>

 L'endpoint `/logout` è un endpoint di reindirizzamento. Disconnette l'utente e lo reindirizza a un URL di disconnessione autorizzato per il client dell'app o all'endpoint. `/login` I parametri disponibili in una richiesta GET all'`/logout`endpoint sono personalizzati in base ai casi d'uso di accesso gestito di Amazon Cognito.

L'endpoint di logout è un'applicazione web front-end per sessioni utente interattive con i tuoi clienti. La tua app deve richiamare questo e altri endpoint di accesso gestito nei browser degli utenti.

Per reindirizzare l'utente all'accesso gestito per accedere nuovamente, aggiungi un `redirect_uri` parametro alla tua richiesta. Una richiesta `logout` con un parametro `redirect_uri` deve includere anche i parametri per la richiesta successiva a [Endpoint Login](login-endpoint.md), come `client_id`, `response_type` e `scope`.

Per reindirizzare l'utente a una pagina di tua scelta, aggiungi Disconnessione **consentita URLs al client** dell'app. Nelle richieste degli utenti all'endpoint `logout`, aggiungi i parametri `logout_uri` e `client_id`. Se il valore di `logout_uri` è una delle **uscite consentite URLs** per il client dell'app, Amazon Cognito reindirizza gli utenti a quell'URL.

Con il single logout (SLO) per SAML 2.0, Amazon IdPs Cognito reindirizza innanzitutto l'utente all'endpoint SLO definito nella configurazione IdP. Dopo che il tuo IdP ha reindirizzato l'utente a, Amazon `saml2/logout` Cognito risponde con un altro reindirizzamento alla o dalla tua richiesta. `redirect_uri` `logout_uri` Per ulteriori informazioni, consulta [Disconnessione degli utenti SAML con accesso singolo](cognito-user-pools-saml-idp-sign-out.md).

L'endpoint di logout non disconnette gli utenti dall'OIDC o dai provider di identità social (). IdPs Per disconnettere gli utenti dalla sessione con un IdP esterno, indirizzali alla pagina di disconnessione di quel provider.

## GET /logout
<a name="get-logout"></a>

L'endpoint `/logout` supporta solo `HTTPS GET`. Il client del bacino d'utenza in genere invia questa richiesta tramite un browser di sistema. Il browser è in genere Custom Chrome Tab in Android o Safari View Control in iOS.

### Parametri della richiesta
<a name="get-logout-request-parameters"></a>

*client\$1id*  
L'ID client dell'app per l'app. Per ottenere l'ID del client di un'app, devi registrare l'app nel bacino d'utenza. Per ulteriori informazioni, consulta [Impostazioni specifiche dell'applicazione con client di app](user-pool-settings-client-apps.md).  
Obbligatorio.

*logout\$1uri*  
Reindirizza l'utente a una pagina di disconnessione personalizzata con un parametro *logout\$1uri*. Imposta il suo valore sull'**URL di disconnessione** del client dell'app a cui vuoi reindirizzare l'utente dopo la disconnessione. Utilizza *logout\$1uri* solo con il parametro *client\$1id*. Per ulteriori informazioni, consulta [Impostazioni specifiche dell'applicazione con client di app](user-pool-settings-client-apps.md).  
Puoi utilizzare il parametro *logout\$1uri* anche per reindirizzare l'utente alla pagina di accesso di un altro client di app. Imposta la pagina di accesso per l'altro client di app come **Allowed callback URL** (URL di callback consentito) nel tuo client di app. Nella richiesta all'endpoint `/logout`, imposta il valore del parametro *logout\$1uri* sulla pagina di accesso con codifica URL.  
Amazon Cognito richiede un parametro *logout\$1uri* o *redirect\$1uri* nella richiesta all'endpoint `/logout`. Il parametro *logout\$1uri* reindirizza l'utente a un altro sito Web. Se nella richiesta all'endpoint `/logout` sono inclusi entrambi i parametri *logout\$1uri* e *redirect\$1uri*, Amazon Cognito utilizzerà esclusivamente il parametro *logout\$1uri*, sovrascrivendo il parametro *redirect\$1uri*.

*`nonce`*  
(Facoltativo) Un valore casuale che puoi aggiungere alla richiesta. Il valore nonce fornito è incluso nel token ID emesso da Amazon Cognito. Per proteggersi da attacchi di tipo replay, l'app può analizzare la richiesta `nonce` nel token dell'ID e confrontarlo con quello generato. Per ulteriori informazioni sulla richiesta `nonce`, consulta la sezione relativa alla [convalida del token dell'ID](https://openid.net/specs/openid-connect-core-1_0.html#IDTokenValidation) nella *documentazione dello standard OpenID Connect*.

**redirect\$1uri**  
Reindirizza l'utente alla pagina di accesso per l'autenticazione con il parametro *redirect\$1uri*. Imposta il suo valore sull'**URL di callback consentito** del client dell'app dove vuoi reindirizzare l'utente quando questo ha nuovamente effettuato l'accesso. Utilizza i parametri *client\$1id*, *scope*, *state* e *response\$1type* che vuoi passare all'endpoint `/login`.  
Amazon Cognito richiede un parametro *logout\$1uri* o *redirect\$1uri* nella richiesta all'endpoint `/logout`. *Per reindirizzare l'utente all'`/login`endpoint per riautenticarsi e passare i token all'app, aggiungi un parametro redirect\$1uri.* **Se nella richiesta all'endpoint sono inclusi entrambi i parametri *logout\$1uri* *e redirect\$1uri*, `/logout` Amazon Cognito sovrascrive il parametro redirect\$1uri ed elabora esclusivamente il parametro logout\$1uri.**

*response\$1type*  
La risposta OAuth 2.0 che desideri ricevere da Amazon Cognito dopo l'accesso dell'utente. `code`e `token` sono i valori validi per il parametro *response\$1type*.  
Obbligatorio se si utilizza un parametro *redirect\$1uri*.

*stato*  
Quando l'applicazione aggiunge un parametro di *stato* a una richiesta, Amazon Cognito ne restituisce il valore all'app quando l'`/oauth2/logout`endpoint reindirizza l'utente.  
Aggiungi questo valore alle richieste di protezione contro attacchi [CSRF](https://en.wikipedia.org/wiki/Cross-site_request_forgery).  
Non è possibile impostare il valore di un parametro `state` su una stringa JSON con codifica URL. Per passare una stringa che corrisponda a questo formato in un `state` parametro, codifica la stringa in base64, quindi decodificala nell'applicazione.  
Vivamente consigliato quando si utilizza un parametro *redirect\$1uri*.

*scope*  
Gli ambiti OAuth 2.0 che desideri richiedere ad Amazon Cognito dopo averli disconnessi con *un* parametro redirect\$1uri. Amazon Cognito reindirizza l'utente all'endpoint `/login` con il parametro *scope*nella richiesta all'endpoint `/logout`.  
Facoltativo quando si utilizza un parametro *redirect\$1uri*. Se non includi un parametro *scope*, Amazon Cognito reindirizza l'utente all'endpoint `/login` con un parametro *scope*. Quando Amazon Cognito reindirizza l'utente e compila automaticamente `scope`, il parametro include tutti gli ambiti autorizzati per il client di app.

### Richieste di esempio
<a name="get-logout-request-sample"></a>

**Esempio: disconnettersi e reindirizzare l'utente al client**

Quando le richieste includono `logout_uri` e `client_id`, Amazon Cognito reindirizza le sessioni utente all'URL nel valore di `logout_uri`, ignorando tutti gli altri parametri di richiesta. Questo URL deve essere un URL di disconnessione autorizzato per il client dell'app.

Di seguito è riportato un esempio di richiesta di disconnessione e reindirizzamento a `https://www.example.com/welcome`.

```
GET https://mydomain.auth.us-east-1.amazoncognito.com/logout?
  client_id=1example23456789&
  logout_uri=https%3A%2F%2Fwww.example.com%2Fwelcome
```

**Esempio: disconnettersi e richiedere all'utente di accedere come altro utente**

Quando le richieste vengono omesse `logout_uri` ma forniscono in altro modo i parametri che costituiscono una richiesta ben formata all'endpoint di autorizzazione, Amazon Cognito reindirizza gli utenti all'accesso gestito. L'endpoint di disconnessione aggiunge i parametri della richiesta originale alla destinazione di reindirizzamento.

I parametri aggiuntivi che aggiungi alla richiesta di disconnessione devono essere presenti nell'elenco in. [Parametri della richiesta](#get-logout-request-parameters) Ad esempio, l'endpoint di logout non supporta il reindirizzamento IdP automatico con parametri o. `identity_provider` `idp_identifier` Il parametro `redirect_uri` in una richiesta all'endpoint di logout non è un URL di disconnessione, ma un post-sign-in URL che si desidera trasmettere all'endpoint di autorizzazione.

Di seguito è riportato un esempio di richiesta che disconnette un utente, reindirizza alla pagina di accesso e fornisce un codice di autorizzazione dopo l'accesso. `https://www.example.com`

```
GET https://mydomain.auth.us-east-1.amazoncognito.com/logout?
  response_type=code&
  client_id=1example23456789&
  redirect_uri=https%3A%2F%2Fwww.example.com&
  state=example-state-value&
  nonce=example-nonce-value&
  scope=openid+profile+aws.cognito.signin.user.admin
```