ドメインセパレーションと ワークフロースタジオ
ドメインセパレーションは ワークフロースタジオ でサポートされています。 ワークフロースタジオ は、ビジネスロジックのドメインセパレーションをサポートしています。これにより、各テナントドメインに独自のフロー、アクション、サブフローを組み込むことができます。 ドメインセパレーションでは、データ、プロセス、および管理タスクをドメインと呼ばれる論理的なグループに分けることができます。どのユーザーがデータを表示できるか、データにアクセスできるかなど、このアプリケーションのいくつかの側面を制御できます。
サポートレベル:標準*
- ベーシックレベルを含みます。
- ビジネスロジック:サービスプロバイダーによって顧客ごとにプロセスを作成または変更できます。ユースケースには、単一のインスタンスでの複数のサービスプロバイダー顧客によるアプリケーションの正しい使用が反映されています。
- インスタンスの所有者は、特定のアプリケーションに期待される通りに、テナントごとに MVP ビジネスロジックとデータパラメーターを設定できる必要があります。
ワークフロースタジオにおけるドメインセパレーションの仕組み
システムドメインは、これらのルールに従って ワークフロースタジオ のコンテンツを分離します。
- ワークフロースタジオ のコンテンツは、コンテンツを作成したユーザーのドメインを継承します
- フロー、アクション、およびサブフローは、それらを作成したユーザーのドメインに属します。たとえば、TOP ドメインのサービスプロバイダー (SP) アドミニストレーターがフローを作成する場合、そのフローは TOP ドメインに属します。注:ドメインピッカーから選択されたドメインは、ユーザーが属するドメインを上書きします。たとえば、TOP ドメインの SP アドミニストレーターがドメインピッカーから ACME ドメインを選択する場合、作成されたコンテンツはすべて ACME ドメインに属します。
- ワークフロースタジオ のコンテンツはトリガーまたは開始されるドメインから実行される
- フロー、アクション、およびサブフローは、それらを開始したレコードまたはユーザーのドメインから実行されます。たとえば、子ドメイン ACME のユーザーが親ドメイン TOP に属するフローをトリガーすると、フローは子ドメイン ACME のコンテキストで実行されます。
表 : 1. トリガータイプ別のドメインアサイン トリガータイプ ドメインアサイン API 呼び出し API 呼び出しを行うユーザーのドメイン メールトリガー メール送信者のドメイン レコードトリガー トリガーレコードのドメイン スケジュールされたトリガー フローのドメイン サービスカタログトリガー 要求アイテムレコードのドメイン - ワークフロースタジオ は現在のドメインコンテキストからアクセス可能なコンテンツのみを実行する
- システムは、現在のドメインコンテキストでアクセスが許可されているコンテンツのみを実行できます。データ分離とドメイン階層を理解するには、「ドメインセパレーションについて理解する」を参照してください。たとえば、子ドメイン ACME のユーザーは、親ドメイン TOP に属するフローをトリガーすることはできますが、INITECH などの兄弟ドメインに属するフローをトリガーすることはできません。
ワークフロースタジオ は現在のユーザードメインコンテキストからレコード操作を実行します。ルックアップレコードアクションなどの読み取り操作は、現在選択されているドメインとその子に基づいてレコードを返します。たとえば、現在選択されているドメインが TOP ドメインである場合、TOP ドメインとそのすべての子 (ACME ドメインや INITECH ドメインなど) のレコードが表示されます。現在選択されているドメインが ACME ドメインの場合、ACME ドメインとその子のレコードは表示されますが、親 TOP ドメインのレコードは表示されません。
注:レコード操作では、レコードが属するテーブルに適用されるデータまたはプロセスの分離ルールを使用します。たとえば、ビジネスルールテーブルがプロセス分離されているとします。TOP ドメインにビジネスルールを追加すると、プロセス分離によって親ドメインのレコードにアクセスできるため、ACME ドメインなどの子ドメインのレコード操作でビジネスルールにアクセスできるようになります。ディシジョンテーブルやワークフローなどの別のアプリケーションを呼び出すフローも、現在のユーザードメインコンテキストから実行されます。
- ワークフロースタジオ はトリガー条件が満たされたすべてのフローを実行する
- あるドメイン内のフローは、別のドメインからのフローを上書きしたり、別のドメインからフローが実行されないようにすることはできません。ワークフロースタジオ は、現在のユーザーに表示され、トリガー条件が満たされたすべてのフローを実行します。たとえば、インシデントレコードの作成によってトリガーされる TOP ドメインに属するフローは、インシデントが ACME または INITECH のどちらの子ドメインに作成されているのかに関係なく、インシデントが作成されるたびに実行されます。
一般的なガイドライン
ワークフロースタジオ でドメインセパレーションを使用する場合は、次の一般的なガイドラインに従います。
- テナントフロー、アクション、およびサブフローがドメインに対して適切に実行されていることを確認する
- テナントは ワークフロースタジオ のコンテンツを上書きできないため、TOP ドメインのサービスプロバイダー (SP) アドミニストレーターは、ドメインで正しく実行されるように、テナントを作成して管理する必要があります。ドメイン固有のフローを作成することもできますが、階層の上位のドメインから作業しているユーザーが複数の子ドメインフローをトリガーする可能性があります。たとえば、TOP ドメインで作業しているユーザーは、ACME や INITECH などの子ドメインでフローをトリガーできます。注:フロー作成者は、階層内の現在のドメインと親ドメインから利用可能な ワークフロースタジオ のコンテンツのみを表示できます。ワークフロースタジオ は包含ドメインから表示されるコンテンツを表示しません。
- 各フロー、アクション、およびサブフローに一意の名前を指定する
- すべてのドメインが ワークフロースタジオ のコンテンツを共有するため、TOP ドメインの SP アドミニストレーターが各フロー、アクション、およびサブフローに一意の名前を付けて、特定のドメインを対象としているフローが別のドメインのフローの名前と重複しないようにします。たとえば、「インシデントの検証 - TOP」、「インシデントの検証 - ACME」、「インシデントの検証 - INITECH」のように、フロー名にドメインを追加します。
- フローとアクションに現在のドメインまたは親ドメインからのアーティファクトのみが含まれていることを確認する
- ワークフロースタジオ は、現在のドメインまたは親ドメインで利用できないアーティファクトを含むフローがアクティブ化されるのを防ぎます。たとえば、ACME ドメインに属するドメイン固有のフローを作成する場合、兄弟ドメイン INITECH に属するアクションまたはサブフローを含めることはできません。
- 属するドメインの ワークフロースタジオ のコンテンツを編集する
- 親ドメインのユーザーは子ドメインのフロー、アクション、およびサブフローを表示できますが、属するドメインでそれらを編集する必要があります。たとえば、TOP ドメインのアドミニストレーターは ACME ドメインからのフローを表示できますが、それを編集するには ACME ドメインに切り替える必要があります。