Informazioni di riferimento per l'estensione dei mapping degli attributi Microsoft Entra con callout personalizzati tramite flussi di lavoro di estendibilità LCW (anteprima)

Quando si configura il provisioning, uno dei tipi di mapping degli attributi che è possibile specificare è il tipo di mapping del flusso di lavoro di estendibilità Lifecycle Workflow (LCW). Questo tipo di mapping consente di estendere i mapping degli attributi oltre le trasformazioni di base supportate dal tipo di mapping delle espressioni, consentendo di soddisfare scenari in cui potrebbe essere necessaria la logica di business personalizzata.

Per configurare il tipo di mapping del flusso di lavoro di estendibilità LCW, è necessario creare un flusso di lavoro di estendibilità LCW che richiama un'app per la logica Azure per generare un valore. Il valore generato dall'app per la logica Azure viene quindi applicato a un attributo di destinazione.

Prerequisites

Sarà necessario creare un'app per la logica Azure. A tale scopo, è necessario disporre di:

È necessario creare un flusso di lavoro di estendibilità LCW per attivare l'app per la logica Azure. A tale scopo, è necessario disporre di:

Per configurare un processo di provisioning, inclusi i mapping degli attributi, è necessario:

Panoramica del flusso di lavoro di estendibilità LCW

Un flusso di lavoro di estendibilità LCW è un nuovo tipo di flusso di lavoro del ciclo di vita distinto dai tipi Joiner, Mover e Leaver esistenti.

Analogamente ai flussi di lavoro Joiner, Mover e Leaver, è necessario specificare un'attività per l'esecuzione del flusso di lavoro. In questo caso, l'attività sarà quella di attivare un'estensione personalizzata. È possibile considerare un'estensione personalizzata come wrapper per l'app per la logica Azure che ospita la logica personalizzata, quando l'estensione personalizzata viene attivata dal flusso di lavoro di estendibilità, verrà eseguita l'app per la logica Azure.

A differenza dei flussi di lavoro Joiner, Mover e Leaver, tuttavia, i flussi di lavoro di estendibilità possono essere eseguiti prima del provisioning di un utente. In altre parole, un flusso di lavoro di estendibilità può essere eseguito indipendentemente dal fatto che un determinato account utente sia presente nella directory Entra ID.

In questo modo, i flussi di lavoro di estendibilità sono utili negli scenari di pre-provisioning (detti anche pre-joiner). Ad esempio, è possibile usare un flusso di lavoro di estendibilità per generare un alias univoco per un dipendente appena assunto prima di effettuare il provisioning dell'account nella directory e successivamente concedere loro l'accesso alle risorse aziendali.

Note

Attualmente, un flusso di lavoro di estendibilità LCW supporta solo un tipo di trigger (mapping degli attributi di provisioning) e un'attività (Esegui un'estensione attività personalizzata guidata dai dati).

Passaggio 0: Creare un'app per la logica Azure

Sarà necessario creare un'app per la logica basata sul consumo Azure che restituisce un singolo valore che verrà applicato a un attributo di destinazione.

Se non si ha App per la logica di Azure, è possibile leggere altre informazioni qui. In questa esercitazione è anche possibile trovare istruzioni su come creare la prima app per la logica basata sul consumo Azure.

Passaggio 1: Creare un'estensione personalizzata

Prima di creare un flusso di lavoro di estendibilità, è necessaria un'estensione personalizzata che è possibile collegare al flusso di lavoro di estendibilità. Come accennato in precedenza, è possibile considerare l'estensione personalizzata come wrapper per l'app per la logica Azure in cui risiede la logica personalizzata. Quando il flusso di lavoro di estendibilità attiva l'estensione personalizzata, verrà eseguita l'app per la logica Azure.

Nell'interfaccia di amministrazione di Microsoft Entra

  1. Usando il browser, accedere al tenant Entra ID tramite il Interfaccia di amministrazione di Microsoft Entra.

  2. Passare a Flussi di lavoro ciclo di > vita Estensioni > personalizzate Aggiungere un'estensione personalizzata.

    Screenshot del pannello dell'estensione personalizzata nel portale di Microsoft Entra e dove trovare il pulsante

  3. Nella scheda Informazioni di base della creazione guidata aggiungere un nome e una descrizione per l'estensione personalizzata.

  4. Nella scheda Comportamento attività selezionare Avvia attesa per il risultato (anteprima).

  5. Nella scheda Dettagli è possibile collegare l'estensione personalizzata a un'app per la logica Azure. Supponendo che ne sia già stata creata una, selezionare No per Crea un'app per la logica, quindi immettere i dettagli della sottoscrizione, del gruppo di risorse e dell'app per la logica per Azure app per la logica.

    Screenshot del riquadro dei dettagli della creazione guidata dell'estensione personalizzata, in cui i clienti collegano un'app per la logica Azure.

  6. Esaminare i dettagli dell'estensione personalizzata nella scheda Rivedi e crea e fare clic su Crea per completare.

È ora disponibile un'estensione personalizzata pronta per il collegamento a un flusso di lavoro di estendibilità come attività. Si esaminerà ora la creazione di un flusso di lavoro di estendibilità.

Uso di Microsoft Graph

  1. Avviare lo strumento Microsoft Graph Explorer.
  2. Accedere al tenant.
  3. Selezionare Autorizzazioni di modifica.
  4. Consenso alle autorizzazioni necessarie seguenti: LifecycleWorkflows-CustomExt.ReadWrite.All
  5. Usare l'API Create customTaskExtensions per creare un'estensione personalizzata.

Richiesta di esempio

POST /identityGovernance/lifecycleWorkflows/customTaskExtensions
Content-Type: application/json

{
	"displayName": "test1",
	"description": "test1",
	"endpointConfiguration": {
		"@odata.type": "#microsoft.graph.logicAppTriggerEndpointConfiguration",
		"subscriptionId": "00000000-0000-0000-0000-000000000000",
		"resourceGroupName": "lcw-synthetics",
		"logicAppWorkflowName": "testReply"
	},
	"callbackConfiguration": null,
	"authenticationConfiguration": {
		"@odata.type": "#microsoft.graph.azureAdPopTokenAuthentication"
	},
	"id": "",
	"clientConfiguration": {
		"timeoutInMilliseconds": 1000,
		"maximumRetries": 1
	},
	"replyMode": "response"
}

Risposta di esempio

HTTP/1.1 201 Created
Content-Type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/lifecycleWorkflows/customTaskExtensions/$entity",
  "id": "902ca666-6b67-4d45-839c-8836d7f205f9",
  "displayName": "test1",
  "description": "test1",
  "createdDateTime": "2026-04-20T19:56:27.0723563Z",
  "lastModifiedDateTime": "2026-04-20T19:56:27.0723657Z",
  "replyMode": "response",
  "callbackConfiguration": null,
  "endpointConfiguration": {
		"@odata.type": "#microsoft.graph.logicAppTriggerEndpointConfiguration",
		"subscriptionId": "00000000-0000-0000-0000-000000000000",
		"resourceGroupName": "lcw-synthetics",
		"logicAppWorkflowName": "testReply",
		"url": "https://prod-05.southcentralus.logic.azure.com:443/workflows/c070dc95455e4e5a98da954feeb7e756/triggers/manual/paths/invoke?api-version=2016-10-01"
  },
	"authenticationConfiguration": {
		"@odata.type": "#microsoft.graph.azureAdPopTokenAuthentication"
	},
	"clientConfiguration": {
		"maximumRetries": 1,
		"timeoutInMilliseconds": 1000
	}
}

È ora disponibile un'estensione personalizzata pronta per il collegamento a un flusso di lavoro di estendibilità come attività. Si esaminerà ora la creazione di un flusso di lavoro di estendibilità.

Passaggio 2: Creare un flusso di lavoro di estendibilità

Dopo aver creato un'estensione personalizzata, è ora possibile creare un flusso di lavoro di estendibilità la cui attività consiste nell'attivare l'estensione personalizzata.

Nell'interfaccia di amministrazione di Microsoft Entra

  1. Usando il browser, accedere al tenant Entra ID tramite il Interfaccia di amministrazione di Microsoft Entra.

  2. Passare a Flussi di lavoro del ciclo di vita di Identity Governance > Crea flusso di > lavoro.

  3. Nella scheda Scegli un modello selezionare il modello di estendibilità provisioning in tempo reale .

    Screenshot del catalogo dei modelli nella creazione guidata flusso di lavoro del ciclo di vita, uno dei quali è un modello per un flusso di lavoro di estendibilità.

  4. Nella scheda Informazioni di base immettere un nome e una descrizione per il flusso di lavoro. Il tipo di trigger verrà impostato automaticamente sul mapping degli attributi di provisioning, ovvero l'unico tipo di trigger attualmente supportato per i flussi di lavoro di estendibilità.

  5. A questo punto si configurerà il flusso di lavoro di estendibilità in modo che attivi un'estensione personalizzata. Nella scheda Rivedi attività fare clic sull'attività Esegui un'estensione attività personalizzata guidata dai dati , che dovrebbe essere stata aggiunta automaticamente alla tabella delle attività del flusso di lavoro come parte del modello di estendibilità del provisioning in tempo reale.

    Screenshot del riquadro

  6. Nel riquadro Di contesto Esegui un'estensione attività personalizzata guidata dai dati fare clic sul campo Seleziona estensione personalizzata e selezionare l'estensione personalizzata creata nella sezione precedente.

  7. Fare clic su Salva.

  8. Esaminare i dettagli del flusso di lavoro nella scheda Rivedi e crea e fare clic su Crea per completare.

È ora disponibile un flusso di lavoro di estendibilità che può attivare un'app per la logica Azure che contiene la logica personalizzata. Si esaminerà ora il mapping del flusso di lavoro di estendibilità a un attributo di destinazione.

Uso di Microsoft Graph

  1. Avviare lo strumento Microsoft Graph Explorer.
  2. Accedere al tenant.
  3. Selezionare Autorizzazioni di modifica.
  4. Consenso alle autorizzazioni necessarie seguenti: LifecycleWorkflows-Workflow.ReadWrite.All
  5. Usare l'API Crea flusso di lavoro per creare un flusso di lavoro di estendibilità LCW.

Richiesta di esempio

POST /identityGovernance/lifecycleWorkflows/workflows
Content-Type: application/json

{
	"category": "extensibility",
	"displayName": "Real-time Provisioning extensibility (Preview)",
	"description": "Execute real-time extensibility tasks for performing attribute mapping extensions",
	"tasks": [
		{
      "arguments": [
        {
          "name": "customTaskExtensionID",
					"value": "f740553f-a6a2-4dc8-82df-148336dcd920"
				}
			],
			"description": "Run a Custom Task Extension and pass data from the workflow as input",
			"displayName": "Run a Data driven Custom Task Extension (Preview)",
			"isEnabled": true,
			"id": "77bb973f-3150-4a0f-b49b-24d1baa677f6",
			"continueOnError": false,
			"taskDefinitionId": "09303719-609e-4348-8bbc-d3ee45a2657e",
			"category": "extensibility"
		}
	],
	"executionConditions": {
		"@odata.type": "#microsoft.graph.identityGovernance.provisioningAttributeMapping"
 	},
	"isEnabled": true,
	"isSchedulingEnabled": false,
	"targetSubjectType": "provisioningObject"
}

Risposta di esempio

HTTP/1.1 201 Created
Content-Type: application/json

{
	"@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/lifecycleWorkflows/workflows/$entity",
	"category": "extensibility",
	"description": "Execute real-time extensibility tasks for performing attribute mapping extensions",
	"displayName": "Real-time Provisioning extensibility (Preview)",
	"isEnabled": true,
	"isSchedulingEnabled": false,
	"lastModifiedDateTime": "2026-04-20T19:58:42.4447369Z",
	"targetSubjectType": "provisioningObject",
	"createdDateTime": "2026-04-20T19:58:42.444727Z",
	"deletedDateTime": null,
	"id": "e41388b5-446e-4cf1-9bce-92cd09f828e5",
	"nextScheduleRunDateTime": null,
	"version": 1,
	"executionConditions": {
		"@odata.type": "#microsoft.graph.identityGovernance.provisioningAttributeMapping"
	},
	"quarantineDetails": {
		"quarantinedDateTime": null,
		"quarantineType": "notQuarantined",
		"quarantineReason": null
	},
	"settings": {
		"quarantineConfiguration": {
			"matchMode": "any",
			"conditions": []
		}
	}
}

È ora disponibile un flusso di lavoro di estendibilità che può attivare un'app per la logica Azure che contiene la logica personalizzata. Si esaminerà ora il mapping del flusso di lavoro di estendibilità a un attributo di destinazione.

Passaggio 3: Mapping di un flusso di lavoro di estendibilità a un attributo di destinazione

Dopo aver creato un flusso di lavoro di estendibilità, è possibile eseguirne il mapping a un attributo in un processo di provisioning. In questo modo, quando è in corso un processo di provisioning, il flusso di lavoro di estendibilità genererà un valore per tale attributo per ogni oggetto nell'ambito del processo di provisioning.

Ad esempio, se si esegue il mapping di un flusso di lavoro di estendibilità all'attributo di destinazione userPrincipalName e sono presenti cinque utenti nell'ambito del processo di provisioning, il flusso di lavoro genererà un valore per l'attributo userPrincipalName per tutti e cinque gli utenti.

Nell'interfaccia di amministrazione di Microsoft Entra

  1. Usando il browser, accedere al tenant Entra ID tramite il Interfaccia di amministrazione di Microsoft Entra.

  2. Passare ad App > aziendali Tutte le applicazioni.

    Screenshot del pannello delle app aziendali nel portale di Microsoft Entra.

  3. Selezionare un'applicazione specifica, ad esempio un connettore HR, ad esempio SuccessFactors o Workday o un'applicazione SaaS.

  4. All'interno dell'applicazione passare a Provisioning Attribute mapping (Mapping degli attributi di provisioning>).

  5. Nell'elenco di mapping degli attributi trovare l'attributo di destinazione per cui si vuole richiamare la logica personalizzata. Selezionare l'icona di modifica (il simbolo a forma di matita) per l'attributo.

    Screenshot del pannello 'Mapping attributi' e dove trovare l'icona a forma di matita, ovvero il punto di ingresso del pannello 'Modifica mapping attributi'.

  6. Nel pannello Modifica mapping attributi selezionare Flusso di lavoro di estendibilità LCW nell'elenco a discesa Tipo di mapping .

  7. Fare clic sul campo Flusso di lavoro di estendibilità LCW per aprire la selezione del flusso di lavoro di estendibilità.

  8. Nel riquadro Selezionare il contesto del flusso di lavoro di estendibilità selezionare il flusso di lavoro di estendibilità appropriato dall'elenco e premere Seleziona.

  9. Per il campo Attributi di input specificare gli attributi del sistema di origine che verranno passati al flusso di lavoro di estendibilità e un alias per l'attributo (gli alias possono essere particolarmente utili per gli scenari in cui i nomi degli attributi di origine sono lunghi o non leggibili e potrebbero avere bisogno di un nome descrittivo).

  10. Selezionare il pulsante Modifica nella parte inferiore del pannello Modifica mapping attributi .

Se il flusso di lavoro di estendibilità è stato mappato correttamente all'attributo di destinazione, la pagina Mapping attributi verrà aggiornata in modo che la colonna Tipo di mapping mostri il flusso di lavoro di estendibilità LCW per tale attributo specificato.

Dopo aver configurato le impostazioni del processo di provisioning, è ora possibile avviare un processo di provisioning come di consueto. Il flusso di lavoro di estendibilità LCW verrà ora eseguito per tutti gli oggetti nell'ambito.

Uso di Microsoft Graph

  1. Usando il browser, accedere al tenant Entra ID tramite il Interfaccia di amministrazione di Microsoft Entra.

  2. Passare ad App > aziendali Tutte le applicazioni.

  3. Selezionare l'applicazione per cui si desidera modificare i mapping degli attributi.

  4. Passare a Mapping attributi di provisioning > e selezionare Opzioni > avanzate Modifica schema.

    Importante

    Prima di apportare modifiche, è consigliabile salvare una copia dello schema esistente. In questo modo è possibile ripristinare facilmente una versione stabile/non modificata dello schema.

  5. Cercare l'attributo di destinazione da modificare in modo da eseguire il mapping al flusso di lavoro di estendibilità LCW. Questi sono i campi che è necessario modificare per l'attributo:

    Nome del campo Description
    flowType Deve essere ObjectAddOnly, poiché i flussi di lavoro di estendibilità LCW possono essere eseguiti solo durante la creazione di eventi
    matchingPriority Deve essere 0, poiché gli attributi di destinazione mappati a un flusso di lavoro di estendibilità LCW non possono essere usati come attributi corrispondenti
    expression Questo sarà il GUID del flusso di lavoro di estendibilità LCW
    name Uguale a expression; questo sarà GUID del flusso di lavoro di estendibilità LCW
    type Deve essere LifecycleWorkflow
    parameters In questo caso si configureranno gli attributi di origine da passare come input nell'app per la logica Azure. keyè l'alias per un determinato input (ciò consente agli sviluppatori di usare un nome descrittivo con riferimento a un input nell'app per la logica Azure, utile per situazioni in cui un attributo di origine può essere lungo o complicato). expression e name sarà un attributo di origine.

    Esempio di un nuovo mapping di attributi che usa flussi di lavoro di estendibilità LCW

    Nell'esempio seguente viene aggiornato l'attributo userPrincipalName di destinazione.

    {
    	"defaultValue": null,
    	"exportMissingReferences": false,
    	"flowBehavior": "FlowWhenChanged",
    	"flowType": "ObjectAddOnly",
    	"matchingPriority": 0,
    	"targetAttributeName": "userPrincipalName",
    	"source": {
    		"expression": "2b19441a-9ff0-449d-ba74-3e4226eff132",
    		"name": "2b19441a-9ff0-449d-ba74-3e4226eff132",
    		"type": "LifecycleWorkflow",
    		"parameters": [
    			{
    				"key": "firstname",
    				"value": {
    					"expression": "[name.givenName]",
    					"name": "name.givenName",
    					"type": "Attribute",
    					"parameters": []
    				}
    			},
    			{
    				"key": "lastname",
    				"value": {
    					"expression": "[name.familyName]",
    					"name": "name.familyName",
    					"type": "Attribute",
    					"parameters": []
    				}
    			}
    		]
    	}
    }
    
  6. Salvare l'intero oggetto schema modificato, non solo la parte modificata (prendere in considerazione questa operazione in un file separato). Sarà necessario fornire l'intero oggetto schema nel corpo della richiesta dello strumento Microsoft Graph Explorer in un secondo momento.

  7. Avviare lo strumento Microsoft Graph Explorer.

  8. Accedere al tenant.

  9. Selezionare Autorizzazioni di modifica.

  10. Consenso alle autorizzazioni necessarie seguenti: Synchronization.ReadWrite.All

  11. Copiare/incollare l'oggetto schema modificato nella sezione Corpo della richiesta dello strumento Microsoft Graph Explorer e usare l'API Update synchronizationSchema per aggiornare i mapping degli attributi per un determinato processo di provisioning.

Richiesta di esempio

PUT /servicePrincipals/{id}/synchronization/jobs/{jobId}/schema
Content-Type: application/json

// In your request body, paste the entire schema object

Risposta di esempio

HTTP/1.1 204 No Content

Dopo aver configurato le impostazioni del processo di provisioning, è ora possibile avviare un processo di provisioning come di consueto. Il flusso di lavoro di estendibilità LCW verrà ora eseguito per tutti gli oggetti nell'ambito.

Limitazioni

Si notino le limitazioni di funzionalità seguenti:

  • I callout personalizzati non sono supportati per la sincronizzazione cloud. I flussi di lavoro di estendibilità LCW possono essere usati solo per flussi di sincronizzazione in ingresso, basati su API, provisioning in uscita SaaS e flussi di sincronizzazione tra tenant.
  • Non è possibile usare un attributo con il tipo di mapping del flusso di lavoro di estendibilità LCW per la corrispondenza. Se il valore di un attributo è stato generato usando un flusso di lavoro di estendibilità LCW, non può essere usato come attributo corrispondente.
  • I callout personalizzati sono supportati solo per la creazione di eventi. Il mapping del flusso di lavoro di estendibilità LCW può essere applicato solo durante la creazione, non gli aggiornamenti o le eliminazioni.
  • Attributi di sicurezza personalizzati (CSA). Non è supportato in modo esplicito l'uso di flussi di lavoro di estendibilità LCW per la generazione di valori per le ca csa. Se si decide di farlo, procedere con cautela.