

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

# Verifica del tuo modello di autorizzazione
<a name="authorization-testing"></a>

Per comprendere l'effetto della decisione di autorizzazione di Amazon Verified Permissions quando distribuisci la tua applicazione, puoi valutare le tue politiche man mano che le sviluppi con [Utilizzo del banco di prova Amazon Verified Permissions](test-bench.md) e con le richieste API REST HTTPS alle autorizzazioni verificate. Il banco di prova è uno strumento Console di gestione AWS per valutare le richieste e le risposte di autorizzazione nel tuo archivio di policy.

L'API REST di Verified Permissions è il passo successivo dello sviluppo, che prevede il passaggio da una comprensione concettuale alla progettazione di applicazioni. [L'API Verified Permissions accetta richieste di autorizzazione con [IsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html)e [BatchIsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_BatchIsAuthorized.html)come [richieste AWS API firmate](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html) agli endpoint di servizio regionali. [IsAuthorizedWithToken](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html)](https://docs.aws.amazon.com/general/latest/gr/verifiedpermissions.html) Per testare il tuo modello di autorizzazione, puoi generare richieste con qualsiasi client API e verificare che le tue politiche restituiscano le decisioni di autorizzazione come previsto.

Ad esempio, è possibile eseguire il test `IsAuthorized` in un archivio di policy di esempio con la seguente procedura.

------
#### [ Test bench ]

1. Apri la console delle autorizzazioni verificate nella console delle [autorizzazioni verificate](https://console.aws.amazon.com/verifiedpermissions/). Crea un policy store dal **Policy Store di Sample** con il nome. **DigitalPetStore**

1. Seleziona **Test bench** nel tuo nuovo policy store.

1. Compila la tua richiesta di test bench dal [IsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html#API_IsAuthorized_Examples)riferimento all'API Verified Permissions. I seguenti dettagli replicano le condizioni dell'**Esempio 4** che fanno riferimento all'esempio. **DigitalPetStore**

   1. Imposta Alice come principale. **Affinché il preside agisca**, scegli `DigitalPetStore::User` ed entra`Alice`.

   1. Imposta il ruolo di Alice come cliente. Scegli **Aggiungi un genitore**`DigitalPetStore::Role`, scegli e inserisci Cliente.

   1. Imposta la risorsa come ordine «1234». Per **la risorsa su cui agisce il principale**, scegli `DigitalPetStore::Order` ed inserisci`1234`.

   1. La `DigitalPetStore::Order` risorsa richiede un `owner` attributo. Imposta Alice come proprietaria dell'ordine. Scegli `DigitalPetStore::User` ed entra `Alice`

   1. Alice ha richiesto di visualizzare l'ordine. Per **Azione che il preside sta intraprendendo**, scegli`DigitalPetStore::Action::"GetOrder"`.

1. Scegli **Esegui richiesta di autorizzazione**. In un archivio di policy non modificato, questa richiesta genera una `ALLOW` decisione. Nota la **politica di soddisfazione** che ha restituito la decisione.

1. Scegli **Politiche** dalla barra di navigazione a sinistra. Consulta la politica statica con la descrizione **Customer Role - Get Order**.

1. Tieni presente che Verified Permissions ha consentito la richiesta perché il responsabile ricopriva il ruolo di cliente ed era il proprietario della risorsa.

------
#### [ REST API ]

1. Apri la console delle autorizzazioni verificate nella console delle autorizzazioni [verificate](https://console.aws.amazon.com/verifiedpermissions/). Crea un policy store dal **Policy Store di Sample** con il nome. **DigitalPetStore**

1. Annota l'**ID del Policy Store** del tuo nuovo Policy Store.

1. Dal riferimento [IsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html#API_IsAuthorized_Examples)all'API Verified Permissions, copia il corpo della richiesta dell'**Esempio 4** che fa riferimento all'**DigitalPetStore**esempio.

1. Apri il tuo client API e crea una richiesta all'endpoint di servizio regionale per il tuo policy store. [Compila le intestazioni come mostrato nell'esempio.](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html#API_IsAuthorized_Examples)

1. Incolla il corpo della richiesta di esempio e modifica il valore di nell'ID del `policyStoreId` Policy Store che hai annotato in precedenza.

1. Invia la richiesta ed esamina i risultati. In un archivio di **DigitalPetStore**policy predefinito, questa richiesta restituisce una `ALLOW` decisione.

------

È possibile apportare modifiche alle politiche, allo schema e alle richieste nell'ambiente di test per modificare i risultati e produrre decisioni più complesse.

1. Modifica la richiesta in modo da modificare la decisione presa in Autorizzazioni verificate. Ad esempio, modifica il ruolo di Alice `Employee` o modifica l'`owner`attributo dell'ordine 1234 in`Bob`.

1. Modifica le politiche in modo da influire sulle decisioni di autorizzazione. Ad esempio, modifica la politica con la descrizione **Customer Role - Get Order** per rimuovere la condizione che `User` deve essere il proprietario della `Resource` e modifica la richiesta in modo che `Bob` desideri visualizzare l'ordine.

1. Modifica lo schema per consentire alle politiche di prendere decisioni più complesse. Aggiorna le entità della richiesta in modo che Alice possa soddisfare i nuovi requisiti. Ad esempio, modifica lo schema `User` per consentire di essere membro di `ActiveUsers` o`InactiveUsers`. Aggiorna la politica in modo che solo gli utenti attivi possano visualizzare i propri ordini. Aggiorna le entità della richiesta in modo che Alice sia un utente attivo o inattivo.