Provisioning dell'applicazione basato su attributi con filtri per la definizione dell'ambito

Questo articolo spiega come usare i filtri di ambito per definire regole basate su attributi per determinare gli utenti per i quali viene eseguito il provisioning per un'applicazione.

Casi d'uso dei filtri di ambito

Un filtro di ambito consente ad Azure Active Directory (Azure AD) di eseguire il provisioning del servizio per includere o escludere gli utenti che dispongono di un attributo che corrisponde a un valore specifico. Ad esempio, quando si esegue il provisioning di utenti di Azure AD in un'applicazione SaaS usata da un team di vendita, è possibile specificare che solo gli utenti con un attributo "Reparto" di "Vendite" devono essere inclusi nell'ambito del provisioning.

I filtri di ambito possono essere usati in modo diverso a seconda del tipo di connettore di provisioning:

  • Provisioning in uscita da Azure AD ad applicazioni SaaS. Quando Azure AD è il sistema di origine, le assegnazioni di utenti e gruppi sono il metodo più comune per determinare quali utenti sono inclusi nell'ambito per il provisioning. Queste assegnazioni vengono usate anche per l'abilitazione dell'accesso Single Sign-On e offrono un unico metodo per gestire l'accesso e il provisioning. I filtri di ambito possono essere usati facoltativamente, oltre o in sostituzione delle assegnazioni, per filtrare gli utenti in base ai valori di attributo.

    Suggerimento

    Maggiore è il numero di utenti e gruppi nell'ambito del provisioning, più il processo di sincronizzazione può richiedere. L'impostazione dell'ambito per la sincronizzazione di utenti e gruppi assegnati, la limitazione del numero di gruppi assegnati all'app e la limitazione delle dimensioni dei gruppi ridurrà il tempo necessario per sincronizzare tutti gli utenti inclusi nell'ambito.

  • Provisioning in ingresso dalle applicazioni di Gestione connessione ibrida ad Azure AD e Active Directory. Quando il sistema di origine è un'applicazione di Gestione connessione ibrida come Workday, i filtri di ambito sono il metodo principale per determinare gli utenti che devono eseguire il provisioning dall'applicazione Gestione connessione ibrida ad Active Directory o Azure AD.

Per impostazione predefinita, i connettori di provisioning di Azure AD non dispongono di filtri di ambito basati su attributi configurati.

Creazione di un filtro di ambito

Un filtro di ambito è costituito da una o più clausole. Le clausole determinano gli utenti che verranno restituiti dal filtro di ambito valutando gli attributi di ogni utente. Ad esempio, se una clausola richiede che l'attributo "Stato" di un utente sia uguale a "Italia", nell'applicazione viene eseguito il provisioning solo degli utenti italiani.

Una sola clausola definisce una sola condizione per un singolo valore dell'attributo. Se vengono create più clausole in un solo filtro di ambito, queste vengono valutate insieme con la logica "AND". Ciò significa che tutte le clausole devono restituire "true" affinché si esegua il provisioning di un utente.

Infine, è possibile creare più filtri di ambito per una singola applicazione. Se sono presenti più filtri di ambito, questi vengono valutati insieme con la logica "OR". Ciò significa che se tutte le clausole in un qualsiasi filtro di ambito configurato restituiscono "true", per l'utente viene eseguito il provisioning.

Ogni utente o gruppo elaborato dal servizio di provisioning di Azure AD viene sempre valutato singolarmente in base a ogni filtro di ambito.

Vedere ad esempio il filtro di ambito seguente:

Filtro di definizione dell'ambito

In base a questo filtro di ambito, gli utenti devono soddisfare i criteri seguenti per poterne effettuare il provisioning:

  • Devono trovarsi a New York.
  • Devono lavorare nel reparto Engineering.
  • L'ID del dipendente aziendale deve essere compreso tra 1.000.000 e 2.000.000.
  • La posizione non deve essere null o vuota.

Creare filtri di ambito

I filtri di ambito sono configurati come parte dei mapping degli attributi per ogni connettore di provisioning dell'utente di Azure AD. La procedura seguente presuppone che sia già stato configurato il provisioning automatico per una delle applicazioni supportate e che si aggiunga un filtro di ambito per tale applicazione.

Creare un filtro di ambito

  1. Nel portale di Azure passare alla sezione Azure Active Directory>Applicazioni aziendali>Tutte le applicazioni.

  2. Selezionare l'applicazione per cui è stato configurato il provisioning automatico, ad esempio "ServiceNow".

  3. Selezionare la scheda Provisioning.

  4. Nella sezione Mapping selezionare il mapping per cui si vuole configurare un filtro di ambito, ad esempio "Synchronize Azure Active Directory Users to ServiceNow" (Sincronizzare gli utenti di Azure Active Directory in ServiceNow).

  5. Selezionare il menu Ambito dell'oggetto di origine.

  6. Selezionare Aggiungi filtro di ambito.

  7. Definire una clausola selezionando un'origine Nome attributo, un Operatore e un Valore dell'attributo da confrontare. Sono supportati gli operatori seguenti:

    a. UGUALE A. La clausola restituisce "true" se l'attributo valutato corrisponde esattamente al valore della stringa di input (con distinzione tra maiuscole e minuscole).

    b. NON UGUALE. La clausola restituisce "true" se l'attributo valutato non corrisponde al valore della stringa di input (con distinzione tra maiuscole e minuscole).

    c. IS TRUE (È VERO). La clausola restituisce "true" se l'attributo valutato contiene un valore booleano true.

    d. IS FALSE (È FALSO). La clausola restituisce "true" se l'attributo valutato contiene un valore booleano false.

    e. È NULL. La clausola restituisce "true" se l'attributo valutato è vuoto.

    f. NON È NULL. La clausola restituisce "true" se l'attributo valutato non è vuoto.

    g. REGEX MATCH (CORRISPONDENZA REGEX). La clausola restituisce "true" se l'attributo valutato corrisponde a un modello di espressione regolare. Ad esempio: ([1-9][0-9]) corrisponde a qualsiasi numero compreso tra 10 e 99 (distinzione tra maiuscole e minuscole).

    h. NOT REGEX MATCH (NESSUNA CORRISPONDENZA REGEX). La clausola restituisce "true" se l'attributo valutato non corrisponde a un modello di espressione regolare. Restituisce "false" se l'attributo è null/vuoto.

    i. Greater_Than. La clausola restituisce "true" se l'attributo valutato è maggiore del valore . Il valore specificato nel filtro di ambito deve essere un numero intero e l'attributo dell'utente deve essere un numero intero [0,1,2,...].

    j. Greater_Than_OR_EQUALS. La clausola restituisce "true" se l'attributo valutato è maggiore o uguale al valore. Il valore specificato nel filtro di ambito deve essere un numero intero e l'attributo dell'utente deve essere un numero intero [0,1,2,...].

    k. Include. La clausola restituisce "true" se l'attributo valutato contiene il valore stringa (con distinzione tra maiuscole e minuscole), come descritto qui.

Importante

  • Il filtro IsMemberOf non è attualmente supportato.
  • L'attributo members in un gruppo non è attualmente supportato.
  • Il filtro non è supportato per gli attributi multivalore.
  • I filtri di ambito restituiranno "false" se il valore è null/vuoto.
  1. Facoltativamente, ripetere i passaggi 7 e 8 per aggiungere altre clausole di ambito.

  2. In Titolo filtro di ambito aggiungere un nome per il filtro di ambito.

  3. Selezionare OK.

  4. Selezionare di nuovo OK nella schermata Filtri di ambito. Facoltativamente, ripetere i passaggi da 6 a 11 per aggiungere un altro filtro di ambito.

  5. Selezionare Salva nella schermata Mapping attributi.

Importante

Il salvataggio di un nuovo filtro di ambito attiva una nuova sincronizzazione completa per l'applicazione, in cui tutti gli utenti del sistema di origine vengono nuovamente valutati rispetto al nuovo filtro di ambito. Se un utente nell'applicazione era precedentemente incluso nell'ambito per il provisioning, ma non rientra più nell'ambito, l'account verrà disabilitato o ne verrà eseguito il deprovisioning nell'applicazione. Per eseguire l'override di questo comportamento predefinito, fare riferimento a Ignora eliminazione per gli account utente che escono dall'ambito.

Filtri di ambito comuni

Target Attribute Operatore Valore Descrizione
userPrincipalName REGEX MATCH .*@domain.com Tutti gli utenti con userPrincipal con il dominio @domain.com saranno nell'ambito del provisioning
userPrincipalName NON REGEX MATCH .*@domain.com Tutti gli utenti con userPrincipal che dispone del dominio @domain.com saranno fuori ambito per il provisioning
department EQUALS sales Tutti gli utenti del reparto vendite sono nell'ambito del provisioning
workerID REGEX MATCH (1[0-9][0-9][0-9][0-9][0-9][0-9]) Tutti i dipendenti con id di lavoro compresi tra 1000000 e 2000000 sono inclusi nell'ambito del provisioning.