Condividi tramite


Esercitazione: Sviluppare un endpoint SCIM di esempio in Microsoft Entra ID

Questa esercitazione descrive come distribuire il codice di riferimento SCIM con servizio app di Azure. Testare quindi il codice usando uno strumento come cURL o tramite l'integrazione con il servizio di provisioning Di Microsoft Entra. L'esercitazione è destinata agli sviluppatori che vogliono iniziare a usare SCIM o a chiunque sia interessato a testare un endpoint SCIM.

In questa esercitazione apprenderai a:

  • Distribuire l'endpoint SCIM in Azure.
  • Testare l'endpoint SCIM.

Distribuire l'endpoint SCIM in Azure

La procedura descritta di seguito consente di distribuire l'endpoint SCIM in un servizio usando Visual Studio 2019 e Visual Studio Code con il servizio app di Azure. Il codice di riferimento SCIM può essere eseguito in locale, ospitato da un server locale o distribuito in un altro servizio esterno. Per informazioni sul provisioning di un endpoint SCIM, vedere Esercitazione: Sviluppare e pianificare il provisioning per un endpoint SCIM.

Ottenere e distribuire l'app di esempio

Passare al codice di riferimento da GitHub e selezionare Clona o scarica. Selezionare Apri in Desktop oppure copiare il collegamento, aprire Visual Studio e selezionare Clona o estrai codice per immettere il collegamento copiato e creare una copia locale. Salvare i file in una cartella in cui la lunghezza totale del percorso è di 260 o meno caratteri.

  1. In Visual Studio assicurarsi di accedere all'account che ha accesso alle risorse di hosting.

  2. In Esplora soluzioni aprire Microsoft.SCIM.sln e fare clic con il pulsante destro del mouse sul file Microsoft.SCIM.WebHostSample. Seleziona Pubblica.

    Screenshot che mostra il file di esempio.

    Nota

    Per eseguire questa soluzione in locale, fare doppio clic sul progetto e selezionare IIS Express per avviare il progetto come pagina Web con un URL host locale. Per altre informazioni, vedere Panoramica di IIS Express.

  3. Selezionare Crea profilo e assicurarsi che servizio app e Crea nuovo siano selezionati.

    Screenshot che mostra la finestra Pubblica.

  4. Scorrere le opzioni della finestra di dialogo e rinominare l'app in un nome di propria scelta. Questo nome viene usato sia nell'app che nell'URL dell'endpoint SCIM.

    Screenshot che mostra la creazione di un nuovo servizio app.

  5. Selezionare il gruppo di risorse da usare e selezionare Pubblica.

    Screenshot che mostra la pubblicazione di un nuovo servizio app.

Configurare il servizio app

Passare all'applicazione in Servizio app di Azure>Configurazione e selezionare Nuova impostazione dell'applicazione per aggiungere l'impostazione Token__TokenIssuer con il valore https://sts.windows.net/<tenant_id>/. Sostituire <tenant_id> con l'ID tenant di Microsoft Entra.

Screenshot che mostra la finestra Impostazioni applicazione.

Quando si testa l'endpoint con un'applicazione aziendale nell' interfaccia di amministrazione di Microsoft Entra, sono disponibili due opzioni. È possibile mantenere l'ambiente in Development e fornire il token di test dall'endpoint /scim/token oppure modificare l'ambiente in Production e lasciare vuoto il campo del token.

Ecco fatto! L'endpoint SCIM è ora pubblicato ed è possibile usare l'URL del servizio app di Azure per testare l'endpoint SCIM.

Testare l'endpoint SCIM

Le richieste a un endpoint SCIM richiedono l'autorizzazione. Lo standard SCIM include più opzioni disponibili. Le richieste possono usare cookie, autenticazione di base, autenticazione client TLS o uno dei metodi elencati in RFC 7644.

Assicurarsi di evitare metodi non sicuri, ad esempio nome utente e password, a favore di un metodo più sicuro, ad esempio OAuth. Microsoft Entra ID supporta token di connessione di lunga durata (per le applicazioni della raccolta e non della raccolta) e la concessione di autorizzazione OAuth (per le applicazioni della raccolta).

Nota

I metodi di autorizzazione forniti nel repository sono solo per i test. Integrandosi con Microsoft Entra ID, è possibile esaminare le indicazioni per l'autorizzazione. Vedere Pianificare il provisioning per un endpoint SCIM.

L'ambiente di sviluppo consente funzionalità non sicure per la produzione, ad esempio il codice di riferimento per controllare il comportamento della convalida del token di sicurezza. Il codice di convalida del token usa un token di sicurezza autofirmato e la chiave di firma viene archiviata nel file di configurazione. Vedere il parametro Token:IssuerSigningKey nel file appsettings.Development.json.

"Token": {
    "TokenAudience": "Microsoft.Security.Bearer",
    "TokenIssuer": "Microsoft.Security.Bearer",
    "IssuerSigningKey": "A1B2C3D4E5F6A1B2C3D4E5F6",
    "TokenLifetimeInMins": "120"
}

Nota

Quando si invia una richiesta GET all'endpoint /scim/token, viene emesso un token usando la chiave configurata. Tale token può essere usato come token di connessione per l'autorizzazione successiva.

Il codice di convalida del token predefinito è configurato per l'uso di un token Microsoft Entra e richiede che il tenant emittente sia configurato usando il parametro Token:TokenIssuer nel file appsettings.json.

"Token": {
    "TokenAudience": "8adf8e6e-67b2-4cf2-a259-e3dc5476c621",
    "TokenIssuer": "https://sts.windows.net/<tenant_id>/"
}

Passaggi successivi