Condividi tramite


Configurazione dell'ID Microsoft Entra per il provisioning degli utenti in un database SQL

Questo documento descrive i passaggi da eseguire per effettuare automaticamente il provisioning e il deprovisioning degli utenti da Microsoft Entra ID in un database SQL.

Per informazioni dettagliate sul funzionamento di questo servizio e domande frequenti, consultare Automatizzare il provisioning e il deprovisioning utenti in applicazioni SaaS con Microsoft Entra ID e architettura di provisioning delle applicazioni locali.

Il video seguente offre una panoramica del provisioning locale.

Prerequisiti per il provisioning in un database SQL

On-premises prerequisites (Prerequisiti locali)

L'applicazione si basa su un database SQL, in cui è possibile creare, aggiornare ed eliminare i record per gli utenti. Il computer che esegue l'agente di provisioning deve essere dotato di:

  • Windows Server 2016 o versione successiva.
  • Connettività al sistema di database di destinazione e con connettività in uscita a login.microsoftonline.com, altri servizi di Microsoft Online e domini di Azure. Un esempio è una macchina virtuale Windows Server 2016 ospitata in Azure IaaS o su un proxy.
  • Almeno 3 GB di RAM.
  • .NET Framework 4.7.2.
  • Driver ODBC per il database SQL.

La configurazione della connessione al database dell'applicazione viene eseguita tramite una procedura guidata. A seconda delle opzioni selezionate, alcune schermate della procedura guidata potrebbero non essere disponibili e le informazioni potrebbero essere leggermente diverse. Usare le informazioni seguenti come linee guida per la configurazione.

Database supportati

  • Microsoft SQL Server e Azure SQL
  • IBM DB2 9.x
  • IBM DB2 10.x
  • IBM DB2 11.5
  • Oracle 10g e 11g
  • Oracle 12c e 18c
  • MySQL 5.x
  • MySQL 8.x
  • Postgres

Requisiti del cloud

  • Un tenant di Microsoft Entra con una licenza P1 o P2 di Microsoft Entra ID (oppure EMS E3 o E5).

    L'uso di questa funzionalità richiede licenze Microsoft Entra ID P1. Per trovare la licenza corretta per le proprie esigenze, vedere il confronto delle funzionalità di Microsoft Entra ID disponibili a livello generale.

  • Ruolo Amministratore identità ibrida per la configurazione dell'agente di provisioning e dei ruoli Amministratore applicazione o Amministratore applicazione cloud per la configurazione del provisioning nel portale di Azure.

  • Gli utenti di Microsoft Entra di cui eseguire il provisioning nel database devono essere già popolati con gli attributi che saranno richiesti dallo schema del database e che non vengono generati dal database stesso.

Preparare il database di esempio

In questo articolo si configurerà il connettore Microsoft Entra SQL affinché interagisca con il database relazionale dell'applicazione. In genere, le applicazioni gestiscono l'accesso con una tabella nel loro database SQL, con una riga nella tabella per ogni utente. Se si dispone già di un'applicazione con un database, continuare con la sezione successiva.

Se non si dispone già di un database con una tabella appropriata, a scopo dimostrativo è consigliabile crearne uno che possa essere usato da Microsoft Entra ID. Se si utilizza SQL Server, avviare lo script SQL disponibile nell'Appendice A. Lo script crea un database campione con il nome CONTOSO, che contiene una tabella Employees singola. Questa tabella del database in cui verranno inseriti gli utenti.

Colonna tabella Origine
ContosoLogin Nome dell'entità utente di Microsoft Entra
Nome Nome assegnato di Microsoft Entra
Cognome Cognome di Microsoft Entra
E-mail Indirizzo di posta elettronica di Exchange Online
InternalGUID Generato dal database stesso
AzureID Oggetto ID di Microsoft Entra
textID Nickname di posta elettronica di Microsoft Entra ID

Stabilire in che modo Microsoft Entra SQL Connector interagirà con il database

Sarà necessario disporre di un account utente nell'istanza di SQL con i diritti per eseguire aggiornamenti ai dati contenuti nelle tabelle del database. Se il database SQL viene gestito da un altro utente, contattarlo per ottenere il nome dell'account e la password per Microsoft Entra ID da utilizzare per l'autenticazione al database. Se l’istanza SQL è installata in un computer diverso, sarà inoltre necessario accertarsi che il database SQL consenta le connessioni in ingresso dal driver ODBC nel computer dell’agente.

Se si dispone di un database già esistente per l'applicazione, è necessario determinare in che modo Microsoft Entra ID deve interagire con tale database: interazione diretta con tabelle e visualizzazioni, tramite stored procedure già presenti nel database o tramite istruzioni SQL fornite per query e aggiornamenti. Questa impostazione è dovuta al fatto che un'applicazione più complessa potrebbe avere nel suo database altre tabelle ausiliarie, richiedere il paging per tabelle con migliaia di utenti, oppure potrebbe richiedere a Microsoft Entra ID di chiamare una stored procedure che esegue un'ulteriore elaborazione dei dati, come la crittografia, l'hashing o i controlli di validità.

Quando si crea la configurazione per l'interazione del connettore con il database di un'applicazione, si configurerà innanzitutto un approccio per la lettura dello schema del database da parte dell'host del connettore, quindi la configurazione dell'approccio che il connettore deve utilizzare in modo continuativo tramite profili di esecuzione. Ogni profilo di esecuzione specifica il modo in cui il connettore deve generare istruzioni SQL. La scelta dei profili di esecuzione e il metodo all'interno di un profilo di esecuzione dipendono dal supporto del motore di database e dall'applicazione.

  • Dopo la configurazione, all'avvio del servizio di provisioning, eseguirà automaticamente le interazioni configurate nel profilo di esecuzione Importazione completa. In questo profilo di esecuzione il connettore leggerà tutti i record per gli utenti del database dell'applicazione, in genere usando un'istruzione SELECT. Questo profilo di esecuzione è necessario affinché in seguito, se Microsoft Entra ID deve apportare una modifica a un utente, Microsoft Entra ID sappia aggiornare un record esistente per quell'utente nel database, anziché crearne uno nuovo.

  • Ogni volta che vengono apportate modifiche in Microsoft Entra ID, ad esempio per assegnare un nuovo utente all'applicazione o aggiornare un utente esistente, il servizio di provisioning eseguirà le interazioni del database SQL configurate Esporta profilo di esecuzione. Nel profilo di esecuzione Esporta, Microsoft Entra ID emette istruzioni SQL per inserire, aggiornare ed eliminare record nel database, in modo da sincronizzare il contenuto del database con Microsoft Entra ID.

  • Se il database lo supporta, è inoltre possibile configurare facoltativamente un profilo di esecuzione Importare delta. In questo profilo di esecuzione, Microsoft Entra ID leggerà le modifiche apportate al database, non da Microsoft Entra ID, dall'ultima importazione completa o del delta. Questo profilo di esecuzione è facoltativo perché richiede che il database sia strutturato per consentire la lettura delle modifiche.

Nella configurazione di ciascun profilo di esecuzione del connettore, si specificherà se il connettore Microsoft Entra deve generare le proprie istruzioni SQL per una tabella o una visualizzazione, richiamare le stored procedure o utilizzare le query SQL personalizzate fornite dall'utente. In genere, si userà lo stesso metodo per tutti i profili di esecuzione in un connettore.

  • Se si seleziona il metodo Table o View per un profilo di esecuzione, il connettore Microsoft Entra genererà le istruzioni SQL necessarie, SELECT, INSERT, UPDATE e DELETE, per interagire con la tabella o la visualizzazione nel database. Questo metodo è l'approccio più semplice, se il database ha una singola tabella o una visualizzazione aggiornabile con poche righe esistenti.
  • Se si seleziona il metodo Stored procedure, il database dovrà avere quattro procedure memorizzate: leggere una pagina di utenti, aggiungere un utente, aggiornare un utente ed eliminare un utente, si configurerà il connettore Microsoft Entra con i nomi e i parametri di tali procedure memorizzate da richiamare. Questo approccio richiede una maggiore configurazione del database SQL e in genere è necessario solo se l'applicazione richiede una maggiore elaborazione per ogni modifica apportata a un utente o per la consultazione di grandi insiemi di risultati.
  • Se si seleziona il metodo query SQL, si digitano le istruzioni SQL specifiche che il connettore deve emettere durante un profilo di esecuzione. Si configurerà il connettore con i parametri che il connettore deve popolare nelle istruzioni SQL, ad esempio per scorrere i set di risultati durante un'importazione o per impostare gli attributi di un nuovo utente creato durante un'esportazione.

Questo articolo illustra come usare il metodo table per interagire con la tabella di database di esempio Employees, nei profili di esecuzione Esportazione e Importazione completa. Per altre informazioni sulla configurazione dei metodi di stored procedure o query SQL, vedere la Guida alla configurazione di SQL generici che fornisce altri dettagli e requisiti specifici.

Scegliere gli identificatori univoci nello schema del database dell'applicazione

La maggior parte delle applicazioni avrà un identificatore univoco per ogni utente dell'applicazione. Se si esegue il provisioning in una tabella di database esistente, è necessario identificare una colonna di tale tabella con un valore per ogni utente, in cui tale valore è univoco e non cambia. Questa colonna sarà l’Ancoraggio che Microsoft Entra ID usa per identificare le righe esistenti per poterle aggiornare o eliminare. Per altre informazioni sugli ancoraggi, vedere Informazioni sugli attributi di ancoraggio e nomi distinti.

Se il database dell'applicazione esiste già, contiene utenti e si vuole che Microsoft Entra ID mantenga aggiornati tali utenti, è necessario disporre di un identificatore per ogni utente, che sia lo stesso per il database dell'applicazione e lo schema di Microsoft Entra Ad esempio, se si assegna un utente all'applicazione in Microsoft Entra ID e tale utente si trova già in tale database, le modifiche apportate all'utente in Microsoft Entra ID devono aggiornare una riga esistente per tale utente anziché aggiungere una nuova riga. Poiché è probabile che Microsoft Entra ID non archivi l'identificatore interno di un'applicazione per tale utente, è consigliabile selezionare un'altra colonna per interrogare il database. Il valore di questa colonna può essere un nome dell'entità utente o un indirizzo di posta elettronica, un ID dipendente o un altro identificatore presente in Microsoft Entra ID per ciascun utente incluso nell'ambito dell'applicazione. Se l'identificatore utente usato dall'applicazione non è un attributo archiviato nella rappresentazione di Microsoft Entra dell'utente, non è necessario estendere lo schema utente di Microsoft Entra con un attributo di estensione e popolare tale attributo nel database. È possibile estendere lo schema di Microsoft Entra e impostare i valori di estensione usando PowerShell.

Eseguire il mapping degli attributi in Microsoft Entra ID allo schema del database

Quando Microsoft Entra ID ha stabilito un collegamento tra un utente in Microsoft Entra ID e un record nel database, che si tratti di un utente già presente nel database o di un utente nuovo, Microsoft Entra ID può effettuare il provisioning delle modifiche dell'attributo dall'utente di Microsoft Entra nel database. Oltre agli identificatori univoci, controllare il database per identificare se sono presenti altre proprietà necessarie. In caso affermativo, assicurarsi che gli utenti di cui verrà effettuato il provisioning nel database dispongano di attributi di cui è possibile eseguire il mapping alle proprietà necessarie.

Inoltre, è possibile configurare il comportamento di deprovisioning. Se un utente assegnato all'applicazione viene eliminato in Microsoft Entra ID, Microsoft Entra ID invierà un'operazione di eliminazione al database. Si può anche chiedere a Microsoft Entra ID di aggiornare il database quando un utente esce dall'ambito di utilizzo dell'applicazione. Se un utente viene disassegnato da un'applicazione, eliminato in modo parziale da Microsoft Entra ID o bloccato al momento dell'accesso, è possibile configurare Microsoft Entra ID per l'invio di una modifica dell'attributo. Se si esegue il provisioning in una tabella di database esistente, è necessario avere una colonna di tale tabella per eseguire il mapping a isSoftDeleted. Quando l'utente esce dall'ambito, Microsoft Entra ID imposta il valore per tale utente su True.

1. Installare il driver ODBC

Windows Server in cui verrà installato l'agente di provisioning richiede un driver ODBC per il database di destinazione. Se si prevede di connettersi a SQL Server o al database SQL di Azure, è necessario scaricare il driver ODBC per SQL Server (x64) e installarlo in Windows Server. Per altri database SQL, vedere le indicazioni fornite dal fornitore di software indipendente su come installare il driver ODBC.

2. Creare un file di connessione DSN

Il connettore SQL generico richiede un file DSN (Data Source Name) per connettersi all'endpoint SQL. È necessario innanzitutto creare un file con le informazioni di connessione ODBC.

  1. Avviare l'utilità di gestione di ODBC sul server. Usare la versione a 64 bit.

    Screenshot che mostra la gestione ODBC.

  2. Selezionare la scheda DSN file e selezionare Aggiungi.

    Screenshot che mostra la scheda DSN file.

  3. Se si usa SQL Server o Azure SQL, selezionare SQL Server Native Client 11.0 e poi Avanti. Se si usa un altro database, selezionarne il driver ODBC.

    Screenshot che mostra la scelta di un client nativo.

  4. Assegnare un nome al file, ad esempio GenericSQL, quindi selezionare Avanti. Screenshot che mostra la denominazione del connettore.

  5. Selezionare Fine.

    Screenshot che mostra la fine.

  6. Ora configurare la connessione. I passaggi seguenti variano a seconda del driver ODBC che si sta utilizzando. Questa figura presuppone che si stia utilizzando il driver per connettersi a SQL Server. Se SQL Server si trova in un computer server diverso, immettere il nome del server. Quindi seleziona Avanti.

    Screenshot che mostra l'immissione di un nome del server.

  7. Se l'utente con le cui sembianze si esegue questo passaggio ha le autorizzazioni per connettersi al database, mantenere selezionata l'autenticazione di Windows. Se l'amministratore di SQL Server richiede un account locale SQL, specificare invece tali credenziali. Quindi seleziona Avanti.

    Screenshot che mostra l'opzione autenticazione di Windows.

  8. Immettere il nome del database, che in questo esempio è CONTOSO.

    Screenshot che mostra l'immissione di un nome del database.

  9. In questa schermata mantenere tutte le selezioni predefinite e selezionare Termina.

    .Screenshot che mostra la selezione Termina

  10. Per verificare che tutto funzioni come previsto, selezionare Verifica origine dati.

    Screenshot che mostra Verifica origine dati.

  11. Assicurarsi che la verifica abbia esito positivo.

    Screenshot che mostra l’esito positivo.

  12. Selezionare OK due volte. Chiudere Amministratore origine dati ODBC. Il file di connessione DSN viene salvato per impostazione predefinita nella cartella Documenti.

3. Installare e configurare Microsoft Entra Connect Provisioning Agent

Se l'agente di provisioning è già stato scaricato e configurato per un'altra applicazione locale, continuare la lettura nella sezione successiva.

  1. Accedere al portale di Azure.
  2. Passare ad Applicazioni aziendali e selezionare Nuova applicazione.
  3. Cercare l'applicazione App ECMA locale, assegnare all'app un nome e selezionare Crea per aggiungerla al tenant.
  4. Dal menu passare alla pagina Provisioning dell'applicazione.
  5. Seleziona Inizia.
  6. Alla pagina Provisioning, modificare la modalità su Automatico.

Schermata di selezione Automatico.

  1. In Connettività localeselezionare Scaricare e installare, quindi selezionare Accettare i termini e scaricare.

Screenshot del percorso di download per l'agente.

  1. Lasciare il portale ed eseguire il programma di installazione dell'agente di provisioning, accettare le condizioni d’uso e selezionare Installa.
  2. Attendere la configurazione guidata dell'agente di provisioning di Microsoft Entra, quindi selezionare Avanti.
  3. Nel passaggio Selezionare estensione, selezionare Provisioning delle applicazioni locali, quindi Avanti.
  4. L'agente di provisioning utilizzerà il browser web del sistema operativo per visualizzare una finestra popup per l'autenticazione a Microsoft Entra ID e potenzialmente anche al provider di identità dell'organizzazione. Se si utilizza Internet Explorer come browser su Windows Server, potrebbe essere necessario aggiungere i siti Web Microsoft all'elenco dei siti attendibili del browser per consentire l'esecuzione corretta di JavaScript.
  5. Specificare le credenziali per un amministratore di Microsoft Entra quando viene richiesta l’autorizzazione. L'utente deve avere almeno il ruolo di amministratore dell'identità ibrida.
  6. Selezionare Conferma per confermare l’impostazione. Al termine dell'installazione, è possibile selezionare Uscire e chiudere anche il programma di installazione del pacchetto dell'agente di provisioning.

4. Configurare un’app ECMA locale

  1. Nella sezione Connettività locale del portale selezionare l'agente distribuito e selezionare Assegna agente/i.

    Screenshot che illustra come selezionare e assegnare un agente.

  2. Mantenere aperta questa finestra del browser, mentre si completa il passaggio successivo della configurazione usando la configurazione guidata.

5. Configurare il certificato host del connettore Microsoft Entra ECMA

  1. In Windows Server in cui è installato l'agente di provisioning fare clic con il pulsante destro del mouse sulla Configurazione guidata Microsoft ECMA2Host dal menu Start ed eseguire come amministratore. L'esecuzione come amministratore di Windows è necessaria per la procedura guidata al fine di creare i registri eventi di Windows necessari.

  2. Dopo l'avvio della configurazione host del connettore ECMA, se è la prima volta che si esegue la procedura guidata, verrà chiesto di creare un certificato. Lasciare la porta predefinita 8585 e selezionare Generare certificato per generare un certificato. Il certificato generato automaticamente verrà autofirmato come parte della radice attendibile. Il certificato SAN corrisponde al nome host.

    Screenshot che mostra la configurazione delle impostazioni.

  3. Seleziona Salva.

Nota

Se si è scelto di generare un nuovo certificato, registrare la data di scadenza del certificato per assicurarsi di tornare alla configurazione guidata e generare nuovamente il certificato prima della scadenza.

6. Creare un connettore SQL generico

In questa sezione si creerà la configurazione del connettore per il database.

6.1 Configurare la connessione SQL

Per creare un connettore SQL generico, seguire questa procedura:

  1. Generare un token segreto che verrà usato per l'autenticazione di Microsoft Entra ID nel connettore. Deve contenere almeno 12 caratteri univoci per ogni applicazione.

  2. Se non è già stato fatto, avviare la Configurazione guidata Microsoft ECMA2Host dal menu Start di Windows.

  3. Selezionare Nuovo connettore.

    Screenshot che mostra la scelta di un nuovo connettore.

  4. Nella pagina Proprietà compilare le caselle con i valori specificati nella tabella che segue l'immagine e selezionare Avanti.

    Screenshot che mostra l'immissione delle proprietà.

    Proprietà valore
    Nome Nome scelto per il connettore, che deve essere univoco in tutti i connettori presenti nell'ambiente. Ad esempio, se si dispone di un solo database SQL, SQL.
    Timer asincrono automatico (minuti) 120
    Token segreto Immettere il token segreto generato per questo connettore. La chiave deve contenere almeno 12 caratteri.
    Estensione DLL Per il connettore SQL generico, selezionare Microsoft.IAM.Connector.GenericSql.dll.
  5. Nella pagina Connettività compilare le caselle con i valori specificati nella tabella che segue l'immagine e selezionare Avanti.

    Screenshot che mostra la pagina Connettività.

    Proprietà Descrizione
    File DSN Il file Nome dell’origine dati creato nel passaggio precedente, che viene usato per connettersi all'istanza di SQL.
    Nome utente Nome utente di un account con diritti per apportare aggiornamenti alla tabella nell'istanza di SQL. Se il database di destinazione è SQL Server e si usa l'autenticazione di Windows, il nome utente deve essere nel formato hostname\sqladminaccount per server autonomi o domain\sqladminaccount per i server membri del dominio. Per altri database, il nome utente sarà un account locale nel database.
    Password La password del nome utente fornito.
    DN è Ancoraggio A meno che l'ambiente non richieda queste impostazioni, non selezionare le caselle di controllo DN è Ancoraggio e Esporta tipo:Sostituzione oggetto.

6.2 Rimuovere lo schema dal database

Dopo aver specificato le credenziali, l'host del connettore ECMA sarà pronto per recuperare lo schema del database. Continuare con la configurazione della connessione SQL:

  1. Nella pagina Schema 1 specificare l'elenco dei tipi di oggetto. In questo esempio è presente un singolo tipo di oggetto, User. Compilare le caselle con i valori specificati nella tabella che segue l'immagine e selezionare Avanti.

    Screenshot che mostra la pagina Schema 1.

    Proprietà valore
    Metodo di rilevamento del tipo di oggetto Valore fisso
    Elenco di valori fissi/Tabella/Vista/SP User
  2. Dopo aver selezionato Avanti, verrà visualizzata automaticamente la pagina successiva per la configurazione del tipo di oggetto User. Nella pagina Schema 2 si indicherà come vengono rappresentati gli utenti nel database. In questo esempio si tratta di una tabella SQL singola denominata Employees. Compilare le caselle con i valori specificati nella tabella che segue l'immagine e selezionare Avanti.

    Screenshot che mostra la pagina Schema 2.

    Proprietà valore
    User:Attribute Detection Tabella
    User:Table/View/SP Nome della tabella nel database, ad esempio Employees

    Nota

    Se si verifica un errore, controllare la configurazione del database per assicurarsi che l'utente specificato nella pagina Connettività abbia accesso in lettura allo schema del database.

  3. Dopo aver selezionato Avanti, verrà visualizzata automaticamente la pagina successiva per selezionare le colonne della tabella specificata in precedenza, ad esempio la tabella Employees in questo esempio, che devono essere usate come Anchor e DN di utenti. Queste colonne contengono identificatori univoci nel database. È possibile usare le stesse colonne o colonne differenti, ma assicurarsi che in queste colonne tutte le righe già presenti nel database abbiano valori univoci. Nella pagina Schema 3 compilare le caselle con i valori specificati nella tabella che segue l'immagine e selezionare Avanti.

    Screenshot che mostra la pagina Schema 3.

    Proprietà Descrizione
    Selezionare Ancoraggio per: Utente Colonna della tabella di database da utilizzare per l'ancoraggio, ad esempio User:ContosoLogin
    Selezionare l'attributo DN per Utente Colonna della tabella di database da utilizzare per l'attributo DN, ad esempio AzureID
  4. Dopo aver selezionato Avanti, verrà visualizzata automaticamente la pagina successiva per confermare il tipo di dati di ognuna delle colonne della tabella Employee e se il connettore deve importarli o esportarli. Nella pagina Schema 4 lasciare i valori predefiniti e selezionare Avanti.

    Screenshot che mostra la pagina Schema 4.

  5. Nella pagina Globale compilare le caselle e selezionare Avanti. Usare la tabella che segue l'immagine per indicazioni sulle singole caselle.

    Screenshot che mostra la pagina Globale.

    Proprietà Descrizione
    Strategia delta Per IBM DB2 selezionare None
    Query Water Mark Per IBM DB2, tipo SELECT CURRENT TIMESTAMP FROM SYSIBM.SYSDUMMY1;
    Origine dati formato Data Ora Per SQL Server yyyy-MM-dd HH:mm:ss e per IBM DB2 YYYY-MM-DD
  6. Nella pagina Partizioni selezionare Avanti.

    Screenshot che mostra la pagina Partizioni.

6.3 Configurare i profili di esecuzione

Successivamente, si configureranno i profili di esecuzione Esportazione e Importazione completa. Il profilo di esecuzione Esportazione verrà utilizzato quando l'host ECMA Connector deve inviare modifiche da Microsoft Entra ID al database, per inserire, aggiornare ed eliminare dei record. Il profilo di esecuzione Importazione completa verrà utilizzato all'avvio del servizio host ECMA Connector per leggere il contenuto corrente del database. In questo esempio si userà il metodo Table in entrambi i profili di esecuzione, in modo che l'host del connettore ECMA generi le istruzioni SQL necessarie.

Continuare con la configurazione della connessione SQL:

  1. Nella pagina Profili di esecuzione mantenere selezionata la casella di controllo Esportazione. Selezionare la casella di controllo Importazione completa, quindi scegliere Avanti.

    Screenshot che mostra la pagina Profili di esecuzione.

    Proprietà Descrizione
    Esportazione Profilo di esecuzione che esporterà i dati in SQL. Questo profilo di esecuzione è obbligatorio.
    Importazione completa Profilo di esecuzione che importerà tutti i dati dalle origini SQL specificate in precedenza.
    Importazione delta Profilo di esecuzione che importerà solo le modifiche da SQL dopo l'ultima importazione completa o differenziale.
  2. Dopo aver selezionato Avanti, verrà visualizzata automaticamente la pagina successiva per configurare il metodo per il profilo di esecuzione Esportazione. Nella pagina Esportazione compilare le caselle e selezionare Avanti. Usare la tabella che segue l'immagine per indicazioni sulle singole caselle.

    Screenshot che mostra la pagina Esportazione.

    Proprietà Descrizione
    Metodo operativo Tabella
    Tabella/Visualizzazione/SP Stessa tabella configurata nella scheda Schema 2, ad esempio Employees
  3. Nella pagina Importazione completa compilare le caselle e selezionare Avanti. Usare la tabella che segue l'immagine per indicazioni sulle singole caselle.

    Screenshot che mostra la pagina Importazione completa.

    Proprietà Descrizione
    Metodo operativo Tabella
    Tabella/Visualizzazione/SP Stessa tabella configurata nella scheda Schema 2, ad esempio Employees

6.4 Configurare la modalità di visualizzazione degli attributi in Microsoft Entra ID

Nell'ultimo passaggio delle impostazioni di connessione SQL configurare la modalità di visualizzazione degli attributi in Microsoft Entra ID:

  1. Nella pagina Tipi oggetto compilare le caselle e selezionare Avanti. Usare la tabella che segue l'immagine per indicazioni sulle singole caselle.

    • Ancoraggio: i valori di questo attributo devono essere univoci per ciascun oggetto nel database di destinazione. Il servizio di provisioning di Microsoft Entra eseguirà una query sull'host del connettore ECMA utilizzando questo attributo dopo il ciclo iniziale. Questo valore di ancoraggio deve corrispondere alla colonna di ancoraggio configurata in precedenza nella pagina Schema 3.
    • Attributo query: questo attributo deve essere uguale all'ancoraggio.
    • DN: l'opzione Generato automaticamente deve essere selezionata nella maggior parte dei casi. Se non è selezionata, verificare che l'attributo DN sia mappato a un attributo in Microsoft Entra ID che archivia il DN nel presente formato: CN = anchorValue, Object = objectType. Per altre informazioni sugli ancoraggi e il DN, vedere Informazioni sugli attributi di ancoraggio e nomi distinti.
    Proprietà Descrizione
    Oggetti di destinazione User
    Ancora Colonna configurata nella scheda Schema 3, ad esempio ContosoLogin
    Attributo query La stessa colonna dell'ancoraggio, ad esempio ContosoLogin
    DN Stessa colonna configurata nella scheda Schema 3, ad esempio ContosoLogin
    Generato automaticamente Selezionato
  2. L'host del connettore ECMA individua gli attributi supportati dal database di destinazione. È possibile scegliere quali di questi attributi esporre a Microsoft Entra ID. Questi attributi possono quindi essere configurati nel portale di Azure per il provisioning. Nella pagina Selezionare attributi aggiungere tutti gli attributi nell'elenco a discesa uno alla volta.

L'elenco a discesa Attributo mostra ogni attributo individuato nel database di destinazione e che non è stato scelto nella pagina precedente Seleziona attributi. Dopo aver aggiunto tutti gli attributi pertinenti, selezionare Avanti.

Screenshot dell'elenco a discesa degli attributi.

  1. Nella pagina Deprovisioning, alla voce Disabilitare flusso, selezionare Elimina. Gli attributi selezionati nella pagina precedente non saranno disponibili per la selezione nella pagina Deprovisioning. Selezionare Fine.

Nota

Se si utilizza Impostare il valore dell'attributo, tenere presente che sono consentiti solo valori booleani.

Screenshot che mostra la pagina Deprovisioning.

7. Assicurarsi che il servizio ECMA2Host sia in esecuzione.

  1. Nel server in cui è in esecuzione l'host del connettore Microsoft Entra ECMA selezionare Avvia.

  2. Immettere esegui, quindi inserire services.msc nella casella di ricerca.

  3. Nell'Elenco servizi, assicurarsi che Microsoft ECMA2Host sia presente e in esecuzione. In caso contrario, selezionare Avvia.

    Screenshot che mostra che il servizio è in esecuzione.

Se ci si connette a un nuovo database o a uno vuoto e privo di utenti, andare alla sezione successiva. In caso contrario, seguire questa procedura per verificare che il connettore abbia identificato gli utenti esistenti nel database.

  1. Se il servizio è stato avviato di recente e sono presenti molti oggetti utente nel database, attendere alcuni minuti prima che il connettore stabilisca un collegamento con il database.

8. Configurare il collegamento dell’applicazione nel portale di Azure

  1. Tornare alla finestra del Web browser in cui si stava configurando il provisioning dell'applicazione.

    Nota

    Se si è verificato il timeout della finestra, sarà necessario selezionare nuovamente l'agente.

    1. Accedere al portale di Azure.
    2. Passare ad Applicazioni aziendali e andare all’applicazione App ECMA locale.
    3. Selezionare Provisioning.
    4. Se appare Attività iniziali, modificare la modalità in Automatica, quindi nella sezione Connettività locale selezionare l'agente distribuito e selezionare Assegna agente/i. In caso contrario, passare a Modifica provisioning.
  2. Nella sezione Credenziali amministratore inserire l’URL seguente. Sostituire la parte {connectorName} con il nome del connettore nell'host del connettore ECMA, ad esempio SQL. Il nome del connettore fa distinzione tra maiuscole e minuscole e deve corrispondere a quello configurato nella procedura guidata. Inoltre, è possibile sostituire localhost con il nome host del computer.

    Proprietà valore
    URL tenant https://localhost:8585/ecma2host_{connectorName}/scim
  3. Immettere il valore del Token segreto definito al momento della creazione del connettore.

    Nota

    Se l'agente è stato appena assegnato all'applicazione, attendere 10 minuti per il completamento della registrazione. Il test di connettività non funzionerà fino al completamento della registrazione. Forzare il completamento della registrazione dell'agente riavviando l'agente di provisioning nel server può velocizzare il processo di registrazione. Passare al server, cercare servizi nella barra di ricerca di Windows, identificare il servizio Microsoft Entra Connect Provisioning Agent, fare clic con il pulsante destro del mouse sul servizio e riavviare.

  4. Selezionare Test connessione e attendere un minuto.

    Screenshot che mostra l'assegnazione di un agente.

  5. Dopo il risultato positivo del test di connessione, a indicare che le credenziali specificate sono autorizzate per abilitare il provisioning, selezionare Salva.

    Screenshot che mostra il test di un agente.

9. configurare i mapping degli attributi

È ora necessario eseguire il mapping degli attributi tra la rappresentazione dell'utente in Microsoft Entra ID e la rappresentazione di un utente nel database SQL dell'applicazione locale.

Si userà il portale di Azure per configurare il mapping tra gli attributi dell'utente di Microsoft Entra e gli attributi selezionati in precedenza nella configurazione guidata dell'host ECMA.

  1. Assicurarsi che lo schema di Microsoft Entra includa gli attributi richiesti dal database. Se il database richiede agli utenti di avere un attributo, ad esempio uidNumber, e tale attributo non fa già parte dello schema di Microsoft Entra per un utente, sarà necessario usare la funzionalità di estensione della directory per aggiungere tale attributo come estensione.

  2. Nell'interfaccia di amministrazione di Microsoft Entra, in Applicazioni aziendali, selezionare l'applicazione App ECMA locale, quindi la pagina Provisioning.

  3. Selezionare Modifica provisioning e attendere 10 secondi.

  4. Espandere Mapping e selezionare il mapping Provisioning degli utenti di Microsoft Entra ID. Se questa è la prima volta che sono stati configurati i mapping degli attributi per questa applicazione, questo sarà l'unico mapping presente per un segnaposto.

    Screenshot che mostra il provisioning di un utente.

  5. Per verificare che lo schema del database sia disponibile in Microsoft Entra ID, selezionare la casella di controllo Mostra opzioni avanzate e selezionare Modifica elenco di attributi per ScimOnPremises. Assicurarsi che tutti gli attributi selezionati nella configurazione guidata siano elencati. In caso contrario, attendere alcuni minuti per l'aggiornamento dello schema, quindi ricaricare la pagina. Dopo aver visualizzato gli attributi elencati, chiudere la pagina per tornare all'elenco dei mapping.

  6. Fare clic sul mapping del SEGNAPOSTO userPrincipalName. Questo mapping viene aggiunto per impostazione predefinita quando si configura per la prima volta il provisioning locale.

Screenshot del segnaposto. Modificare i valori dell'attributo in modo che corrispondano ai valori seguenti:

Tipo di mapping Attributo di origine Attributo di destinazione
Connessione diretta userPrincipalName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:ContosoLogin

Screenshot di modifica di un valore.

  1. Selezionare ora Aggiungi nuovo mapping e ripetere il passaggio successivo per ciascun mapping.

    Screenshot che mostra Aggiungi nuovo mapping.

  2. Specificare gli attributi di origine e di destinazione per ciascuno dei mapping nella tabella seguente.

    Screenshot che mostra il salvataggio del mapping.

    Tipo di mapping Attributo di origine Attributo di destinazione
    Connessione diretta userPrincipalName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:ContosoLogin
    Connessione diretta objectId urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:AzureID
    Connessione diretta mail urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:Email
    Connessione diretta givenName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:FirstName
    Connessione diretta surname urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:LastName
    Connessione diretta mailNickname urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:textID
  3. Dopo aver aggiunto tutti i mapping, selezionare Salva.

10. Assegnare gli utenti a un'applicazione

Ora che si dispone dell'host del connettore Microsoft Entra ECMA che comunica con Microsoft Entra ID e del mapping degli attributi configurato, è possibile passare alla configurazione di chi è nell'ambito del provisioning.

Importante

Se è stato eseguito l'accesso usando un ruolo di amministratore delle identità ibride, è necessario disconnettersi e accedere con un account avente almeno il ruolo di amministratore di applicazioni per questa sezione. Il ruolo di amministratore delle identità ibride non dispone delle autorizzazioni per assegnare utenti alle applicazioni.

Se nel database SQL sono presenti utenti esistenti, è necessario creare assegnazioni di ruolo dell'applicazione per tali utenti. Per altre informazioni su come creare assegnazioni di ruolo dell'applicazione in blocco, vedere governance degli utenti esistenti di un'applicazione in Microsoft Entra ID.

In caso contrario, se non sono presenti utenti correnti dell'applicazione, selezionare un utente di test da Microsoft Entra che verrà sottoposto a provisioning nell'applicazione.

  1. Assicurarsi che l'utente disponga di tutte le proprietà di cui verrà eseguito il mapping agli attributi necessari dello schema del database.

  2. Nel portale di Azure selezionare Applicazioni aziendali.

  3. Selezionare l'applicazione App ECMA locale.

  4. Nel riquadro sinistro, in Gestisci, fare clic su Utenti e gruppi.

  5. Selezionare Aggiungi utente/gruppo.

    Screenshot che mostra l'aggiunta di un nuovo utente.

  6. In Utenti selezionare Nessuno selezionato.

    Screenshot che mostra l'opzione Nessuno selezionato.

  7. Selezionare gli utenti a destra, quindi selezionare il pulsante Seleziona.

    Screenshot che mostra l’opzione Seleziona utenti.

  8. Selezionare Assegna.

    Screenshot che mostra l’opzione Assegna utenti.

11. Test del provisioning

Ora che gli attributi sono mappati e gli utenti sono assegnati, è possibile testare il provisioning su richiesta con uno degli utenti.

  1. Nel portale di Azure selezionare Applicazioni aziendali.

  2. Selezionare l'applicazione App ECMA locale.

  3. A sinistra, selezionare Provisioning.

  4. Selezionare Provisioning su richiesta.

  5. Cercare uno degli utenti di test e selezionare Effettuare il provisioning.

    Screenshot che mostra il test del provisioning.

  6. Dopo alcuni secondi, verrà visualizzato il messaggio Utente creato correttamente nel sistema di destinazione, con un elenco degli attributi utente.

12. Avvia provisioning degli utenti

  1. Al termine del provisioning su richiesta, tornare alla pagina di configurazione del provisioning. Assicurarsi che l'ambito sia impostato solo su utenti e gruppi assegnati, attivare il provisioning impostandolo su One selezionare Salva.

    Screenshot che mostra l’opzione Avvia provisioning.

  2. Attendere alcuni minuti per l'avvio del provisioning. Può richiedere fino a 40 minuti. Al termine del processo di provisioning, come descritto nella sezione successiva, se il test è stato completato, è possibile modificare lo stato del provisioning in Disattivato e selezionare Salva. Questa azione impedisce l'esecuzione del servizio di provisioning in futuro.

Risoluzione degli errori relativi al provisioning

Se viene visualizzato un errore, selezionare Visualizzare i log di provisioning. Cercare nel log una riga in cui lo stato è Errore e selezionare tale riga.

Se il messaggio di errore è Creazione dell'utente non riuscita, controllare gli attributi visualizzati in base ai requisiti dello schema del database.

Per altre informazioni, passare alla scheda Risoluzione dei problemi e consigli. Se il driver ODBC ha restituito un messaggio, potrebbe essere visualizzato qui. Ad esempio, il messaggio ERROR [23000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot insert the value NULL into column 'FirstName', table 'CONTOSO.dbo.Employees'; column does not allow nulls. è un errore del driver ODBC. In questo caso, il column does not allow nulls potrebbe indicare che la colonna FirstName nel database è obbligatoria, ma l'utente di cui è stato effettuato il provisioning non ha un attributo givenName, quindi non è stato possibile effettuare il provisioning dell'utente.

Verificare che il provisioning degli utenti sia stato eseguito correttamente

Dopo l'attesa, controllare il database SQL per assicurarsi che venga effettuato il provisioning degli utenti.

Screenshot che verifica che venga effettuato il provisioning degli utenti.

Appendice A

Se si usa SQL Server, è possibile utilizzare lo script SQL seguente per creare il database di esempio.

---Creating the Database---------
Create Database CONTOSO
Go
-------Using the Database-----------
Use [CONTOSO]
Go
-------------------------------------

/****** Object:  Table [dbo].[Employees]    Script Date: 1/6/2020 7:18:19 PM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Employees](
	[ContosoLogin] [nvarchar](128) NULL,
	[FirstName] [nvarchar](50) NOT NULL,
	[LastName] [nvarchar](50) NOT NULL,
	[Email] [nvarchar](128) NULL,
	[InternalGUID] [uniqueidentifier] NULL,
	[AzureID] [uniqueidentifier] NULL,
	[textID] [nvarchar](128) NULL
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[Employees] ADD  CONSTRAINT [DF_Employees_InternalGUID]  DEFAULT (newid()) FOR [InternalGUID]
GO

Passaggi successivi