個人情報(PII)のマスキングを管理する

概要

API Hub コネクタの統合の一環として、API プロキシと共有フロー バンドルのメタデータのアップロードが API Hub に同期されます。これらのバンドルには、ポリシー構成内に個人を特定できる情報(PII)やその他の機密データが含まれている場合があります。この機能を使用すると、バンドルが API Hub にアップロードされる前に、特定された PII フィールドをマスクできます。これにより、Edge for Private Cloud 環境のデータ プライバシーとコンプライアンスが確保されます。

マスキング アプローチ

PII マスキングは、XPath 式を使用して、バンドル内の XML 形式のポリシー構成内の特定の要素をターゲットにして適用されます。この機能は 2 つの部分に分かれています。

デフォルト マスク

Apigee Edge for Private Cloud には、さまざまなポリシーで PII の潜在的なソースとして知られているフィールドを自動的にターゲットにする、XPath 式の事前定義済みの組み込みリスト(デフォルト マスク)が含まれています。

PII の潜在的なソースとデフォルトのマスク

次の表に、デフォルトのマスキングが適用されるポリシーと要素を示します。

ポリシー名 機密情報 デフォルトのマスク XPath 根拠
BasicAuthentication ハードコードされたユーザー名 //BasicAuthentication/User ユーザー ID をクリアテキストで直接保存します。
BasicAuthentication ハードコードされたパスワード //BasicAuthentication/Password クリアテキストのパスワードを直接保存します。
GenerateJWT 対称鍵(シークレット) //GenerateJWT/SecretKey/Value ハードコードされた対称暗号化/署名鍵。
GenerateJWT 秘密鍵 //GenerateJWT/PrivateKey/Value 非対称署名用の PEM でエンコードされた秘密鍵。
GenerateJWT 秘密鍵のパスワード //GenerateJWT/PrivateKey/Password 秘密鍵を復号するためのパスワード。
GenerateJWS 対称鍵(シークレット) //GenerateJWS/SecretKey/Value ハードコードされた対称暗号化/署名鍵。
GenerateJWS 秘密鍵 //GenerateJWS/PrivateKey/Value 非対称署名用の PEM でエンコードされた秘密鍵。
GenerateJWS 秘密鍵のパスワード //GenerateJWS/PrivateKey/Password 秘密鍵を復号するためのパスワード。
VerifyJWT 対称鍵(シークレット) //VerifyJWT/SecretKey/Value 検証用のハードコードされた対称鍵。
VerifyJWS 対称鍵(シークレット) //VerifyJWS/SecretKey/Value 検証用のハードコードされた対称鍵。
HMAC 共有シークレット キー //HMAC/SecretKey HMAC 計算用のハードコードされた秘密鍵。
KeyValueMapOperations ハードコードされた値(Put) //KeyValueMapOperations/Put/Value ハードコードされたシークレットが KVM に書き込まれています。
ServiceCallout Basic 認証のユーザー名 //ServiceCallout//Authentication/BasicAuth/UserName バックエンド認証用のハードコードされたユーザー名。
ServiceCallout 基本認証のパスワード** //ServiceCallout//Authentication/BasicAuth/Password バックエンド認証用のハードコードされたパスワード。
SAMLAssertion 秘密鍵の値 //SAMLAssertion//PrivateKey/Value 復号/署名用の秘密鍵。
SAMLAssertion 秘密鍵のパスワード //SAMLAssertion//PrivateKey/Password 秘密鍵を復号するためのパスワード。

カスタムマスク

PII として識別されたが、デフォルトのマスクでカバーされていないフィールド(ポリシーのカスタム構成など)については、XPath 式の独自のリスト(カスタムマスク)を指定できます。

カスタム マスクは、Edge for Private Cloud システムの uapim-connector.properties ファイルで構成プロパティを更新することで管理されます。

カスタム マスクを構成する

カスタム マスキング パスを追加するには、コネクタ構成ファイルの conf_uapim_connector.uapim.mask.xpaths プロパティを更新します。

  • 構成ファイルのパス: /opt/apigee/customer/application/uapim-connector.properties
  • プロパティ: conf_uapim_connector.uapim.mask.xpaths

このプロパティには、値をマスクする特定の要素を対象とする XPath 式のカンマ区切りリストを指定します。

構成の例

カスタム変数と統計フィールドの値をマスクするには、プロパティを次のように設定します。

conf_uapim_connector.uapim.mask.xpaths=//StatisticsCollector/Statistics/Statistic[@name='caller'],//StatisticsCollector/Statistics/Statistic[@name='location'],//AssignMessage/AssignVariable[Name='password']/Value
XPath 式 要素がマスクされました 目的
//StatisticsCollector/Statistics/Statistic[@name='caller'] 統計値(name='caller' の場合) 発信者の ID をマスクします。
//AssignMessage/AssignVariable[Name='password']/Value AssignVariable の値(Name='password') ハードコードされたパスワード値をマスクします。

マスクされたポリシー

対象要素の値はマスクされます。マスクされたコンテンツは API Hub にアップロードされます。

ポリシーの例 1(StatisticsCollector - マスクあり):

<StatisticsCollector name="publishPurchaseDetails">
  <Statistics>
    <Statistic name="caller" type="string">****</Statistic>
    <Statistic name="location" type="string">****</Statistic>
  </Statistics>
</StatisticsCollector>