Automatizzare il provisioning e il deprovisioning utenti in applicazioni SaaS con Azure Active DirectoryAutomate user provisioning and deprovisioning to SaaS applications with Azure Active Directory

Informazioni sul provisioning utenti automatizzato per app SaaSWhat is automated user provisioning for SaaS apps?

Azure Active Directory (Azure AD) consente di automatizzare la creazione, la manutenzione e la rimozione delle identità utente in applicazioni cloud (SaaS), ad esempio Dropbox, Salesforce, ServiceNow e così via.Azure Active Directory (Azure AD) allows you to automate the creation, maintenance, and removal of user identities in cloud (SaaS) applications such as Dropbox, Salesforce, ServiceNow, and more.

Di seguito sono riportati alcuni esempi di operazioni che questa funzionalità consente di eseguire:Below are some examples of what this feature allows you to do:

  • Creare automaticamente nuovi account nei sistemi appropriati per i membri che si uniscono al team o all'organizzazione.Automatically create new accounts in the right systems for new people when they join your team or organization.
  • Disattivare automaticamente nuovi account nei sistemi appropriati per i membri che lasciano il team o l'organizzazione.Automatically deactivate accounts in the right systems when people leave the team or organization.
  • Assicurarsi che le identità nelle app e nei sistemi siano sempre aggiornate in base alle modifiche nella directory o nel sistema di risorse umane.Ensure that the identities in your apps and systems are kept up-to-date based on changes in the directory, or your human resources system.
  • Effettuare il provisioning di oggetti non utente, ad esempio di gruppi, in applicazioni che li supportano.Provision non-user objects, such as groups, to applications that support them.

Il provisioning utenti automatico include anche le funzionalità seguenti:Automated user provisioning also includes the following functionality:

  • Possibilità di ottenere una corrispondenza tra identità esistenti in sistemi di origine e di destinazione.The ability to match existing identities between source and target systems.
  • Mapping personalizzabili degli attributi che definiscono quali dati degli utenti devono essere trasferiti dal sistema di origine a quello di destinazione.Customizable attribute mappings that define what user data should flow from the source system to the target system.
  • Avvisi di posta elettronica facoltativi per segnalare gli errori di provisioning.Optional email alerts for provisioning errors
  • Log di report e attività per facilitare il monitoraggio e la risoluzione dei problemi.Reporting and activity logs to help with monitoring and troubleshooting.

Perché usare il provisioning automatico?Why use automated provisioning?

Di seguito sono riportate alcune motivazioni comuni per l'uso di questa funzionalità:Some common motivations for using this feature include:

  • Per evitare i costi, le inefficienze e gli errori umani associati ai processi di provisioning manuali.Avoiding the costs, inefficiencies, and human error associated with manual provisioning processes.
  • Per evitare i costi associati all'hosting e alla gestione di soluzioni e script di provisioning sviluppati in modo personalizzato.Avoiding the costs associated with hosting and maintaining custom-developed provisioning solutions and scripts
  • Per proteggere l'organizzazione, rimuovendo immediatamente dalle app SaaS principali le identità degli utenti che lasciano l'organizzazione.To secure your organization by instantly removing users' identities from key SaaS apps when they leave the organization.
  • Per importare facilmente un numero elevato di utenti in un'applicazione o un sistema SaaS specifico.To easily import a large number of users into a particular SaaS application or system.
  • Per usare un unico set di criteri per determinare gli utenti di cui viene eseguito il provisioning e che possono accedere a un'app.To enjoy having a single set of policies to determine who is provisioned and who can sign in to an app.

Come funziona il provisioning automatico?How does automatic provisioning work?

Il servizio di provisioning di Azure AD effettua il provisioning degli utenti nelle app SaaS e in altri sistemi connettendosi agli endpoint dell'API di gestione utenti specificati dai fornitori di ogni applicazione.The Azure AD Provisioning Service provisions users to SaaS apps and other systems, by connecting to user management API endpoints provided by each application vendor. Gli endpoint dell'API di gestione utenti consentono ad Azure AD di creare, aggiornare e rimuovere utenti a livello di codice.These user management API endpoints allow Azure AD to programmatically create, update, and remove users. Per alcune applicazioni, il servizio di provisioning può anche creare, aggiornare e rimuovere oggetti aggiuntivi relative alle identità, ad esempio i gruppi e i ruoli.For selected applications the provisioning service can also create, update, and remove additional identity-related objects, such as groups and roles.

Provisioning Figura 1: Provisioning del servizio di Azure ADProvisioning Figure 1: The Azure AD Provisioning Service

Provisioning in uscita Figura 2: Flusso di lavoro di provisioning degli utenti "in uscita" da Azure AD verso applicazioni SaaS comuniOutbound Provisioning Figure 2: "Outbound" user provisioning workflow from Azure AD to popular SaaS applications

Provisioning in ingresso Figura 3: Flusso di lavoro di provisioning degli utenti "in ingresso" da applicazioni di gestione delle risorse umane (HCM) comuni verso Azure Active Directory e Windows Server Active DirectoryInbound Provisioning Figure 3: "Inbound" user provisioning workflow from popular Human Capital Management (HCM) applications to Azure Active Directory and Windows Server Active Directory

Quali applicazioni e sistemi è possibile usare con il provisioning utenti automatico di Azure AD?What applications and systems can I use with Azure AD automatic user provisioning?

Azure AD offre il supporto preintegrato per un'ampia gamma di sistemi di risorse umane e app SaaS comuni, nonché il supporto generico per le app che implementano parti specifiche dello standard SCIM 2.0.Azure AD features pre-integrated support for a variety of popular SaaS apps and human resources systems, as well as generic support for apps that implement specific parts of the SCIM 2.0 standard.

Applicazioni preintegratePre-integrated applications

Per un elenco di tutte le applicazioni per cui Azure AD supporta un connettore di provisioning preintegrato, vedere l'elenco delle esercitazioni sulle applicazioni per il provisioning utenti.For a list of all applications for which Azure AD supports a pre-integrated provisioning connector, see the list of application tutorials for user provisioning.

Per contattare il team di progettazione di Azure AD e richiedere supporto per il provisioning di applicazioni aggiuntive, inviare un messaggio tramite il forum dei commenti di Azure Active Directory.To contact the Azure AD engineering team to request provisioning support for additional applications, submit a message through the Azure Active Directory feedback forum.

Nota

Per supportare il provisioning utenti automatico, un'applicazione deve prima di tutto includere le API di gestione utenti necessarie che consentono ai programmi esterni di automatizzare la creazione, la manutenzione e la rimozione degli utenti.In order for an application to support automated user provisioning, it must first provide the necessary user management APIs that allow for external programs to automate the creation, maintenance, and removal of users. Pertanto, non tutte le app SaaS sono compatibili con questa funzionalità.Therefore, not all SaaS apps are compatible with this feature. Per le app che supportano le API di gestione utenti, il team di progettazione di Azure AD potrà creare un connettore di provisioning e l'ordine di priorità di questa operazione è stabilito in base alle esigenze dei clienti attuali e potenziali.For apps that do support user management APIs, the Azure AD engineering team will then be able to build a provisioning connector to those apps, and this work is prioritized by the needs of current and prospective customers.

Connessione di applicazioni che supportano SCIM 2.0Connecting applications that support SCIM 2.0

Per informazioni su come connettere genericamente applicazioni che implementano API di gestione utenti basate su SCIM 2.0, vedere Uso di System for Cross-Domain Identity Management (SCIM) per abilitare il provisioning automatico di utenti e gruppi da Azure Active Directory ad applicazioni.For information on how to generically connect applications that implement SCIM 2.0 -based user management APIs, see Using SCIM to automatically provision users and groups from Azure Active Directory to applications.

Come è possibile configurare il provisioning automatico in un'applicazione?How do I set up automatic provisioning to an application?

La configurazione del servizio di provisioning di Azure AD per un'applicazione selezionata viene avviata nel portale di Azure.Configuration of the Azure AD provisioning service for a selected application starts in the Azure portal. Nella sezione Azure Active Directory > Applicazioni aziendali selezionare Aggiungi, quindi scegliere Tutti e aggiungere quanto segue a seconda dello scenario:In the Azure Active Directory > Enterprise Applications section, select Add, then All, and then add either of the following depending on your scenario:

Gallery

Il provisioning è configurato nella scheda Provisioning della schermata di gestione delle applicazioni.In the application management screen, provisioning is configured in the Provisioning tab.

Impostazioni

  • È necessario specificare le credenziali amministratore al servizio di provisioning di Azure AD per permettergli di connettersi all'API di gestione utenti indicata dall'applicazione.Admin credentials must be provided to the Azure AD provisioning service that will allow it to connect to the user management API provided by the application. Questa sezione consente anche di abilitare l'invio di notifiche di posta elettronica se le credenziali non risultano corrette o il processo di provisioning entra in quarantena.This section also allows you to enable email notifications if the credentials fail, or the provisioning job goes into quarantine.

  • È possibile configurare mapping degli attributi che consentono di specificare per quali campi del sistema di origine, ad esempio Azure AD, verrà eseguita la sincronizzazioni del contenuto con i campi corrispondenti del sistema di destinazione, ad esempio ServiceNow.Attribute mappings can be configured that specify which fields in the source system (example: Azure AD) will have their contents synchronized to which fields in the target system (example: ServiceNow). Se l'applicazione di destinazione supporta tale possibilità, questa sezione consente anche di configurare il provisioning dei gruppi, oltre che degli account utente.If the target application supports it, this section will allow you to optionally configure provisioning of groups in addition to user accounts. Le proprietà corrispondenti permettono di selezionare i campi usati per associare gli account tra i sistemi."Matching properties" allow you to select which fields are used to match accounts between the systems. Le espressioni permettono di modificare e trasformare i valori recuperati dal sistema di origine prima che vengano scritti nel sistema di destinazione."Expressions" allow you to modify and transform the values retrieved from the source system before they are written to the target system. Per altre informazioni, vedere Personalizzazione dei mapping degli attributi.For more information, see Customizing Attribute Mappings.

Impostazioni

  • I filtri di ambito indicano al servizio di provisioning gli utenti e il gruppo nel sistema di origine di cui effettuare il provisioning e/o il deprovisioning nel sistema di destinazione.Scoping filters tell the provisioning service which users and group in the source system should be provisioned and/or deprovisioned to the target system. I filtri di ambito presentano due aspetti che vengono valutati insieme e determinano l'inclusione nell'ambito del provisioning:There are two aspects to scoping filters that are evaluated together that determine who is in scope for provisioning:

    • Filtro in base ai valori di attributo: il menu "Ambito dell'oggetto di origine" nei mapping degli attributi consente di filtrare valori di attributo specifici.Filter on attribute values - The "Source Object Scope" menu in the attribute mappings allows filtering on specific attribute values. Ad esempio, è possibile specificare che solo gli utenti con un attributo "Department" di "Sales" devono essere inclusi nell'ambito del provisioning.For example, you can specify that only users with a "Department" attribute of "Sales" should be in scope for provisioning. Per altre informazioni, vedere Uso di filtri per la definizione dell'ambito.For more information, see Using scoping filters.

    • Filtro in base alle assegnazioni: il menu "Ambito" nella sezione Provisioning > Impostazioni del portale consente di specificare se nell'ambito del provisioning devono essere inclusi solo gli utenti e gruppi "assegnati" o se va effettuato il provisioning di tutti gli utenti nella directory di Azure AD.Filter on assignments - The "Scope" menu in the Provisioning > Settings section of the portal allows you to specify whether only "assigned" users and groups should be in scope for provisioning, or if all users in the Azure AD directory should be provisioned. Per informazioni sull'assegnazione di utenti e gruppi, vedere Assegnare un utente o un gruppo a un'app aziendale in Azure Active Directory.For information on "assigning" users and groups, see Assign a user or group to an enterprise app in Azure Active Directory.

  • Le impostazioni permettono di controllare il funzionamento del servizio di provisioning per un'applicazione, incluso lo stato di esecuzione o meno.Settings control the operation of the provisioning service for an application, including whether it is currently running or not.

  • I log di controllo restituiscono i record di ogni operazione eseguita dal servizio di provisioning di Azure AD.Audit logs provide records of every operation performed by the Azure AD provisioning service. Per altre informazioni, vedere la guida alla creazione di report sul provisioning.For more details, see the provisioning reporting guide.

Impostazioni

Nota

Il servizio di provisioning utenti di Azure AD può essere configurato e gestito anche con l'API di Microsoft Graph.The Azure AD user provisioning service can also be configured and managed using the Microsoft Graph API.

Cosa accade durante il provisioning?What happens during provisioning?

Quando Azure AD è il sistema di origine, il servizio di provisioning usa la funzionalità di query differenziale dell'API di Azure AD Graph per monitorare gli utenti e i gruppi.When Azure AD is the source system, the provisioning service uses the Differential Query feature of the Azure AD Graph API to monitor users and groups. Il servizio di provisioning esegue una sincronizzazione iniziale rispetto al sistema di origine e a quello di destinazione, seguita da sincronizzazioni incrementali periodiche.The provisioning service runs an initial sync against the source system and target system, followed by periodic incremental syncs.

Sincronizzazione inizialeInitial sync

Quando viene avviato il servizio di provisioning, la prima sincronizzazione consiste nelle operazioni seguenti:When the provisioning service is started, the first sync ever performed will:

  1. Il servizio esegue una query su tutti gli utenti e i gruppi presenti nel sistema di origine e recupera tutti gli attributi definiti nei mapping degli attributi.Query all users and groups from the source system, retrieving all attributes defined in the attribute mappings.
  2. Il servizio filtra gli utenti e i gruppi restituiti, usando assegnazioni configurate o filtri di ambito basati su attributi.Filter the users and groups returned, using any configured assignments or attribute-based scoping filters.
  3. Quando viene trovato un utente da assegnare o incluso nell'ambito per il provisioning, il servizio esegue una query sul sistema di destinazione per individuare un utente corrispondente usando gli attributi di corrispondenza designati.When a user is found to be assigned or in scope for provisioning, the service queries the target system for a matching user using the designated matching attributes. Se ad esempio il nome userPrincipal nel sistema di origine è un attributo di corrispondenza ed è mappato a userName nel sistema di destinazione, il servizio di provisioning esegue una query sul sistema di destinazione per trovare i valori di userName che corrispondono ai valori del nome userPrincipal nel sistema di origine.Example: If the userPrincipal name in the source system is the matching attribute and maps to userName in the target system, then the provisioning service queries the target system for userNames that match the userPrincipal name values in the source system.
  4. Se nel sistema di destinazione non viene trovato un utente corrispondente, questo viene creato usando gli attributi restituiti dal sistema di origine.If a matching user is not found in the target system, it is created using the attributes returned from the source system.
  5. Se invece viene trovato un utente corrispondente, questo viene aggiornato usando gli attributi forniti dal sistema di origine.If a matching user is found, it is updated using the attributes provided by the source system.
  6. Se i mapping degli attributi contengono attributi "di riferimento", il servizio esegue altri aggiornamenti nel sistema di destinazione per creare e collegare gli oggetti a cui viene fatto riferimento.If the attribute mappings contain "reference" attributes, the service performs additional updates on the target system to create and link the referenced objects. È ad esempio possibile che nel sistema di destinazione un utente abbia un attributo "Manager" collegato a un altro utente creato nel sistema di destinazione.For example, a user may have a "Manager" attribute in the target system, which is linked to another user created in the target system.
  7. Al termine della sincronizzazione iniziale, il servizio salva in modo permanente una filigrana che fornisce il punto di partenza per le successive sincronizzazioni incrementali.Persist a watermark at the end of the initial sync, which provides the starting point for the subsequent incremental syncs.

Alcune applicazioni come ServiceNow, Google Apps e Box supportano non solo il provisioning degli utenti ma anche quello dei gruppi e dei relativi membri.Some applications such as ServiceNow, Google Apps, and Box support not only provisioning users, but also provisioning groups and their members. In questi casi, se nei mapping è abilitato il provisioning di gruppi, il servizio di provisioning sincronizza sia gli utenti che i gruppi e successivamente anche le appartenenze ai gruppi.In those cases, if group provisioning is enabled in the mappings, the provisioning service synchronizes the users and the groups, and then subsequently synchronizes the group memberships.

Sincronizzazioni incrementaliIncremental syncs

Dopo la sincronizzazione iniziale, tutte le sincronizzazioni successive consistono nelle operazioni seguenti:After the initial sync, all subsequent syncs will:

  1. Il servizio esegue una query sul sistema di origine per trovare gli utenti e i gruppi che sono stati aggiornati dopo il salvataggio dell'ultima filigrana.Query the source system for any users and groups that were updated since the last watermark was stored.
  2. Il servizio filtra gli utenti e i gruppi restituiti, usando assegnazioni configurate o filtri di ambito basati su attributi.Filter the users and groups returned, using any configured assignments or attribute-based scoping filters.
  3. Quando viene trovato un utente da assegnare o incluso nell'ambito per il provisioning, il servizio esegue una query sul sistema di destinazione per individuare un utente corrispondente usando gli attributi di corrispondenza designati.When a user is found to be assigned or in scope for provisioning, the service queries the target system for a matching user using the designated matching attributes.
  4. Se nel sistema di destinazione non viene trovato un utente corrispondente, questo viene creato usando gli attributi restituiti dal sistema di origine.If a matching user is not found in the target system, it is created using the attributes returned from the source system.
  5. Se invece viene trovato un utente corrispondente, questo viene aggiornato usando gli attributi forniti dal sistema di origine.If a matching user is found, it is updated using the attributes provided by the source system.
  6. Se i mapping degli attributi contengono attributi "di riferimento", il servizio esegue altri aggiornamenti nel sistema di destinazione per creare e collegare gli oggetti a cui viene fatto riferimento.If the attribute mappings contain "reference" attributes, the service performs additional updates on the target system to create and link the referenced objects. È ad esempio possibile che nel sistema di destinazione un utente abbia un attributo "Manager" collegato a un altro utente creato nel sistema di destinazione.For example, a user may have a "Manager" attribute in the target system, which is linked to another user created in the target system.
  7. Se un utente precedentemente incluso nell'ambito per il provisioning viene rimosso dall'ambito e la relativa assegnazione viene annullata, il servizio disabilita l'utente nel sistema di destinazione eseguendo un aggiornamento.If a user that was previously in scope for provisioning is removed from scope (including being unassigned), the service disables the user in the target system via an update.
  8. Se un utente precedentemente incluso nell'ambito per il provisioning viene disabilitato o eliminato temporaneamente nel sistema di origine, il servizio disabilita l'utente nel sistema di destinazione eseguendo un aggiornamento.If a user that was previously in scope for provisioning is disabled or soft-deleted in the source system, the service disables the user in the target system via an update.
  9. Se un utente precedentemente incluso nell'ambito per il provisioning viene eliminato definitivamente nel sistema di origine, il servizio elimina l'utente nel sistema di destinazione.If a user that was previously in scope for provisioning is hard-deleted in the source system, the service deletes the user in the target system. In Azure AD gli utenti vengono eliminati definitivamente dopo che sono trascorsi 30 giorni dall'eliminazione temporanea.In Azure AD, users are hard-deleted 30 days after they are soft-deleted.
  10. Alla fine di una sincronizzazione incrementale, il servizio salva in modo permanente una nuova filigrana che fornisce il punto di partenza per le successive sincronizzazioni incrementali.Persist a new watermark at the end of the incremental sync, which provides the starting point for the subsequent incremental syncs.

Nota

È possibile disabilitare le operazioni di creazione, aggiornamento o eliminazione usando le caselle di controllo Azioni oggetto di destinazione nella sezione Mapping degli attributi.You can optionally disable the create, update, or delete operations by using the Target object actions check boxes in the Attribute Mappings section. La logica per disabilitare un utente durante un aggiornamento viene controllata anche tramite un mapping di attributi da un campo come "accountEnabled".The logic to disable a user during an update is also controlled via an attribute mapping from a field such as "accountEnabled".

Il servizio di provisioning continua a eseguire sincronizzazioni incrementali back-to-back all'infinito, in base agli intervalli definiti nell'esercitazione specifica di ogni applicazione, finché non si verifica uno degli eventi seguenti:The provisioning service will continue to run back-to-back incremental syncs indefinitely, at intervals defined in the tutorial specific to each application, until one of the following events occurs:

  • Il servizio viene arrestato manualmente tramite il portale di Azure o con il comando appropriato dell'API Graph.The service is manually stopped using the Azure portal, or using the appropriate Graph API command
  • Viene attivata una nuova sincronizzazione iniziale tramite l'opzione Cancella lo stato corrente e riavvia la sincronizzazione nel portale di Azure o con il comando appropriato dell'API Graph.A new initial sync is triggered using the Clear state and restart option in the Azure portal, or using the appropriate Graph API command. Per effetto di questa operazione, le eventuali filigrane salvate vengono cancellate e tutti gli oggetti di origine vengono nuovamente valutati.This clears any stored watermark and causes all source objects to be evaluated again.
  • Viene attivata una nuova sincronizzazione iniziale a causa di una modifica nel mapping degli attributi o nei filtri di ambito.A new initial sync is triggered due to a change in attribute mappings or scoping filters. Anche per effetto di questa operazione, le eventuali filigrane salvate vengono cancellate e tutti gli oggetti di origine vengono nuovamente valutati.This also clears any stored watermark and causes all source objects to be evaluated again.
  • Il processo di provisioning entra in quarantena (vedere sotto) a causa di errori molto frequenti e resta in quarantena per più di quattro settimane.The provisioning process goes into quarantine (see below) due to a high error rate, and stays in quarantine for more than four weeks. In questo caso, il servizio viene disabilitato automaticamente.In this event, the service will be automatically disabled.

Errori e ripetizione di tentativiErrors and retries

Se non è possibile aggiungere, aggiornare o eliminare un singolo utente nel sistema di destinazione a causa di un errore in tale sistema, il tentativo di eseguire questa operazione viene ripetuto nel ciclo di sincronizzazione successivo.If an individual user can't be added, updated, or deleted in the target system due to an error in the target system, then the operation will be retried in the next sync cycle. Se l'errore si verifica nuovamente, la frequenza dei tentativi viene gradualmente ridotta fino a un solo tentativo al giorno.If the user continues to fail, then the retries will begin to occur at a reduced frequency, gradually scaling back to just one attempt per day. Per risolvere l'errore, gli amministratori devono verificare gli eventi di "deposito dei processi" nei log di controllo per determinare la causa all'origine del problema e intraprendere l'azione appropriata.To resolve the failure, administrators will need to check the audit logs for "process escrow" events to determine the root cause and take the appropriate action. Tra gli errori comuni possono essere inclusi i seguenti:Common failures can include:

  • Per gli utenti nel sistema di origine non è definito un valore di attributo che è necessario nel sistema di destinazione.Users not having an attribute populated in the source system that is required in the target system
  • Per gli utenti nel sistema di origine è definito un valore di attributo per cui è impostato un vincolo univoco nel sistema di destinazione e lo stesso valore è presente in un altro record utente.Users having an attribute value in the source system for which there is a unique constraint in the target system, and the same value is present in another user record

Questi errori possono essere risolti modificando i valori di attributo per l'utente interessato nel sistema di origine o modificando i mapping degli attributi in modo da non causare conflitti.These failures can be resolved by adjusting the attribute values for the affected user in the source system, or by adjusting the attribute mappings to not cause conflicts.

QuarantenaQuarantine

Se la maggior parte o tutte le chiamate al sistema di destinazione non riuscono a causa di un errore (ad esempio nel caso di credenziali di amministratore non valide), il processo di provisioning passa allo stato di "quarantena".If most or all of the calls made against the target system consistently fail due to an error (such as in the case of invalid admin credentials), then the provisioning job goes into a "quarantine" state. Questa condizione viene indicata nel report di riepilogo sul provisioning e tramite posta elettronica, se nel portale di Azure sono state configurate le notifiche di posta elettronica.This is indicated in the provisioning summary report, and via email if email notifications were configured in the Azure portal.

In stato di quarantena, la frequenza delle sincronizzazioni incrementali viene gradualmente ridotta fino a diventare giornaliera.When in quarantine, the frequency of incremental syncs is gradually reduced to once per day.

Dopo che tutti gli errori sono stati risolti, il processo di provisioning viene rimosso dalla quarantena e viene avviato il ciclo di sincronizzazione successivo.The provisioning job will be removed from quarantine after all of the offending errors being fixed, and the next sync cycle starts. Se lo stato di quarantena dura per più di quattro settimane, il processo di provisioning viene disabilitato.If the provisioning job stays in quarantine for more than four weeks, the provisioning job is disabled.

Quanto tempo sarà necessario per eseguire il provisioning degli utenti?How long will it take to provision users?

Il livello delle prestazioni varia a seconda che la sincronizzazione eseguita dal processo di provisioning sia iniziale o incrementale, come descritto nella sezione precedente.Performance depends on whether your provisioning job is performing an initial sync or an incremental sync, as described in the previous section.

Per le sincronizzazioni iniziali, la durata del processo dipende da diversi fattori, tra cui il numero di utenti e gruppi nell'ambito del provisioning e il numero totale di utenti e gruppi nel sistema di origine.For initial syncs, the job time depends on a variety of factors, including the number of users and groups in scope for provisioning, and the total number of users and group in the source system. Più avanti in questa sezione è presente un elenco completo dei fattori che influiscono sulle prestazioni della sincronizzazione iniziale.A comprehensive list of factors that affect initial sync performance are summarized later in this section.

Per le sincronizzazioni incrementali, il tempo necessario dipende dal numero di modifiche rilevate in un ciclo di sincronizzazione specifico.For incremental syncs, the job time depends on the number of changes detected in that sync cycle. Se sono presenti meno di 5.000 modifiche agli utenti o alle appartenenze a gruppi, è possibile completare il processo in un unico ciclo di sincronizzazione incrementale.If there are fewer than 5,000 user or group membership changes, the job can finish within a single incremental sync cycle.

La tabella seguente riepiloga i tempi di sincronizzazione per gli scenari di provisioning più comuni.The following table summarizes synchronization times for common provisioning scenarios. In questi scenari, il sistema di origine è Azure AD e il sistema di destinazione è un'applicazione SaaS.In these scenarios, the source system is Azure AD and the target system is a SaaS application. I tempi di sincronizzazione sono elaborati tramite un'analisi statistica dei processi di sincronizzazione per le applicazioni SaaS ServiceNow, Workplace, Salesforce e Google Apps.The sync times are derived from a statistical analysis of sync jobs for the SaaS applications ServiceNow, Workplace, Salesforce, and Google Apps.

Configurazione dell'ambitoScope configuration Utenti, gruppi e membri nell'ambitoUsers, groups, and members in scope Ora della sincronizzazione inizialeInitial sync time Ora della sincronizzazione incrementaleIncremental sync time
Sincronizza solo utenti e gruppi assegnatiSync assigned users and groups only < 1.000< 1,000 < 30 minuti< 30 minutes < 30 minuti< 30 minutes
Sincronizza solo utenti e gruppi assegnatiSync assigned users and groups only 1.000 - 10.0001,000 - 10,000 142 - 708 minuti142 - 708 minutes < 30 minuti< 30 minutes
Sincronizza solo utenti e gruppi assegnatiSync assigned users and groups only 10.000 - 100.00010,000 - 100,000 1.170 - 2.340 minuti1,170 - 2,340 minutes < 30 minuti< 30 minutes
Sincronizza tutti gli utenti e i gruppi in Azure ADSync all users and groups in Azure AD < 1.000< 1,000 < 30 minuti< 30 minutes < 30 minuti< 30 minutes
Sincronizza tutti gli utenti e i gruppi in Azure ADSync all users and groups in Azure AD 1.000 - 10.0001,000 - 10,000 < 30 - 120 minuti< 30 - 120 minutes < 30 minuti< 30 minutes
Sincronizza tutti gli utenti e i gruppi in Azure ADSync all users and groups in Azure AD 10.000 - 100.00010,000 - 100,000 713 - 1.425 minuti713 - 1,425 minutes < 30 minuti< 30 minutes
Sincronizza tutti gli utenti in Azure ADSync all users in Azure AD < 1.000< 1,000 < 30 minuti< 30 minutes < 30 minuti< 30 minutes
Sincronizza tutti gli utenti in Azure ADSync all users in Azure AD 1.000 - 10.0001,000 - 10,000 43 - 86 minuti43 - 86 minutes < 30 minuti< 30 minutes

Nella configurazione Sincronizza solo utenti e gruppi assegnati, è possibile applicare le formule seguenti per determinare la durata approssimativa prevista, minima e massima, per la sincronizzazione iniziale:For the configuration Sync assigned user and groups only, you can use the following formulas to determine the approximate minimum and maximum expected initial sync times:

Minimum minutes =  0.01 x [Number of assigned users, groups, and group members]
Maximum minutes = 0.08 x [Number of assigned users, groups, and group members] 

Riepilogo dei fattori che influenzano il tempo necessario per completare una sincronizzazione iniziale:Summary of factors that influence the time it takes to complete an initial sync:

  • Numero totale di utenti e gruppi nell'ambito del provisioningThe total number of users and groups in scope for provisioning

  • Numero totale di utenti, gruppi e membri del gruppo presenti nel sistema di origine (Azure AD)The total number of users, groups, and group members present in the source system (Azure AD)

  • Se gli utenti nell'ambito del provisioning corrispondono o meno agli utenti esistenti nell'applicazione di destinazione o se devono essere creati per la prima volta.Whether or not users in scope for provisioning are matched to existing users in the target application, or need to be created for the first time. I processi di sincronizzazione nei quali tutti gli utenti vengono creati per la prima volta hanno una durata approssimativa doppia rispetto ai processi di sincronizzazione nei quali tutti gli utenti corrispondono a utenti esistenti.Sync jobs for which all users are created for the first time take approximately twice as long as sync jobs for which all users are matched to existing users.

  • Numero di errori nei log di controllo.Number of errors in the audit logs. Le prestazioni risultano ridotte se sono presenti troppi errori e se il servizio di provisioning è in stato di quarantenaPerformance is slower if there are many errors and the provisioning service has gone into a quarantine state

  • Limitazioni relative al numero e alla frequenza delle richieste implementate dal sistema di destinazione.Request rate limits and throttling implemented by the target system. Alcuni sistemi di destinazione implementano limitazioni relative al numero e alla frequenza delle richieste, che possono influire negativamente sulle prestazioni durante la sincronizzazione di grandi quantità di dati.Some target systems implement request rate limits and throttling which can impact performance during large sync operations. In queste condizioni, un'applicazione che riceve un numero eccessivo di richieste potrebbe ridurre la propria velocità di risposta o interrompere la connessione.Under these conditions, an app that receives too many requests too fast might slow its response rate or close the connection. Per migliorare le prestazioni, il connettore deve essere regolato in modo da non inviare le richieste di app più velocemente di quanto l'app possa elaborarle.To improve performance, the connector needs to adjust by not sending the app requests faster than the app can process them. I connettori di provisioning creati da Microsoft sono in grado di eseguire questa regolazione.Provisioning connectors built by Microsoft make this adjustment.

  • Numero e dimensione dei gruppi assegnati.The number and sizes of assigned groups. La sincronizzazione dei gruppi assegnati richiede più tempo rispetto alla sincronizzazione degli utenti.Syncing assigned groups takes longer than syncing users. Il numero e la dimensione dei gruppi assegnati incidono sulle prestazioni.Both the number and the sizes of the assigned groups impact performance. Se in un'applicazione è abilitato il mapping per la sincronizzazione dell'oggetto del gruppo, in aggiunta agli utenti vengono sincronizzate le proprietà del gruppo, come i nomi e le appartenenze del gruppo.If an application has mappings enabled for group object sync, group properties such as group names and memberships are synced in addition to users. Queste sincronizzazioni aggiuntive richiederanno più tempo rispetto alla sincronizzazione dei soli oggetti utente.These additional syncs will take longer than only syncing user objects.

Come è possibile stabilire se il provisioning utenti viene eseguito correttamente?How can I tell if users are being provisioned properly?

Tutte le operazioni eseguite dal servizio di provisioning utenti vengono registrate nei log di controllo di Azure AD.All operations performed by the user provisioning service are recorded in the Azure AD audit logs. Nella registrazione sono incluse tutte le operazioni di lettura e scrittura eseguite nei sistemi di origine e di destinazione, oltre ai dati degli utenti che sono stati letti o scritti durante ogni operazione.This includes all read and write operations made to the source and target systems, as well as what user data was read or written during each operation.

Per informazioni su come leggere i log di controllo nel portale di Azure, vedere la guida alla creazione di report sul provisioning.For information on how the read the audit logs in the Azure portal, see the provisioning reporting guide.

Come si risolvono i problemi relativi al provisioning utenti?How do I troubleshoot issues with user provisioning?

Per informazioni aggiuntive su come risolvere i problemi di provisioning automatico dell'utente in base agli scenari, vedere Problemi di configurazione e provisioning degli utenti in un'applicazione.For scenario-based guidance on how to troubleshoot automatic user provisioning, see Problems configuring and provisioning users to an application.

Quali sono le procedure consigliate per implementare il provisioning utenti automatico?What are the best practices for rolling out automatic user provisioning?

Per un esempio di piano di distribuzione dettagliato per il provisioning utenti in uscita verso un'applicazione, vedere Identity Deployment Guide for User Provisioning/ (Guida alla distribuzione delle identità per il provisioning utenti).For an example step-by-step deployment plan for outbound user provisioning to an application, see the Identity Deployment Guide for User Provisioning/