ライフサイクル ワークフローを使うと、就職者、異動者、または退職者のシナリオに基づいてトリガーできるワークフローを作成できます。 ライフサイクル ワークフローには、ユーザーのライフサイクル全体の一般的なシナリオを自動化する組み込みタスクがいくつか用意されていますが、最終的にはこれらの組み込みタスクの制限に達する可能性があります。 機能拡張機能を使用すると、カスタム タスク拡張機能の概念を利用して、ワークフローの一部として外部システムにコールアウトすることができます。 たとえば、ユーザーが組織に参加するときに、Teams 番号を割り当てるカスタム タスク拡張機能を含むワークフローを作成したり、ユーザーが退職したときにマネージャーの電子メール アカウントへのアクセスを許可する別のワークフローを作成したりできます。 機能拡張機能により、ライフサイクル ワークフローでは現在、 Azure Logic Apps に呼び出すカスタム タスク拡張機能の作成がサポートされています。
Logic Apps の前提条件
Azure Logic App とカスタム タスク拡張機能をリンクするには、次の前提条件を満たす必要があります。
- Azure サブスクリプション
- リソース グループ
- 新しい従量課金ベースのロジック アプリを作成するためのアクセス許可、または既存の従量課金ベースのロジック アプリへのアクセス許可
ロジック アプリ自体またはリソース グループ、サブスクリプション、管理グループなどの上位のスコープで、次のいずれかの Azure ロールの割り当てが必要です。
- ロジック アプリの共同作成者
- 投稿者
- 所有者
注
ロジック アプリ オペレーター ロールでは不十分です。
カスタム タスク拡張機能の展開シナリオ
カスタム タスク拡張機能を作成する場合、ライフサイクル ワークフローと対話する方法のシナリオは、次の 2 つの方法のいずれかになります。
- 起動して続行 する - Azure ロジック アプリが開始され、次のタスクの実行は直ちに続行され、Azure Logic App からの応答は期待されません。 このシナリオは、ライフサイクル ワークフローが Azure Logic App からのフィードバック (状態を含む) を必要としない場合に最適です。 ロジック アプリが正常に開始された場合、ライフサイクル ワークフロー タスクは成功と見なされます。
-
起動と待機 - Azure ロジック アプリが開始され、次のタスクの実行はロジック アプリからの応答を待機します。 カスタム タスク拡張機能が Azure Logic App からの応答を待機する期間を入力します。 定義された期間期間内に応答が受信されない場合、タスクは失敗したと見なされます。
注
応答は必ずしもロジック アプリによって提供される必要はありません。ロジック アプリが仲介者としてのみ機能する場合は、サード パーティシステムが応答できます。 詳細については、「 taskProcessingResult: resume」を参照してください。
応答の承認
ロジック アプリからの応答を待機するカスタム タスク拡張機能を作成すると、応答を送信できるアプリケーションを定義できます。
応答は、次のいずれかの方法で承認できます。
- システム割り当てマネージド ID (既定) - この選択により、Logic Apps のシステム割り当てマネージド ID を有効にして利用できます。 詳細については、「Azure Logic Apps でマネージド ID を使用して Azure リソースへのアクセスを認証する」を参照してください。
- 承認なし - この選択では承認は付与されません。また、アプリケーションのアクセス許可 (LifecycleWorkflows.ReadWrite.All) またはロールの割り当て (ライフサイクル ワークフロー管理者) を個別に割り当てる必要があります。 アプリケーションが応答している場合は、最小限の特権の原則に従っていないため、このオプションはお勧めしません。 このオプションは、応答がユーザーに代わってのみ提供される場合にも使用できます (LifecycleWorkflows.ReadWrite.All の委任されたアクセス許可とライフサイクル ワークフロー管理者ロールの割り当て)
- 既存のアプリケーション - この選択により、応答する既存のアプリケーションを選択できます。 通常のアプリケーションと、システムまたはユーザー割り当てマネージド ID を指定できます。 マネージド ID の種類の詳細については、「 マネージド ID の種類」を参照してください。
カスタム タスク拡張機能と Azure Logic Apps の高度な手順の統合
Azure Logic Apps 統合の手順の概要は次のとおりです。
注
Microsoft Entra 管理センターを使用してカスタム タスク拡張機能とロジック アプリを作成すると、これらの手順の大部分が自動化されます。 この方法でカスタム タスク拡張機能を作成する方法のガイドについては、「 カスタム タスク拡張機能に基づいて Logic Apps をトリガーする」を参照してください。
- 従量課金ベースの Azure ロジック アプリの作成: カスタム タスク拡張機能から呼び出すために使用される従量課金ベースの Azure ロジック アプリ。
- ライフサイクル ワークフローと互換性のある Azure Logic App を構成する: カスタム タスク拡張機能で使用できるように従量課金ベースの Azure ロジック アプリを構成します。 詳細については、「ライフサイクル ワークフローを使用するためのロジック アプリの構成」を参照してください。
- Azure ロジック アプリ内でカスタム ビジネス ロジックを構築する: ロジック アプリ デザイナーを使用して、Azure Logic App 内でビジネス ロジックを設定します。
- Azure Logic App に関する必要な情報を保持するライフサイクル ワークフロー customTaskExtension を作成します。構成された Azure Logic App を参照するカスタム タスク拡張機能を作成します。
- "カスタム タスク拡張機能の実行" タスクを使用してライフサイクル ワークフローを更新または作成し、作成した customTaskExtension を参照します。新しく作成したカスタム タスク拡張機能を新しいワークフローに追加するか、既存のワークフローに情報を更新します。