トークナイゼーションポリシー

ポリシー名

トークナイゼーション

概要

機密データをトークンと呼ばれる非機密データに変換する。コンテンツは形式上同じに見えるが、コンテンツの実際の値はひと目ではわからない。

カテゴリ

セキュリティ

最小 Mule バージョン

4.1.1

返される状況コード

400

トークンが無効であるか、トークナイゼーションが失敗した。

指定した式が無効であるか、トークナイズする結果を返さない。
注意​: 返される状況コードは設定することができます。

502

トークナイゼーションサービスとの接続に関する問題。使用できないか、設定されていない可能性がある。

このポリシーは、Anypont Runtime Fabric のデプロイメントでのみ機能するように設計されています。

Tokenization (トークナイゼーション)

トークナイゼーションは、値または情報 (おそらく機密データ) を、元の値にマップできる別のもの (トークン) にトークナイズするプロセスです。
このトークナイズされた情報は、元の値をトークンに置き換えることで、誰かが偶然読んだ場合に未処理の値と照合するリスクを最小限に抑えます。たとえば、クレジットカード番号をトークナイズして、元の番号とはまったく異なる番号にマップすることができます。

前提条件

  • ポリシーを作成および適用するには、「​Manage Policies (ポリシーの管理)​」権限が必要です。

  • トークナイゼーションサービスが稼働している必要があります。

    • トークナイゼーションサービスを設定および表示するには、「​Manage Tokenization Services (トークナイゼーションサービスの管理)​」権限が必要です。
      詳細は、​「トークナイゼーションの設定および使用」​を参照してください。

このポリシーのしくみ

このポリシーは、ペイロードの一部をトークナイズされた値に置き換えます。ペイロードのどの部分をトークナイズするのかを定義するには、セレクタ式を使用する必要があります。

ポリシーを受信するペイロードに次の構造が含まれているとします。

{
  "name":"Amun Ra",
  "socialSecurityNumber":"365-93-2738"
}

社会保障番号 (socialSecurityNumber) をトークナイズする場合、次のセレクタ式を使用して、ポリシーによってトークナイズされる情報を指定できます。

#[payload.socialSecurityNumber]

最上位レベルに ​socialSecurityNumber​ を含む要求をポリシーが受信するたびに、まず指定した式に一致するトークンがすべて抽出されます。次にトークナイゼーションサービスとの接続が確立され、最後にペイロード内のトークナイズされた値が、サービスから提供された値に置き換えられます。
例の社会保障番号のトークナイズされた値が_167-47-9268_だった場合、アプリケーションは次のペイロードを受信します。

{
  "name":"Amun Ra",
  "socialSecurityNumber":"167-47-9268"
}

ペイロードの要求または応答の値をトークナイズするようにトークナイゼーションポリシーを設定できます。

値をデトークナイズする方法については、​「デトークナイゼーションポリシー」​を参照してください。

要求のトークナイズ

policy mule4 tokenization 67b25
  1. ユーザがポリシーで保護されたアプリケーションに要求を実行します。

  2. 要求は最初に Anypoint Security でキャッチされ、アプリケーションにリダイレクトされてトークナイゼーションポリシーに到達します。

  3. トークナイゼーションポリシーは要求をトークナイズするように設定されているので、セレクタ式を使用してすべてのトークンがペイロードから抽出されます。

  4. トークナイゼーションサービスは、すべてのトークンを受信して変換を適用した後、その結果をポリシーに返します。

  5. ポリシーによってペイロードがトークナイズされた値に置き換えられ、Mule アプリケーションに要求が到達します。

  6. Mule アプリケーションは要求を処理して結果を返します。

応答のトークナイズ

policy mule4 tokenization 9347d
  1. ユーザがポリシーで保護されたアプリケーションに要求を実行します。

  2. 要求は最初に Anypoint Security でキャッチされ、アプリケーションにリダイレクトされてトークナイゼーションポリシーに到達します。

  3. トークナイゼーションポリシーは Mule アプリケーションの応答をトークナイズするように設定されているので、ペイロードから何も抽出せずに要求がリダイレクトされます。

  4. Mule アプリケーションは要求を処理して結果を返します。

  5. トークナイゼーションポリシーにより、セレクタ式を使用してすべてのトークンがペイロードから抽出されます。

  6. トークナイゼーションサービスは、すべてのトークンを受信して変換を適用した後、その結果をポリシーに返します。

  7. ペイロード内にトークナイズされた値を含む応答がポリシーからユーザに返されます。

ポリシーの設定

要素 説明 必須

Direction (方向)

要求と抽出のどちらからトークナイズする値が抽出されるのか。デフォルトの動作は応答からのトークナイズです。

はい

Fail on unmatched expressions (式の不一致により失敗)

選択すると、ルールがどのトークンとも一致しない場合、要求が失敗する。

いいえ

Services (サービス)

現在の組織と環境で使用可能なトークナイゼーションサービス。リストから必要なサービスを選択します。使用可能な形式は選択するサービスに依存します。

はい

Expression (式)

トークナイズされる情報を抽出するために使用するセレクタ式。

次に例を示します。

#[payload.people.creditCardNumber]

項目の区切り文字としてドットを使用する式のみが許可されています。​#[payload.people.creditCardNumber]​ は有効ですが、​#[payload[‘people’]]​ は無効です。

いいえ
セレクタ式を指定しない場合、ポリシーは適用されますが、ペイロードからは何もトークナイズされません。

Format (形式)

トークナイズされる情報の種別。形式は選択したサービスによって異なる場合があります。リストから形式を 1 つ選択します。

リストに形式が表示されない場合、選択したトークナイゼーションサービスに少なくとも 1 つの形式が含まれていることを確認してください。
詳細は、​「トークナイゼーション形式」​記事を参照してください。

いいえ
形式を指定しない場合、ポリシーは適用されますが、ペイロードからは何もトークナイズされません。

スコープと考慮事項

  • ポリシーの 1 つのインスタンスでは、トークナイゼーションサービスが 1 つだけサポートされます。設定した形式はすべて同じトークナイゼーションサービスに含まれている必要があります。

  • ポリシーの 1 つのインスタンスは、要求と応答の両方ではなく、どちらか一方の値をトークナイズするために使用できます。

  • トークナイゼーションサービスの状態は実行時までポリシーで認識されません。トークナイゼーションサービスを誤って削除したり、何らかの理由でサービスがダウンしている場合、ポリシーはサービスとの通信を確立することができず、サービスが再び利用可能になるまですべての要求が失敗します。

  • ポリシー設定時の ​[services (サービス)]​ ドロップダウンメニューには、使用できるトークナイゼーションサービスのみが表示されます。目的のサービスが表示されない場合、すでにデプロイされているかどうかを確認してください。

Was this article helpful?

💙 Thanks for your feedback!