# Abilita l'Identity Provider di Microsoft

<figure><img src="https://242936509-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnnKpOPNK55hq8nWnuDD%2Fuploads%2FKYItcgtqZ78SmOkFYGgS%2Fimage.png?alt=media&#x26;token=64bb2399-bfd8-4e2f-9901-a2fd52b9356d" alt=""><figcaption><p>Login con IDP Microsoft</p></figcaption></figure>

Per consentire ai Member di Crystal di accedere a Crystal con le proprie credenziali Microsoft, l'Utente Admin deve prima impostare Microsoft Azure come Identity Provider.&#x20;

Per fare ciò, come Admin, è necessario seguire un processo che coinvolge sia **Azure** che **Crystal**.&#x20;

Segui questo tutorial.

{% hint style="info" %} <mark style="color:blue;">**Nota Bene**</mark>

Gli Identity Provider possono essere utilizzati anche per [*creare nuovi Gruppi*](https://docs.igenius.ai/italiano/crystal-console/utenti/gruppi)*.*
{% endhint %}

## Step 1 - Aggiungere una registrazione app sul portale Microsoft Azure

* Per prima cosa devi accedere a [Microsoft Azure](#step-1-aggiungere-una-registrazione-app-sul-portale-azure).
* Quindi cerca **App registrations** nella barra di ricerca in alto.

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/kfPBSr4NNz8gkogRdP7u/image.png)

* Ora clicca **+ New registration**.

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/sMKEZzxHIumdWalV8PVG/image.png)

* Ora dovrai compilare il modulo di registrazione per l’App seguendo questi passaggi:

1. scegli un nome per registrare l’app di crystal su Azure (per esempio potresti usare [crystal.ai](http://crystal.ai/));
2. seleziona i tipi di account che desideri supportare. Se scegli **Accounts** solo su questa directory organizzativa, solo gli account registrati nell’attuale Azure AD saranno in grado di accedere a crystal;
3. fornisci un URI redirect per OAuth2 (puoi anche configurarlo in un secondo momento ma dovresti seguire questa struttura: https\://{your-crystal-tenant-name}.crystal.ai/login-manager/login/azure/complete).

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/u8X2M4Rq3Wiceb7xK9Tu/image.png)

## Step 2 - Crea un client secret per l’app

Dopo aver seguito le istruzioni dello Step 1, potrai vedere la tua nuova registrazione dell’app tra l’elenco delle App registrations. Ora dovrai creare un client secret, seguendo questi passaggi:

* Clicca su **Certificates & secrets** nel menu a sinistra.

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/2czTiN1ycyzmPrLwDyj6/image.png)

* Sulla tab **Client secrets** clicca su **+ New client secret,** poi scegli un nome significativo e una data di scadenza che si adatti ai tuoi bisogni.&#x20;

{% hint style="info" %}
Ricorda che quando il client secret scadrà, dovrai riconfigurare crystal, quindi ti consigliamo di scegliere una durata **Custom** e di mantenerla abbastanza a lungo da non doverti preoccupare della scadenza.
{% endhint %}

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/IrgrqVjkjUEL7WXhqqpY/image.png)

* **Copia il valore segreto e salvalo da qualche parte:** ti servirà dopo, quando dovrai configurare crystal nello step 4 (è il **Secret Code** nel modulo della configurazione del Provider di Identità).

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/sVXkg4rUhocGrTEb1VRI/image.png)

## Step 3 - Concedi le autorizzazioni API all’app

* Clicca su **API permissions** nel menu di sinistra. Dovresti vedere già configurate le autorizzazioni per **User.Read.** Clicca **+Add a permission.**

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/jTO1a82MmONwUUpKeK53/image.png)

* Ora clicca sul banner di **Microsoft Graph**.

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/luKlhJWsE2bvf3X5UFrZ/image.png)

* Clicca su **Application permissions** e cerca **Group**, quindi spunta l’opzione **Group.Read.All permission.**

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/DX9FY2sJv0gQuOt4uCmi/image.png)

* Se non sei l’amministratore della directory dovresti vedere un segno arancione sullo status al posto del pallino verde. In questo caso dovresti chiedere al tuo amministratore di autorizzare i nuovi permessi. Se sei l’amministratore puoi autorizzarli cliccando **Grant admin consent for.**

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/GorWLftgUwHZDxM4Qu3n/image.png)

{% hint style="info" %} <mark style="color:blue;">**Nota Bene**</mark>\
In totale, devi abilitare 4 permessi:

* **User.Read** - già selezionato
* **User.Read.All** - da selezionare manualmente
* **Group.Read.All** - da selezionare manualmente
* **GroupMember.Read.All** *-* da selezionare manualmente
  {% endhint %}

## Step 4 - Configura l’IDP Azure IDP nella Console Self-Service di crystal

* Accedi alla Console Self-Service di crystal e vai nella sezione Users. Clicca sull’etichetta del Provider d’Identità e poi clicca su **Add new IDP.**

<figure><img src="https://242936509-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnnKpOPNK55hq8nWnuDD%2Fuploads%2F4n9GKgQMrwKuGHNnxzNN%2Fimage.png?alt=media&#x26;token=72481a3d-3d15-4a12-b631-0aef2a94cb34" alt=""><figcaption></figcaption></figure>

<figure><img src="https://242936509-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnnKpOPNK55hq8nWnuDD%2Fuploads%2FHtoV4cveSZQAVSXhPY2W%2Fimage.png?alt=media&#x26;token=a35ffd2a-a7dc-4d36-816c-8cd1def86c02" alt=""><figcaption></figcaption></figure>

* Seleziona **Azure Active Directory.**

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/0aF7oC8c02nkWDOJwFKr/image.png)

* Ora completa il modulo con le credenziali che hai configurato negli step precedenti di questa guida.

**Ecco dove puoi trovare le credenziali che ti servono:**

1. Client ID eTenant ID si trovano cliccando su **Overview** dal menu di sinistra della tua registrazione crystal nel portale Azure.

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/38GJDo0LfuMUekY2FtfI/image.png)

2\. Il URI Redirect si trova cliccando su **Authentication** dal menu di sinistra della tua registrazione crystal nel portale Azure. Deve essere lo stesso e la struttura sarà la seguente: [https://{your-crystal-tenant-name}.crystal.ai/login-manager/login/azure/complete](about:blank)**.**

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/Yb2ttlkub94OHkrKiLG4/image.png)

3\. Il Secret Code si trova cliccando **Certificates & Secrets** dal menu di sinistra della tua registrazione crystal nel portale Azure. Se non lo hai salvato quando lo hai generato, dovrai crearne uno nuovo.

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/R9LeAhVLysAzR862abpR/secret%20value%20\(1\).png)

Una volta compilato il modulo, clicca su **Test and connect.**

![](https://content.gitbook.com/content/cnnKpOPNK55hq8nWnuDD/blobs/g9jWCkQIOe12B8qJsbVm/image.png)

Se la connessione riesce, sarai in grado di [invitare gli Utenti](https://docs.igenius.ai/italiano/crystal-console/utenti/invita-gli-utenti-su-crystal/invita-gli-utenti-tramite-identity-provider) da Azure e *abilitare l'accesso con le credenziali Microsoft per loro* (e di [creare nuovi Gruppi](https://docs.igenius.ai/italiano/crystal-console/utenti/gruppi) più facilmente).

***
