Apigee Edge 문서를 보고 있습니다.
Apigee X 문서로 이동하세요. info
프록시 및 공유 흐름 번들에서 PII 마스킹 관리
동기화 프로세스의 일환으로 API 허브 커넥터 통합은 API 프록시 번들을 API 허브에 업로드합니다. 이러한 번들에는 정책 구성 내에 민감한 정보 또는 개인 식별 정보 (PII)가 포함될 수 있습니다. 이 기능을 사용하면 번들이 API 허브에 업로드되기 전에 식별된 개인 식별 정보 필드를 마스킹할 수 있습니다.
마스킹 접근 방식
PII 마스킹은 XPath 표현식을 사용하여 XML 형식 프록시 및 sharedflow 번들 내의 정책 구성 내 특정 요소를 타겟팅하지만 번들 내의 다른 일반 XML 요소에는 적용되지 않습니다. 이 기능은 두 부분으로 나뉩니다.
기본 마스크
Apigee Edge에는 일반적인 개인 식별 정보 필드를 자동으로 타겟팅하는 사전 정의된 기본 제공 XPath 표현식 목록이 포함되어 있습니다. 이러한 마스크는 업로드 프로세스 중에 자동으로 적용됩니다.
기본 마스크 목록:
| 정책 이름 | 필드 (또는 값) 설명 | XPath 표현식 |
|---|---|---|
AccessEntity |
엔티티 식별자 | //AccessEntity/EntityIdentifier |
AccessEntity |
보조 식별자 | //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 표현식 목록을 제출하여 고유한 데이터 개인 정보 보호 요구사항을 충족할 수 있습니다.
/v1/organizations/<var>ORG_NAME/uapim/proxymasks Edge 관리 API 엔드포인트를 사용하여 조직의 맞춤 PII 마스크를 관리할 수 있습니다. 이 작업을 수행하려면 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 |
'proxymasks' 목록에 XPath 추가 | 기존 'proxymasks' 목록 끝에 하나 이상의 XPath 문자열을 추가합니다. |
POST |
/v1/organizations/ORG_NAME/uapim/proxymasks/deleteItems |
'proxymasks' 목록에서 특정 XPath 삭제 | 'proxymasks' 목록에서 특정 XPath 문자열을 삭제합니다. 정확한 문자열과 일치합니다. |
XPath 목록에서 항목을 만들거나, 바꾸거나, 가져오거나, 추가하거나, 삭제하는 모든 요청과 성공적인 응답은 다음 JSON 스키마를 사용합니다.
{ "xpaths": [ "//Path/To/Element" ] }
| 필드 | 유형 | 설명 |
|---|---|---|
xpaths |
문자열 배열 | 마스크 처리할 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 추가)
POST 메서드를 사용하여 현재 콘텐츠를 덮어쓰지 않고 기존 목록에 하나 이상의 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
마스크 처리된 번들 업데이트
맞춤 개인 식별 정보 마스킹 구성을 수정하면 이전 마스크 구성으로 이전에 업로드된 API 프록시 번들을 최신 마스크로 다시 처리해야 합니다. 최신 마스킹 설정으로 번들을 업데이트하려면 지원 티켓을 제출하여 필요한 재처리를 시작하세요.