Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご覧ください。 info
プロキシ バンドルと共有フロー バンドルで PII マスキングを管理する
同期プロセスの一環として、API Hub コネクタ統合により API プロキシ バンドルが API Hub にアップロードされます。これらのバンドルには、ポリシー構成内に機密データや個人を特定できる情報(PII)が含まれている場合があります。この機能を使用すると、バンドルが API Hub にアップロードされる前に、特定された PII フィールドをマスクできます。
マスキング アプローチ
PII マスキングは、XPath 式を使用して、XML 形式のプロキシと共有フローのバンドル内のポリシー構成内の特定の要素を対象に適用されますが、バンドル内の他の一般的な XML 要素には適用されません。この機能は、次の 2 つの部分に分かれています。
デフォルトのマスク
Apigee Edge には、一般的な PII フィールドを自動的にターゲットとする XPath 式の事前定義された組み込みリストが含まれています。これらのマスクは、アップロード プロセス中に自動的に適用されます。
デフォルトのマスクのリスト:
| ポリシー名 | フィールド(または値)の説明 | XPath 式 |
|---|---|---|
AccessEntity |
エンティティ ID | //AccessEntity/EntityIdentifier |
AccessEntity |
セカンダリ ID | //AccessEntity/SecondaryIdentifier |
BasicAuthentication |
ユーザー フィールドの値 | //BasicAuthentication/User |
BasicAuthentication |
パスワード フィールドの値 | //BasicAuthentication/Password |
ConnectorCallout |
拡張機能に送信する JSON リクエストの本文 | //ConnectorCallout/Input |
FlowCallout |
フロー コールアウトに渡されるパラメータの値 | //FlowCallout/Parameter//FlowCallout/Parameters/Parameter |
HMAC |
HMAC 計算に使用される秘密鍵 | //HMAC/SecretKey |
HMAC |
署名するメッセージ コンテンツ | //HMAC/Message |
HMAC |
HMAC 検証値 | //HMAC/VerificationValue |
JavaCallout |
渡されたプロパティ(機密性の高い構成/データ) | //JavaCallout/Properties/Property |
Javascript |
インライン ソース | //Javascript/Source |
Javascript |
プロパティ値 | //Javascript/Properties/Property |
GenerateJWS |
秘密鍵の値 | //GenerateJWS/PrivateKey/Value |
GenerateJWS |
秘密鍵のパスワード | //GenerateJWS/PrivateKey/Password |
GenerateJWS |
秘密鍵 ID | //GenerateJWS/PrivateKey/Id |
GenerateJWS |
秘密鍵の値 | //GenerateJWS/SecretKey/Value |
GenerateJWS |
シークレット キー ID | //GenerateJWS/SecretKey/Id |
VerifyJWS |
JWKS 公開鍵 | //VerifyJWS/PublicKey/JWKS |
VerifyJWS |
公開鍵の値 | //VerifyJWS/PublicKey/Value |
VerifyJWS |
秘密鍵の値 | //VerifyJWS/SecretKey/Value |
GenerateJWT |
重要なヘッダー値 | //GenerateJWT/CriticalHeaders |
GenerateJWT |
JWT の署名に使用される秘密鍵の値 | //GenerateJWT/PrivateKey/Value |
GenerateJWT |
秘密鍵のパスワード | //GenerateJWT/PrivateKey/Password |
GenerateJWT |
秘密鍵 ID | //GenerateJWT/PrivateKey/Id |
GenerateJWT |
秘密鍵の値 | //GenerateJWT/SecretKey/Value |
GenerateJWT |
シークレット キー ID | //GenerateJWT/SecretKey/Id |
VerifyJWT |
公開鍵 | //VerifyJWT/PublicKey/Value |
VerifyJWT |
秘密鍵 | //VerifyJWT/SecretKey/Value |
KeyValueMapOperations |
初期エントリと PUT オペレーションの値 | //KeyValueMapOperations/InitialEntries/Entry/Value//KeyValueMapOperations/Put/Value |
Ldap |
ユーザー名とパスワードのフィールド値 | //Ldap/Authentication/UserName//Ldap/Authentication/Password |
OAuthV1 |
トークン | //OAuthV1/Tokens/Token |
OAuthV1 |
アクセス トークン | //OAuthV1/AccessToken |
OAuthV1 |
属性値 | //OAuthV1/Attributes/Attribute |
OAuthV1 |
確認コード | //OAuthV1/VerifierCode |
OAuthV1 |
アプリ ユーザー ID | //OAuthV1/AppUserId |
OAuthV1 |
リクエスト トークン | //OAuthV1/RequestToken |
OAuthV2 |
属性値 | //OAuthV2/Attributes/Attribute |
GetOAuthV2Info |
アクセス トークン | //GetOAuthV2Info/AccessToken |
GetOAuthV2Info |
認証コード | //GetOAuthV2Info/AuthorizationCode |
GetOAuthV2Info |
クライアント ID | //GetOAuthV2Info/ClientId |
GetOAuthV2Info |
更新トークン | //GetOAuthV2Info/RefreshToken |
RevokeOAuthV2 |
アプリ ID | //RevokeOAuthV2/AppId |
RevokeOAuthV2 |
エンドユーザー ID | //RevokeOAuthV2/EndUserId |
SetOAuthV2Info |
アクセス トークン | //SetOAuthV2Info/AccessToken |
SetOAuthV2Info |
属性値 | //SetOAuthV2Info/Attributes/Attribute |
DeleteOAuthV2Info |
アクセス トークンの値 | //DeleteOAuthV2Info/AccessToken |
DeleteOAuthV2Info |
認証コードの値 | //DeleteOAuthV2Info/AuthorizationCode |
StatisticsCollector |
統計値 | //StatisticsCollector/Statistics/Statistic |
VerifyAPIKey |
ハードコードされた API キー | //VerifyAPIKey/APIKey |
カスタム マスクを管理する
専用の API を使用すると、PII として識別した特定のフィールドをマスクするために、カスタマイズした XPath 式のリストを送信できます。これにより、独自のデータ プライバシーのニーズを満たすことができます。
組織のカスタム PII マスクは、/v1/organizations/<var>ORG_NAME/uapim/proxymasks Edge 管理 API エンドポイントを使用して管理できます。これらのオペレーションを実行するには、orgadmin ロールが必要です。
API は、特定の組織の proxymasks という名前の単一の XPath リストで動作します。
| メソッド | リソース | 概要 | 説明 |
|---|---|---|---|
GET |
/v1/organizations/ORG_NAME/uapim/proxymasks |
「proxymasks」XPath リストを取得する | 指定された組織の「proxymasks」の XPath 式の完全なリストを取得します。 |
PUT |
/v1/organizations/ORG_NAME/uapim/proxymasks |
「proxymasks」XPath リストを作成または置換する | 'proxymasks' リストが存在しない場合は作成し、存在する場合はその内容を完全に置き換えます。 |
DELETE |
/v1/organizations/ORG_NAME/uapim/proxymasks |
「proxymasks」XPath リストを削除 | 組織の「proxymasks」リスト内のすべての XPath を削除します。 |
POST |
/v1/organizations/ORG_NAME/uapim/proxymasks/append |
XPath を「proxymasks」リストに追加 | 既存の proxymasks リストの末尾に 1 つ以上の XPath 文字列を追加します。 |
POST |
/v1/organizations/ORG_NAME/uapim/proxymasks/deleteItems |
「proxymasks」リストから特定の XPath を削除する | 「proxymasks」リストから特定の XPath 文字列を削除します。文字列が完全に一致する場合に一致します。 |
XPath リストのアイテムの作成、置換、取得、追加、削除のリクエストと成功したレスポンスはすべて、次の JSON スキーマを使用します。
{ "xpaths": [ "//Path/To/Element" ] }
| フィールド | タイプ | 説明 |
|---|---|---|
xpaths |
array of strings | マスクする XPath 式文字列のリスト。このフィールドは必須です。 |
1. カスタム XPath リストを作成または置き換えます(PUT)
PUT メソッドを使用して、新しいカスタムリストを作成するか、既存のリストの内容を完全に置き換えます。既存の XPath はすべて上書きされます。
curl -X PUT https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/uapim/proxymasks \ -H "Authorization: Bearer OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "xpaths": [ "//StatisticsCollector/Statistics/Statistic[@name='caller']", "//AssignMessage/AssignVariable[Name='password']/Value" ] }'
更新が完了すると、次のメッセージとともに 201 Created または 200K のレスポンスが表示されます。Success response (201 Created or 200 OK)
{ "xpaths": [ "//StatisticsCollector/Statistics/Statistic[@name='caller']", "//AssignMessage/AssignVariable[Name='password']/Value" ] }
2. カスタム XPath リストを取得する(GET)
GET メソッドを使用して、カスタム XPath 式の現在のリストを取得します。
curl -X GET https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/uapim/proxymasks \ -H "Authorization: Bearer OAUTH_TOKEN"
取得が完了すると、次のメッセージを含む 200K レスポンスが表示されます。Success response (200 OK):
{ "xpaths": [ "//StatisticsCollector/Statistics/Statistic[@name='caller']", "//AssignMessage/AssignVariable[Name='password']/Value" ] }
3. リストに XPath を追加する(POST append)
POST メソッドを使用して、現在のコンテンツを上書きせずに、1 つ以上の XPath 式を既存のリストに追加します。
curl -X POST https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/uapim/proxymasks/append \ -H "Authorization: Bearer OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "xpaths": [ "//New/Appended/XPath" ] }'
追加が完了すると、次のメッセージとともに 200K レスポンスが表示されます。Success response (200 OK):
{ "xpaths": [ "//StatisticsCollector/Statistics/Statistic[@name='caller']", "//AssignMessage/AssignVariable[Name='password']/Value", "//New/Appended/XPath" ] }
4. リストから特定の XPath を削除する(POST deleteItems)
POST メソッドを使用して、既存のリストから特定の XPath 式を削除します。リクエストには、削除する正確な XPath 文字列を含める必要があります。
curl -X POST https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/uapim/proxymasks/deleteItems \ -H "Authorization: Bearer OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "xpaths": [ "//New/Appended/XPath" ] }'
削除が完了すると、次のメッセージを含む 200K レスポンスが表示されます。Success response (200 OK):
{ "xpaths": [ "//StatisticsCollector/Statistics/Statistic[@name='caller']", "//AssignMessage/AssignVariable[Name='password']/Value" ] }
5. カスタム XPath リスト全体を削除する(DELETE)
DELETE メソッドを使用して、カスタム XPath リストを完全に削除します。これにより、カスタム マスクのみが削除されます。デフォルト マスクは引き続き適用されます。
curl -X DELETE https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/uapim/proxymasks \ -H "Authorization: Bearer OAUTH_TOKEN"
削除が完了すると、次のメッセージとともに 204 No Content レスポンスが表示されます。Success response (204 No Content):
HTTP/1.1 204 No Content
マスクされたバンドルを更新する
カスタム PII マスキング構成を変更すると、古いマスク構成で以前にアップロードされた API プロキシ バンドルは、最新のマスクで再処理する必要があります。最新のマスキング設定でバンドルを更新するには、サポート チケットを送信して、必要な再処理を開始してください。