

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

# Altre opzioni di applicazione
<a name="getting-started-user-pools-application-other-options"></a>

Potresti avere un'interfaccia utente dell'applicazione esistente che desideri integrare con l'autenticazione Amazon Cognito. Potresti anche avere le tue pagine di autenticazione esistenti con una configurazione di directory meno funzionale rispetto ai pool di utenti di Amazon Cognito. Puoi aggiungere o sostituire un componente di autenticazione a un'applicazione di questo tipo con integrazioni di Amazon Cognito AWS SDKs per una varietà di linguaggi di programmazione. Di seguito sono riportati alcuni esempi.

Se crei un pool di utenti per questo scopo nella console Amazon Cognito, potrebbe non essere necessario disporre di un [dominio del pool di utenti](cognito-user-pools-assign-domain.md) che ospita pagine di accesso interattive e servizi OpenID Connect (OIDC). Il processo di creazione del pool di utenti nella console genera automaticamente un dominio per te. Puoi eliminare questo dominio dalla scheda **Dominio** del tuo pool di utenti. Altre opzioni includono la creazione programmatica di risorse Amazon Cognito per la tua applicazione con richieste API e con le opzioni di configurazione automatizzate AWS SDKs nella CLI. AWS Amplify Per ulteriori informazioni, consulta [Integrazione dell'autenticazione e dell'autorizzazione di Amazon Cognito con app web e mobili](cognito-integrate-apps.md).

**Topics**
+ [Configura un esempio di applicazione React a pagina singola](#getting-started-test-application-react)
+ [Configura un'app Android di esempio con Flutter](#getting-started-test-application-flutter)

## Configura un esempio di applicazione React a pagina singola
<a name="getting-started-test-application-react"></a>

In questo tutorial, creerai un'applicazione React a pagina singola in cui potrai testare la registrazione, la conferma e l'accesso degli utenti. React è una libreria JavaScript basata su app web e mobili, con particolare attenzione all'interfaccia utente (UI). Questa applicazione di esempio illustra alcune funzioni di base dei pool di utenti di Amazon Cognito. Se hai già esperienza nello sviluppo di app web con React, [scarica l'app di esempio](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3/example_code/cognito-identity-provider/scenarios/cognito-developer-guide-react-example) da. GitHub

La schermata seguente mostra la pagina di autenticazione iniziale dell'applicazione che creerai.

![\[Uno screenshot della pagina di registrazione per un'applicazione web di esempio basata su React.\]](http://docs.aws.amazon.com/it_it/cognito/latest/developerguide/images/cognito-getting-started-react-app-running.png)


Per configurare questa applicazione, il pool di utenti deve soddisfare i seguenti requisiti:
+ Gli utenti possono accedere con il proprio indirizzo e-mail. **Opzioni di accesso al pool di utenti Cognito****: e-mail.**
+ I nomi utente non fanno differenza tra maiuscole e minuscole. **Requisiti relativi al nome utente**: **l'opzione Fai distinzione tra maiuscole e minuscole** non è selezionata.
+ L'autenticazione a più fattori (MFA) non è richiesta. **Applicazione della MFA**: **MFA** opzionale.
+ Il pool di utenti verifica gli attributi per la conferma del profilo utente con un messaggio di posta elettronica. **Attributi da verificare**: **invio di un messaggio e-mail, verifica dell'indirizzo e-mail**.
+ L'email è l'unico attributo obbligatorio. **Attributi obbligatori**: **email**.
+ Gli utenti possono registrarsi nel tuo pool di utenti. **Autoregistrazione**: è selezionata **l'opzione Abilita l'autoregistrazione**.
+ Il client iniziale dell'app è un client pubblico che consente l'accesso con nome utente e password. **Tipo di app**: **Client pubblico**, **Flussi di autenticazione**:. `ALLOW_USER_PASSWORD_AUTH`

### Creazione di un'applicazione
<a name="getting-started-test-application-react-create-app"></a>

Per creare questa applicazione, è necessario configurare un ambiente di sviluppo. I requisiti dell'ambiente di sviluppo sono:

1. Node.js è installato e aggiornato.

1. Node package manager (npm) è installato e aggiornato almeno alla versione 10.2.3.

1. L'ambiente è accessibile sulla porta TCP 5173 in un browser web.

**Per creare un esempio di applicazione web React**

1. Accedi al tuo ambiente di sviluppo e vai alla directory principale dell'applicazione.

   ```
   cd ~/path/to/project/folder/
   ```

1. Crea un nuovo servizio React.

   ```
   npm create vite@latest frontend-client -- --template react-ts
   ```

1. Clona la [cartella del `cognito-developer-guide-react-example` progetto](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3/example_code/cognito-identity-provider/scenarios/cognito-developer-guide-react-example) dal repository degli esempi di AWS codice in poi. GitHub

   ```
   cd ~/some/other/path
   ```

   ```
   git clone https://github.com/awsdocs/aws-doc-sdk-examples.git
   ```

   ```
   cp -r ./aws-doc-sdk-examples/javascriptv3/example_code/cognito-identity-provider/scenarios/cognito-developer-guide-react-example/frontend-client ~/path/to/project/folder/
   ```

1. Vai alla `src` directory del tuo progetto.

   ```
   cd ~/path/to/project/folder/frontend-client/src
   ```

1. Modifica `config.json` e sostituisci i seguenti valori:

   1. Sostituisci `YOUR_AWS_REGION` con un Regione AWS codice. Ad esempio: `us-east-1`.

   1. Sostituiscilo `YOUR_COGNITO_USER_POOL_ID` con l'ID del pool di utenti che hai designato per il test. Ad esempio: `us-east-1_EXAMPLE`. Il pool di utenti deve appartenere a Regione AWS quello inserito nel passaggio precedente.

   1. Sostituiscilo `YOUR_COGNITO_APP_CLIENT_ID` con l'ID del client dell'app che hai designato per il test. Ad esempio: `1example23456789`. Il client dell'app deve essere incluso nel pool di utenti del passaggio precedente.

1. Se desideri accedere all'applicazione di esempio da un IP diverso da`localhost`, modifica `package.json` e modifica la riga `"dev": "vite",` in`"dev": "vite --host 0.0.0.0",`.

1. Installa la tua applicazione.

   ```
   npm install
   ```

1. Avvia l'applicazione.

   ```
   npm run dev
   ```

1. Accedere all'applicazione in un browser Web all'indirizzo `http://localhost:5173` o`http://[IP address]:5173`.

1. Registra un nuovo utente con un indirizzo email valido.

1. Recupera il codice di conferma dal tuo messaggio e-mail. Inserisci il codice di conferma nell'applicazione.

1. Accedi con nome utente e password.

### Creazione di un ambiente di sviluppo React con Amazon Lightsail
<a name="getting-started-test-application-react-lightsail"></a>

Un modo rapido per iniziare a usare questa applicazione è creare un server cloud virtuale con Amazon Lightsail. 

Con Lightsail, puoi creare rapidamente una piccola istanza di server preconfigurata con i prerequisiti per questa applicazione di esempio. Puoi accedere tramite SSH alla tua istanza con un client basato su browser e connetterti al server web con un indirizzo IP pubblico o privato.

**Per creare un'istanza Lightsail per questa applicazione di esempio**

1. Vai alla console [Lightsail](https://lightsail.aws.amazon.com/ls/webapp/). Se richiesto, inserisci le tue credenziali. AWS 

1. Seleziona **Crea istanza**.

1. **Per **Seleziona una piattaforma**, scegli Linux/Unix.**

1. **Per **Seleziona un progetto, scegli Node.js**.**

1. In **Identifica la tua istanza**, assegna un nome descrittivo al tuo ambiente di sviluppo.

1. Seleziona **Crea istanza**.

1. **Dopo che Lightsail ha creato l'istanza, selezionala e nella scheda Connetti scegli **Connetti** tramite SSH.**

1. Una sessione SSH si apre in una finestra del browser. Esegui `node -v` e `npm -v` conferma che la tua istanza è stata fornita con Node.js e la versione minima di npm 10.2.3.

1. Procedi con la [configurazione dell'applicazione React.](#getting-started-test-application-react)

## Configura un'app Android di esempio con Flutter
<a name="getting-started-test-application-flutter"></a>

In questo tutorial, creerai un'applicazione mobile in Android Studio in cui potrai emulare un dispositivo e testare la registrazione, la conferma e l'accesso degli utenti. Questa applicazione di esempio crea un client mobile di base per pool di utenti Amazon Cognito per Android in Flutter. Se hai già esperienza nello sviluppo di app per dispositivi mobili con Flutter, [scarica l'app di esempio](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/kotlin/usecases/cognito_flutter_mobile_app) da. GitHub

La schermata seguente mostra l'app in esecuzione su un dispositivo Android virtuale.

![\[Uno screenshot della pagina di registrazione per un'app Android di esempio virtualizzata.\]](http://docs.aws.amazon.com/it_it/cognito/latest/developerguide/images/cognito-getting-started-android-app-running.png)


Per configurare questa applicazione, il pool di utenti deve soddisfare i seguenti requisiti:
+ Gli utenti possono accedere con il proprio indirizzo e-mail. **Opzioni di accesso al pool di utenti Cognito****: e-mail.**
+ I nomi utente non fanno differenza tra maiuscole e minuscole. **Requisiti relativi al nome utente**: **l'opzione Fai distinzione tra maiuscole e minuscole** non è selezionata.
+ L'autenticazione a più fattori (MFA) non è richiesta. **Applicazione della MFA**: **MFA** opzionale.
+ Il pool di utenti verifica gli attributi per la conferma del profilo utente con un messaggio di posta elettronica. **Attributi da verificare**: **invio di un messaggio e-mail, verifica dell'indirizzo e-mail**.
+ L'email è l'unico attributo obbligatorio. **Attributi obbligatori**: **email**.
+ Gli utenti possono registrarsi nel tuo pool di utenti. **Autoregistrazione**: è selezionata **l'opzione Abilita l'autoregistrazione**.
+ Il client iniziale dell'app è un client pubblico che consente l'accesso con nome utente e password. **Tipo di app**: **Client pubblico**, **Flussi di autenticazione**:. `ALLOW_USER_PASSWORD_AUTH`

### Creazione di un'applicazione
<a name="getting-started-test-application-flutter-create-app"></a>

**Per creare un'app Android di esempio**

1. Installa [Android Studio](https://developer.android.com/studio) e gli strumenti da [riga di comando](https://developer.android.com/tools).

1. In Android Studio, installa il plug-in [Flutter](https://docs.flutter.dev/get-started/editor?tab=androidstudio).

1. Crea un nuovo progetto Android Studio dal contenuto della `cognito_flutter_mobile_app` directory in [questa app di esempio](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/kotlin/usecases/cognito_flutter_mobile_app).

   1. Modifica `assets/config.json` e sostituisci `<<YOUR USER POOL ID>>` e `<< YOUR CLIENT ID>>` con il tuo pool IDs di utenti e il client dell'app.

1. Installa [Flutter](https://docs.flutter.dev/get-started/install).

   1. Aggiungi Flutter alla tua variabile PATH.

   1. Accetta le licenze con il seguente comando.

      `flutter doctor --android-licenses`

   1. Verifica il tuo ambiente Flutter e installa tutti i componenti mancanti.

      `flutter doctor`

      1. Se mancano dei componenti, esegui `flutter doctor -v` per scoprire come risolvere il problema.

   1. Passa alla directory del tuo nuovo progetto Flutter e installa le dipendenze.

      1. Esegui `flutter pub add amazon_cognito_identity_dart_2`.

   1. Esegui `flutter pub add flutter_secure_storage`.

1. Crea un dispositivo Android virtuale.

   1. Nella GUI di Android Studio, crea un nuovo dispositivo con il [gestore dispositivi](https://developer.android.com/studio/run/managing-avds).

   1. Nella CLI, esegui. `flutter emulators --create --name android-device`

1. Avvia il tuo dispositivo Android virtuale.

   1. Nella GUI di Android Studio, seleziona l'![\[Play button icon with a blue triangle pointing to the right.\]](http://docs.aws.amazon.com/it_it/cognito/latest/developerguide/images/cognito-getting-started-android-virtual-device-start.png)icona di avvio accanto al tuo dispositivo virtuale.

   1. Nella CLI, esegui. `flutter emulators --launch android-device`

1. Avvia l'app sul tuo dispositivo virtuale.

   1. Nella GUI di Android Studio, seleziona l'icona di distribuzione. ![\[Green play button icon representing a start or play action.\]](http://docs.aws.amazon.com/it_it/cognito/latest/developerguide/images/cognito-getting-started-android-app-start.png)

   1. Nella CLI, esegui. `flutter run`

1. Accedi al tuo dispositivo virtuale in esecuzione in Android Studio.

1. Registra un nuovo utente con un indirizzo email valido.

1. Recupera il codice di conferma dal tuo messaggio e-mail. Inserisci il codice di conferma nell'applicazione.

1. Accedi con nome utente e password.