Skip to content

Commit fd9b755

Browse files
committed
updates
1 parent b63551c commit fd9b755

File tree

2 files changed

+17
-113
lines changed

2 files changed

+17
-113
lines changed

articles/active-directory/governance/configure-logic-app-lifecycle-workflows.md

Lines changed: 15 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ ms.custom: template-how-to #Required; leave this attribute/value as-is.
1313

1414
# Configure a Logic App for Lifecycle Workflow use (Preview)
1515

16-
Before you can use an existing Azure Logic App with the custom task extension feature of Lifecycle Workflows, it must first be made compatible. This reference guide provides a list of steps that must be taken to make the Azure Logic App compatible the custom task extension. For a simpler guide on creating a new Logic App with the custom task extension via the Lifecycle Workflows portal, see [Trigger Logic Apps based on custom task extensions (preview)](trigger-custom-task.md).
16+
Before you can use an existing Azure Logic App with the custom task extension feature of Lifecycle Workflows, it must first be made compatible. This reference guide provides a list of steps that must be taken to make the Azure Logic App compatible. For a guide on creating a new compatible Logic App via the Lifecycle Workflows portal, see [Trigger Logic Apps based on custom task extensions (preview)](trigger-custom-task.md).
1717

18-
## Configure existing Logic Apps for LCW use with Microsoft Graph
18+
## Configure existing Logic Apps for LCW use
1919

2020
Making an Azure Logic app compatible to run with the **Custom Task Extension** requires the following steps:
2121

@@ -31,7 +31,7 @@ To configure those you'll follow these steps:
3131

3232
1. Open the Azure Logic App you want to use with Lifecycle Workflow. Logic Apps may greet you with an introduction screen, which you can close with the X in the upper right corner.
3333

34-
1. On the left of the screen select **Logic App code view**.
34+
1. On the left of the screen, select **Logic App code view**.
3535

3636
1. In the editor paste the following code:
3737
```LCW Logic App code view template
@@ -199,24 +199,31 @@ To configure those you'll follow these steps:
199199
200200
1. Switch to the **Logic App designer** and inspect the configured trigger and callback action. To build your custom business logic, add other actions between the trigger and callback action. If you're only interested in the fire-and-forget scenario, you may remove the callback action.
201201
202-
1. On the left of the screen select **Identity**.
202+
1. On the left of the screen, select **Identity**.
203203
204-
1. Under the system assigned tab enable the status to register it with Azure Active Directory.
204+
1. Under the system assigned tab, enable the status to register it with Azure Active Directory.
205205
206206
1. Select Save.
207207
208208
1. For Logic Apps authorization policy, we'll need the managed identities **Application ID**. Since the Azure portal only shows the Object ID, we need to look up the Application ID. You can search for the managed identity by Object ID under **Enterprise Applications in the Azure AD Portal** to find the required Application ID.
209209
210210
1. Go back to the logic app you created, and select **Authorization**.
211211
212-
1. Create a new authorization policy based on the table below:
212+
1. Create two authorization policies based on the tables below:
213213
214214
|Claim |Value |
215215
|---------|---------|
216216
|Issuer | https://sts.windows.net/(Tenant ID)/ |
217217
|Audience | Application ID of your Logic Apps Managed Identity |
218218
|appID | ce79fdc4-cd1d-4ea5-8139-e74d7dbe0bb7 |
219219
220+
Policy name: AzureADLifecycleWorkflowsAuthPolicyV2App
221+
222+
|Claim |Value |
223+
|---------|---------|
224+
|Issuer | https://login.microsoftonline.com/(Tenant ID)/v2.0 |
225+
|Audience | Application ID of your Logic Apps Managed Identity |
226+
|appID | ce79fdc4-cd1d-4ea5-8139-e74d7dbe0bb7 |
220227
221228
1. Save the Authorization policy.
222229
> [!NOTE]
@@ -228,112 +235,9 @@ To configure those you'll follow these steps:
228235
- For Audience, ensure you're using the Application ID and not the Object ID of your Managed Identity
229236
- For appid, ensure the custom claim is “appid” in all lowercase. The appid value represents Lifecycle Workflows and is always the same.
230237
231-
232-
233-
## Linking Lifecycle Workflows with Logic Apps using Microsoft Graph
234-
235-
After the Logic App, we can now integrate it with Lifecycle Workflows. As outlined in the high-level steps we first need to create the customTaskExtension and afterwards, we can reference the customTaskExtension in our “Run a custom task extension” task.
236-
237-
The API call for creating a customTaskExtension is as follows:
238-
```http
239-
POST https://graph.microsoft.com/beta/identityGovernance/lifecycleManagement/customTaskExtensions
240-
Content-type: application/json
241-
242-
{
243-
"displayName": "<Custom task extension name>",
244-
"description": "<description for custom task extension>",
245-
"callbackConfiguration": {
246-
"@odata.type": "#microsoft.graph.identityGovernance.customTaskExtensionCallbackConfiguration",
247-
"durationBeforeTimeout": "PT1H"
248-
},
249-
"endpointConfiguration": {
250-
"@odata.type": "#microsoft.graph.logicAppTriggerEndpointConfiguration",
251-
"subscriptionId": "<Your Azure subscription>",
252-
"resourceGroupName": "<Resource group where the Logic App is located>",
253-
"logicAppWorkflowName": "<Logic App workflow name>"
254-
},
255-
"authenticationConfiguration": {
256-
"@odata.type": "#microsoft.graph.azureAdTokenAuthentication",
257-
"resourceId": " f9c5dc6b-d72b-4226-8ccd-801f7a290428"
258-
},
259-
"clientConfiguration": {
260-
"timeoutInMilliseconds": 1000,
261-
"maximumRetries": 1
262-
}
263-
}
264-
```
265-
> [!NOTE]
266-
> To create a custom task extension instance that does not wait for a response from the logic app, remove the **callbackConfiguration** parameter.
267-
268-
After the task is created, you can run the following GET call to retrieve its details:
269-
270-
```http
271-
GET https://graph.microsoft.com/beta/identityGovernance/lifecycleWorkflows/customTaskExtensions
272-
```
273-
274-
An example response is as follows:
275-
```Example Custom Task Extension return
276-
{
277-
"@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/lifecycleWorkflows/customTaskExtensions",
278-
"@odata.count": 1,
279-
"value": [
280-
{
281-
"@odata.context": "https://graph.microsoft.com/beta/$metadata#identityGovernance/lifecycleWorkflows/customTaskExtensions",
282-
"@odata.count": 1,
283-
"value": [
284-
{
285-
"id": "def9685c-e0f6-45aa-8fe8-a9f7ee6d30d6",
286-
"displayName": "My Custom Task Extension",
287-
"description": "My Custom Task Extension to test Lifecycle workflows Logic App integration",
288-
"createdDateTime": "2022-06-28T10:47:08.9359567Z",
289-
"lastModifiedDateTime": "2022-06-28T10:47:08.936017Z",
290-
"endpointConfiguration": {
291-
"@odata.type": "#microsoft.graph.logicAppTriggerEndpointConfiguration",
292-
"subscriptionId": "c500b67c-e9b7-4ad2-a90d-77d41385ae55",
293-
"resourceGroupName": "RG-LCM",
294-
"logicAppWorkflowName": "LcwDocsTest"
295-
},
296-
"authenticationConfiguration": {
297-
"@odata.type": "#microsoft.graph.azureAdTokenAuthentication",
298-
"resourceId": "f74118f0-849a-457d-a7e4-ee97eab6017a"
299-
},
300-
"clientConfiguration": {
301-
"maximumRetries": 1,
302-
"timeoutInMilliseconds": 1000
303-
},
304-
"callbackConfiguration": {
305-
"@odata.type": "#microsoft.graph.identityGovernance.customTaskExtensionCallbackConfiguration",
306-
"timeoutDuration": "PT1H"
307-
}
308-
}
309-
]
310-
}
311-
312-
```
313-
314-
You'll then take the custom extension **ID**, and use it as the value in the customTaskExtensionId parameter for the custom task example here:
315-
316-
> [!NOTE]
317-
> The new “Run a Custom Task Extension” task is already available in the Public Preview UI.
318-
319-
```Example of Custom Task extension task
320-
"tasks":[
321-
{
322-
"taskDefinitionId": "4262b724-8dba-4fad-afc3-43fcbb497a0e",
323-
"continueOnError": false,
324-
"displayName": "<Custom Task Extension displayName>",
325-
"description": "<Custom Task Extension description>",
326-
"isEnabled": true,
327-
"arguments": [
328-
{
329-
"name": "customTaskExtensionID",
330-
"value": "<ID of your Custom Task Extension>"
331-
}
332-
]
333-
}
334-
238+
## Using the Logic App with Lifecycle Workflows
335239
336-
```
240+
Now that your Logic app is configured for use with Lifecycle Workflows, you can create a custom task extension via UI or API and use it in a Lifecycle Workflow.
337241
338242
## Next steps
339243

articles/active-directory/governance/lifecycle-workflow-tasks.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ For Microsoft Graph the parameters for the **Generate Temporary Access Password
129129
|displayName | GenerateTAPAndSendEmail (Customizable by user) |
130130
|description | Generate Temporary Access Password and send via email to user's manager (Customizable by user) |
131131
|taskDefinitionId | 1b555e50-7f65-41d5-b514-5894a026d10d |
132-
|arguments | Argument contains the name parameter "tapLifetimeInMinutes", which is the lifetime of the temporaryAccessPass in minutes starting at startDateTime. Minimum 10, Maximum 43200 (equivalent to 30 days). The argument also contains the tapIsUsableOnce parameter, which determines whether the password is limited to a one time use. If true, the pass can be used once; if false, the pass can be used multiple times within the temporaryAccessPass lifetime. |
132+
|arguments | Argument contains the name parameter "tapLifetimeInMinutes", which is the lifetime of the temporaryAccessPass in minutes starting at startDateTime. Minimum 10, Maximum 43200 (equivalent to 30 days). The argument also contains the tapIsUsableOnce parameter, which determines whether the passcode is limited to a one time use. If true, the pass can be used once; if false, the pass can be used multiple times within the temporaryAccessPass lifetime. |
133133

134134

135135
```Example for usage within the workflow
@@ -643,4 +643,4 @@ For Microsoft Graph the parameters for the **Send offboarding email to users man
643643
## Next steps
644644

645645
- [Manage lifecycle workflows properties](manage-workflow-properties.md)
646-
- [Manage lifecycle workflow versions](delete-lifecycle-workflow.md)
646+
- [Manage lifecycle workflow versions](manage-workflow-tasks.md)

0 commit comments

Comments
 (0)