プロキシ バンドルと共有フロー バンドルで個人情報(PII)のマスキングを管理する

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 プロキシ バンドルは、最新のマスクで再処理する必要があります。最新のマスキング設定でバンドルを更新するには、サポート チケットを送信して、必要な再処理を開始してください。