Esercitazione: Convalidare un endpoint SCIM
Questa esercitazione descrive come usare microsoft Entra SCIM Validator per verificare che il server di provisioning sia compatibile con il client SCIM di Azure. L'esercitazione è destinata agli sviluppatori che vogliono creare un server compatibile CON SCIM per gestire le identità con il servizio di provisioning Microsoft Entra.
In questa esercitazione apprenderai a:
- Selezionare un metodo di test
- Configurare il metodo di test
- Convalidare l'endpoint SCIM
Prerequisiti
- Un account Microsoft Entra con una sottoscrizione attiva. Creare un account gratuitamente.
- Endpoint SCIM conforme allo standard SCIM 2.0 e soddisfa i requisiti del servizio di provisioning. Per altre informazioni, vedere Esercitazione: Sviluppare e pianificare il provisioning per un endpoint SCIM in Microsoft Entra ID.
Selezionare un metodo di test
Il primo passaggio consiste nel selezionare un metodo di test per convalidare l'endpoint SCIM.
Aprire il Web browser e passare al validator SCIM: https://scimvalidator.microsoft.com/.
Selezionare una delle tre opzioni di test. È possibile usare gli attributi predefiniti, individuare automaticamente lo schema o caricare uno schema.
Usa attributi predefiniti: il sistema fornisce gli attributi predefiniti e li modifichi per soddisfare le tue esigenze.
Individua schema : se l'endpoint supporta /Schemas, questa opzione consente allo strumento di individuare gli attributi supportati. È consigliabile usare questa opzione perché riduce il sovraccarico dell'aggiornamento dell'app durante la compilazione.
Caricare lo schema di Microsoft Entra: caricare lo schema scaricato dall'app di esempio in Microsoft Entra ID.
Configurare il metodo di test
Dopo aver selezionato un metodo di test, il passaggio successivo consiste nel configurarlo.
- Se si usa l'opzione attributi predefiniti, compilare tutti i campi indicati.
- Se si usa l'opzione individua schema, immettere l'URL e il token dell'endpoint SCIM.
- Se si carica uno schema, selezionare il file .json da caricare. L'opzione accetta un file .json esportato dall'app di esempio nell'interfaccia di amministrazione di Microsoft Entra. Per informazioni su come esportare uno schema, vedere Procedura: Esportare la configurazione del provisioning ed eseguire il rollback a uno stato valido noto.
Nota
Per testare gli attributi del gruppo, assicurarsi di selezionare Abilita test di gruppo.
- Modificare gli attributi dell'elenco in base alle esigenze per i tipi di utente e gruppo usando l'opzione 'Aggiungi attributo' alla fine dell'elenco di attributi e segno meno (-) sul lato destro della pagina.
- Selezionare la proprietà join sia dall'elenco degli attributi utente che da quello del gruppo.
Nota
La proprietà join, nota anche come attributo corrispondente, è un attributo su cui le risorse utente e gruppo possono essere sottoposte a query in modo univoco nell'origine e corrispondenti nel sistema di destinazione.
Convalidare l'endpoint SCIM
Infine, è necessario testare e convalidare l'endpoint.
Selezionare Schema di test per iniziare il test.
Esaminare i risultati con un riepilogo dei test superati e non superati.
Selezionare la scheda Mostra dettagli e rivedere e risolvere i problemi.
Continuare a testare lo schema fino al superamento di tutti i test.
Uso di espressioni in SCIM Validator
Il validator SCIM supporta l'uso di espressioni per generare i valori desiderati per gli attributi.
Come usare le espressioni
- Passare alla pagina Attributi.
- Immettere l'espressione desiderata nella colonna valore dell'attributo da personalizzare.
- Eseguire il test
Nota
Queste espressioni funzionano sia per gli attributi User che Group.
Espressioni disponibili
La tabella seguente elenca le espressioni disponibili
Expression | significato | Esempio | Risultato |
---|---|---|---|
generateRandomString {Conteggio dei caratteri stringa} | Generare una stringa casuale con il numero specificato di caratteri alfabetici | {%generateRandomString 6%}@contoso.com | CXJHYP@contoso.com |
generateRandomNumber {Count of Numbers} | Generare un numero casuale con il conteggio di cifre specificato | {%generateRandomNumber 4%} | 8821 |
generateAlphaNumeric {Count of Characters} | Generare una stringa casuale con una combinazione di alfabeti e numeri, con il conteggio di caratteri specificato | {%generateAlphaNumeric 7%} | 59Q2M9W |
generateAlphaNumericWithSpecialCharacters {Conteggio dei caratteri} | Generare una stringa casuale con una combinazione di alfabeti, numeri e un carattere speciale, in base al numero di caratteri specificato | {%generateAlphaNumericWithSpecialCharacters 8%} TEST | D385N05'TEST |
È possibile aggiungere valori prima o dopo le espressioni per ottenere il risultato desiderato, ad esempio quando si aggiunge {% generateRandomString 6 %}@contoso.com in un campo valore dell'attributo userName, verrà generato un nuovo valore userName con ogni test mantenendo il dominio contoso.com.
Usare Postman per testare gli endpoint (facoltativo)
Oltre a usare lo strumento SCIM Validator, è anche possibile usare Postman per convalidare un endpoint. Questo esempio fornisce un set di test in Postman. Nell'esempio vengono convalidate le operazioni di creazione, lettura, aggiornamento ed eliminazione (CRUD). Le operazioni vengono convalidate in utenti e gruppi, filtrando, aggiornando l'appartenenza ai gruppi e disabilitando gli utenti.
Gli endpoint si trovano nella {host}/scim/
directory ed è possibile usare le richieste HTTP standard per interagire con essi. Per modificare la /scim/
route, vedere ControllerConstant.cs in AzureADProvisioningSCIMreference>ScimReferenceApi>Controllers.
Nota
È possibile usare solo endpoint HTTP per i test locali. Il servizio di provisioning Microsoft Entra richiede che l'endpoint supporti HTTPS.
Scaricare Postman e avviare l'applicazione.
Copiare e incollare questo collegamento in Postman per importare la raccolta di test:
https://aka.ms/ProvisioningPostman
.Creare un ambiente di test con queste variabili:
Ambiente Variabile Valore Eseguire il progetto in locale usando IIS Express Server localhost
Porta :44359
(non dimenticare il:
)Api scim
Eseguire il progetto in locale usando Kestrel Server localhost
Porta :5001
(non dimenticare il:
)Api scim
Ospitare l'endpoint in Azure Server (immettere l'URL SCIM) Porta (lasciare vuoto) Api scim
Usare Get Key dalla raccolta Postman per inviare una richiesta GET all'endpoint del token e recuperare un token di sicurezza da archiviare nella variabile token per le richieste successive.
Nota
Per proteggere un endpoint SCIM, è necessario un token di sicurezza prima di connettersi. L'esercitazione usa l'endpoint
{host}/scim/token
per generare un token autofirmato.
Ecco fatto! È ora possibile eseguire la raccolta Postman per testare la funzionalità dell'endpoint SCIM.
Pulire le risorse
Se nel test sono state create risorse di Azure non più necessarie, non dimenticare di eliminarle.
Problemi noti relativi a Microsoft Entra SCIM Validator
- Le eliminazioni soft (disabilita) non sono ancora supportate.
- Il formato del fuso orario viene generato in modo casuale e ha esito negativo per i sistemi che tentano di convalidarlo.
- L'utente patch rimuove gli attributi può tentare di rimuovere attributi obbligatori/obbligatori per determinati sistemi. Tali errori devono essere ignorati.