UiPath Documentation
process-mining
2021.10
true

Process Mining ユーザー ガイド

最終更新日時 2026年5月5日

アクセス マトリックスを使用して、データへのロールベースのアクセスを有効化する

はじめに

このページでは、アクセス マトリックスを使用して、エンドユーザーがデータにロールベースでアクセスできるようにする方法について説明します。

パート 1: アクセスマトリックスファイルを定義する

アクセス マトリックスでは、ディスカバリー アクセラレータ、アプリ、またはプロセスで使用されるデータのどの部分にアクセスできるユーザーが定義されます。

エンドユーザーのメール アドレスがアクセス マトリックスで確認されます。 アクセス権は、ユーザーのメール アドレスと、アクセス マトリックス ファイルで定義されたディスカバリー アクセラレータ、アプリ、またはプロセスの識別に使用する属性との関係に基づいて付与されます。

以下の画像でマトリックス ファイルの例をご確認ください。

ドキュメントの画像

注:

アクセスマトリックスファイルには、少なくとも Email フィールドと、ユーザーが表示を許可されているデータの識別に使用されるフィールドが含まれている必要があります。この例では、 Company code visibility 属性を使用してプロセス データを識別します。

メールの書式は、大文字の有無にかかわらず使用できます。アクセラレータまたはアプリで形式がチェックされ、必要に応じて調整されます。パート4を参照してください。

この例では、データをフィルター処理するための列として企業コードの表示設定を使用します。 この列には複数の値を含めることができます。これにより、データはフィルター処理されて、ユーザーは許可されている企業コードしか表示できません。 企業コードは、同じ列内でコンマで区切られます。

パート 2: アクセス マトリクス ファイルをアップロードする

Discovery Accelerator、アプリ、またはプロセスでアクセス マトリックス ファイルを使用するには、Superadmin Server の [データ ] タブにアップロードする必要があります。「サーバーデータタブ」を参照してください。

以下の画像で例をご確認ください。

ドキュメントの画像

上の例では Purchase-to-Pay Discovery Accelerator のアクセス マトリックスが使用されていますが、これは他のディスカバリー アクセラレータやアプリでも同じように使用できます。複数のファイルを管理したり、元の Excel ファイルに列を追加したりできます。

アプリケーション レベルの制限については 、「認証」をご覧ください。

パート 3: アクセス マトリックスへのアクセスに使用するテーブルを作成する

ディスカバリー アクセラレータまたはアプリからのアクセス マトリックスにアクセスするには、以下を作成する必要があります。

tables:

  • 現在のユーザーを表示するシステム テーブル
  • [サーバー データ] タブのアクセス マトリックスにアクセスするための接続文字列テーブル。

以下の画像で例をご確認ください。

ドキュメントの画像

この例では、次の表が使用されています。

  • User
  • Access Matrix です。

ユーザー テーブル

現在のユーザーを表示するシステム テーブルを作成するには、以下の手順に従います。

手順操作
1開発環境でアクセラレータまたはアプリを開き、[ データ ] タブに移動します。
2テーブル リスト内を右クリックし、[ 新しいテーブル -> システム テーブル...] を選択します。
3新しいテーブルをダブルクリックし、[テーブル スコープ] として [現在のユーザー] を選択します。[OK] をクリックします。
4F2 キーを押して、新しいテーブルの名前を User に変更します。

User テーブルは、現在のユーザーを表示するシステム テーブルです。データへのアクセス権はメールに基づいて確認されます。

表をAccess_Matrix

Access Matrixテーブルは、Superadmin Server データタブのアクセスマトリックスファイルへの接続文字列を使用します。アクセス マトリックス ファイルを読み込むための接続文字列テーブルを作成するには、以下の手順に従います。

手順操作
1テーブル リスト内を右クリックし、[ 新しいテーブル -> 接続文字列...] を選択します。
2新しい表を右クリックし、[ 詳細設定] - [>オプション] を選択します。
3[テーブル オプション] ダイアログで、[詳細設定] セクションの [テーブルの範囲] フィールドのドロップダウン リストをクリックし、範囲を [サーバー] に変更します。
4新しいテーブルをダブルクリックし、[ Server data] (サーバーデータ )タブにアップロードしたアクセスマトリックスファイルに接続文字列を追加します。[OK] をクリックします。
5F2 キーを押して、新しいテーブルの名前を「Access_Matrix」に変更します。

以下の画像でご確認ください。

ドキュメントの画像

パート 4: ユーザーが表示できるデータを確認する式を作成する

この部分は、次の手順で構成されています。

手順 1: 入力形式を修正します。

手順 2: ログイン ユーザーをアクセス マトリックスと一致させる

手順 3: キャッシュ生成にフォールバックを作成する

手順 4: データをフィルター処理します。

手順 1: 入力形式を修正する

アクセス マトリックスと Active Directory 内のエンドユーザーの間でメールの書式設定が似ているようにするには、メールの書式設定を取り除く式を作成する必要があります。 式を作成するには、以下の手順に従います。

手順操作
1Access_matrix テーブルをクリックします。
2表項目リスト内を右クリックし、[ 新しい式...] を選択します。
3[名前] フィールドに「Email」と入力し、[種類] として [レコードごと] を選択します。
4式を入力します。 trim(lower(Email_input))
5[OK] をクリックします。

以下の画像でご確認ください。

ドキュメントの画像

ステップ2:ログインユーザーをアクセスマトリックスに一致させる

ユーザーが表示できる会社コード (または他のデータ属性) を返す検索式を User テーブルに作成する必要があります。

手順操作
1[ユーザー] テーブルをクリックします。
2表項目リストを右クリックし、[ 新しい式...] を選択します。
3[名前] フィールドに「会社コードの表示ルックアップ」と入力し、[種類] として [ルックアップ] を選択します。
4[入力テーブル] として [Access_Matrix] を選択します
5式を入力します。 any(records.Company_code_visibility_input)
6[Settings] パネル内を右クリックし、[Add level] を選択します。
7をクリックし、メール式を選択します。
8メールの式**を右クリックし、[式レベルとして設定] を選択します。
9[OK] をクリックします。

以下の画像でご確認ください。

ドキュメントの画像

ユーザーにすべてを表示できる場合は、 ALL が返されます。 アクセス マトリックスでユーザーが定義されていない場合、lookup は NULLを返し、新規ユーザーにデータが表示されないようにします。

手順 3: キャッシュ生成のフォールバックを作成する

これは、キャッシュの生成中にすべてのデータがキャッシュを生成するために取得されるようにするために必要な手順です。 キャッシュの生成とすべてのデータのフィルター処理時に NULL が返されるアクセス マトリックスを回避するには、フォールバックを設定する必要があります。

データセット全体に対してキャッシュが生成されるように、 ALL をフォールバックとして使用できます。 つまり、キャッシュの生成時にフィルター処理が適用されません。 データは、キャッシュの生成後にのみ特定のユーザーに対してフィルター処理されます。 このロジックは、新しいユーザーを作成する際はメール フィールドが必須フィールドであるため、他のユーザーの場合は空にならなくなります。 キャッシュの生成時にメール フィールドは空であるため、フィルターは適用されません。

フォールバック 機能を備える式を作成するには、以下の手順に従います。

手順操作
1[ユーザー] テーブルをクリックします。
2表項目リスト内を右クリックし、[ 新しい式...] を選択します。
3[名前] フィールドに「会社コードの可視性」と入力し、[種類] として [レコードごと] を選択します。
4式を入力します。 if ( Email = NULL , "ALL" , Company_code_visibility_lookup )
5[OK] をクリックします。

以下の画像でご確認ください。

ドキュメントの画像

ユーザーが「ALL」を割り当てている場合、そのユーザーはすべてのデータを表示できます。それ以外の場合、ユーザが表示できるデータは、会社コード (または指定したその他の属性) によって決定されます。

ステップ 4: データをフィルタリングする

式は、ユーザーに "ALL" が割り当てられているかどうかを確認する必要があります。 この場合、すべてのデータがユーザーに表示されます。 それ以外の場合は、式が属性を抽出して、この属性がリストに含まれているかどうかを確認する必要があります。

アクセス マトリックスの企業コードは 1 つの行で維持されるため、各会社コード (またはユーザーが指定したその他の属性) のリストを確実に作成するには、コードを分割およびトリミングする必要もあります。 トリミングは、テキスト内の不要なスペースを取り除くために使用されます。

データをフィルター処理する式を作成するには、以下の手順に従います。

手順操作
1Cases_data テーブルをクリックします。
2表項目リスト内を右クリックし、[ 新しい式...] を選択します。
3[名前] フィールドに「会社コード フィルター ユーザー」と入力し、[種類] として [レコードごと] を選択します。
5式を入力して企業コードのリストを定義します。 var list := trim(split(Company_code_visibility, ","));
8ユーザーに「ALL」が割り当てられている場合の式を入力します。 if( "ALL" in list , TRUE , split(Company_code, " " ,0) in list )
9[OK] をクリックします。

以下の画像でご確認ください。

ドキュメントの画像

結合内でこの式を使用すると、許可されたデータのみが表示され、データがフィルター処理されて表示されます。 以下は、ケース データをフィルター処理するための特定の企業コードの結果を示す結合の例であり、結果としてケースが大幅に少なくなります。

注:

ケースにはフィルターを使用することをお勧めします。ただし、この方法はイベントをフィルター処理する場合にも使用できます。

ドキュメントの画像

このページは役に立ちましたか?

接続

ヘルプ リソース サポート

学習する UiPath アカデミー

質問する UiPath フォーラム

最新情報を取得