マスキング ルールの作成と管理 (プレビュー)
注意
新機能と改善された Power Platform 管理センター は、現在パブリック プレビュー段階にあります。 新しい管理センターは、特定の結果をより迅速に達成するのに役立つタスク指向のナビゲーションで使いやすくなるように設計されています。 新しい Power Platform 管理センターが 一般提供 に移行する、新しいドキュメントと更新されたドキュメントを公開します。
[この記事はプレリリース ドキュメントであり、変更されることがあります。]
データ マスキングは、顧客とのやり取り中に機密情報を保護し、データ漏洩を防ぐ際に役立ちます。 データマスキングは、非識別化または難読化とも呼ばれ、機密データをマスクされた文字列に置き換えます。 マスクされた文字列により、元のマスクされていない値は非表示のままになります。 許可されたユーザーのみが、マスクされていない値を 1 レコードずつ読み取ることができます。 顧客とのやり取りにおいて、フロントラインのサポートユーザーは、クレジットカード番号、社会保障番号、その他の個人情報のような機密情報の漏洩を防ぐことができます。
重要
- これはプレビュー機能です。
- プレビュー機能は運用環境での使用を想定しておらず、機能が制限される可能性があります。 これらの機能を公式リリースの前に使用できるようにすることで、顧客が事前にアクセスし、そこからフィードバックを得ることができます。
マスキングはどのように機能するのですか?
マスキング ルールを作成して、機密情報をどのようにマスクするかを設定できます。
これらのルールは、正規表現 を使用して、カード番号、社会保障番号、電子メール アドレスなどの特定のパターンを識別します。
これらのパターンが検出され、行が取得されるときに機密フィールドがマスクされた文字に置き換えられます。
マスキング ルールの作成
まず、事前定義されたマスキングルールのセットを取得するか、独自のルールを作成できます。
ソリューションの作成: Power Apps でソリューションを作成する。
新しいコンポーネントの作成: ソリューションでコンポーネントを作成する。
セキュリティ メニュー オプションを選択し、セキュアなマスキング ルール を選択します。
新しいマスキング ルール フォームが表示されます。
このフォームで、ルール 名前を次の形式で入力します:
prefix_name
でprefix
がCLS_
またはNew_
の形式である。表示名 と 説明 を入力します。
正規表現言語から選択した 正規表現 を入力します。
たとえば、社会保障番号の最初の 5 桁をマスクするには、次のようにします:
\d(?=\d{2}-\d{2}-\d{4}|\d-\d{2}-\d{4}|-\d{2}-\d{4}|\d-\d{4}|-\d{4})
ヒント
正規表現には、パイプ
|
で区切られた複数のマスキング ルールを指定できます。例:
\d(?=\d{2}-\d{2}-\d{4}|\d-\d{2}-\d{4}|-\d{2}-\d{4}|\d-\d{4}|-\d{4})| \S+@\S+\.\S+|[STFGM]\d{4}|(?:4[0-9]{12}(?:[0-9]{3})?|[25][1-7][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})
マスク文字を入力します (例:
#
)。プレーン テキスト テスト データを入力するフィールドに、たとえば、社会保障番号、電子メール アドレスなどの元の値を入力します。
リッチ テキスト テスト データの入力フィールドに元の値を入力します。たとえば、社会保障番号、電子メールアドレスなどです (リッチ テキスト形式の列でテキスト データ型をテストする場合)。
ヒント
リッチ テキスト フィールドの場合、正規表現を定義するときに、フィールドの生の値を考慮する必要があります。 Web API を使用してリッチ テキストでテーブル/列をクエリし、生の値を表示できます。 例:
https://<org url>/api/data/v9.2/maskingrules(<id>)?$select=richtestdata
(結果)
"richtestdata": "<div class="ck-content" data-wrapper="true" dir="ltr" style="--ck-image-style-spacing: 1.5em; --ck-inline-image-style-spacing: calc(var(--ck-image-style-spacing) / 2); --ck-color-selector-caption-background: hsl(0, 0%, 97%); --ck-color-selector-caption-text: hsl(0, 0%, 20%); font-family: Segoe UI; font-size: 11pt;"><p style="margin: 0;">123-45-789<//p><//div>"
保存を選択します。
マスクされたプレーン テキストのテスト データと マスクされたリッチ テキストのテスト データが画面に表示されます。
マスクされた値は次のように表示される可能性があります:
Regular expression 元の値 マスクされた値 \d(?=\d{2}-\d{2}-\d{4}|\d-\d{2}-\d{4}|-\d{2}-\d{4}|\d-\d{4}|-\d{4})
SSN 123-45-6789
SSN ###-##-6789
[STFGM]\d{4}
AccountNbr S1234567z
AccountNbr #567z
(?:4[0-9]{12}(?:[0-9]{3})?|[25][1-7][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})
MasterCard 5678912345678912
MasterCard #
(?:4[0-9]{12}(?:[0-9]{3})?|[25][1-7][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})
ビザ 4567891234567891
ビザ #
\S+@\S+\.\S+
メール name@sample.com
メール #
顧客から機密データを含むEメールが送信され、そのEメールにこのマスキングルールがある場合、Eメールの本文にはマスクされた値のみが表示されます:
マスキング ルールの管理
マスキング ルールのリストを取得する
Power Apps ポータル にアクセスします。
マスキングルールの一覧を表示する環境を選択します。
テーブル を選択し、すべて のフィルターを選択します。
検索バーにマスキング ルールを入力します。
行のテーブルのマスキング ルール (名前 maskingrule) を選択します。
マスキング ルールのリストが表示されます。 リストを拡大するには、+ さらに表示 ドロップ ダウンを選択します。
保護された列へのマスキング ルールの追加
Power Apps ポータル にアクセスします。
列にマスキング ルールを追加する環境を選択します。
ナビゲーション メニューから テーブル を選択し、セキュアな列を含む希望のテーブルを選択します。
スキーマ セクションで列を選択します。
列を選択して開き、編集します。 列の編集 ペインが表示されます。
詳細オプションを展開します。
チェックボックスがオフの場合は、列のセキュリティを有効にする をオンにします。
マスキングルール ドロップダウンを選択します。
マスクキング ルールを選択します。
保存を選択します。
注意
マスキング・ルールのデータ型:
- テキスト (単一行と複数行)。
- 番号。
マスキング ルールを使用して保護された列に権限を付与する
マスクされたフィールドを読み取る権限は、列セキュリティ プロファイルを使用して付与されます。
ユーザーまたはチーム グループには、列のセキュリティを通じてアクセス権を付与できます。
読み取り
許可: セキュリティで保護された列の読み取りが許可されます。 列にマスキング ルールが適用されている場合は、マスクされた値が表示されます。
マスクなしで読み取る
不許可: 読み取り が許可され、マスク解除の読み取り が許可されていない場合、マスクされた値が表示されます。
1 つのレコード: ユーザーはマスクされていない値を読み取ることができます。 マスクされていない値は、一度に 1 つのレコードを要求した場合にのみ返されます。 これらの値は、セキュリティで保護された列を管理するユーザーと保守するユーザーに許可する必要があります。
すべてのレコード: ユーザーはマスクされていない値を持つ複数のレコードを取得して読み取ることができます。 この設定は高い権限が必要です。 マスクされていない値の読み取り は、バックエンド処理にマスクされていない値を必要とするバックエンド サービスに対してのみ許可する必要があります。
更新プログラム
許可: ユーザーはレコードを更新できます。
作成
許可: ユーザーはレコードを作成できます。
注意
読み取り および マスクされていない読み取り 権限を持つシステム ユーザーとアプリケーション ユーザーは、既定でマスクされた値を取得します。 マスクされていない値を読み取るには、マスクされたフィールドを表示するオプションにアクセスしてください。
マスキング ルールを持つすべての列を表示する
マスキング ルールが適用されたすべてのテーブルから、保護されたすべての列のリストを取得できます。
Power Apps ポータル にアクセスします。
マスキング ルールが適用されたすべての列を表示する環境を選択します。
テーブル を選択し、すべて のフィルターを選択します。
検索バーに attributemaskingrule と入力します。
AttributMaskingRule テーブルを選択します。
マスキング ルールのある列のリストが表示されます。 リストを拡大するには、+ さらに表示 ドロップ ダウンを選択します。
マスクされたフィールドはどのように表示されますか?
マスクされていないフィールドを 読み取る 権限がある場合、ここではデフォルトでマスクされた値が表示されます。
フィールドの種類 | マスクされた列がマスクされた値で返されますか? |
---|---|
Grid | 常時 |
Form | 常時 |
Copilot | 常時 |
Excel レポート | 常時 |
ヒント
監査ログには、更新イベントの前後のマスクされていない値が表示されます。 監査ログの読み取り権限を承認されたユーザーのみに付与します。
マスクされたフィールドを表示するためのオプション
ヒント
これらのオプションはプレビュー中に利用できます。
マスクされていない値を読み取る権限が必要です。 レコード内のマスクされていない値を読み取ることができます。
これらの例では、<url>
、<table collection name>
、<recordid>
を独自の値に置き換えてください。
レコード内のすべてのマスクされた列の例:
https://<url>/api/data/v9.1/<table collection name>(<recordid>)?UnMaskedData=true
個々のマスクされた列の例:
<column_name>
はセキュアな列名に置き換えてください。https://<url>/api/data/v9.1/<table collection name>(<recordid>)?$select=<column_name>&UnMaskedData=true
既知の制限
フォーム上のマスクされていない値を読み取る
マスクされた値は詳細/メイン フォームに表示されます。 今後のリリースでは、マスクされていない値を読み取る権限を持つユーザーが、マスクされていない値を読むことができるようにするためのボタンが追加される予定です。
フォーム上のマスクされていない値の作成と更新
新しいレコードを作成する際は、機密フィールドにマスクされていない値を入力します。 保存すると、フォームが自動的に更新され、機密フィールドがただちにマスクされます。 フィールドを更新できますが、マスクされていない値を必ず入力してください。
監査ログ
マスクされていない値は監査ログに表示されます。 将来のリリースでは、これらはマスクされ、マスクを解除して読むオプションが、マスク解除の読み取り 権限を持つユーザーに提供されます。