概要
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>