概览
在 API Hub 连接器集成过程中,API 代理和共享流软件包的元数据上传会同步到 API Hub。这些软件包可能包含政策配置中的个人身份信息 (PII) 或其他敏感数据。借助此功能,您可以在将软件包上传到 API Hub 之前屏蔽已识别的个人身份信息字段,从而确保 Edge for Private Cloud 环境中的数据隐私权和合规性。
遮盖方法
PII 屏蔽功能通过 XPath 表达式来定位软件包内 XML 格式的政策配置中的特定元素。此功能分为两部分。
默认遮罩
Apigee Edge for Private Cloud 包含一个预定义的内置 XPath 表达式列表(称为默认遮盖),该列表会自动针对各种政策中已知可能包含 PII 的字段。
潜在的 PII 源和默认掩码
下表列出了应用默认遮盖的政策和元素:
| 政策名称 | 敏感元素 | 默认遮罩 XPath | 理由 |
|---|---|---|---|
BasicAuthentication |
硬编码的用户名 | //BasicAuthentication/User |
直接存储明文用户身份。 |
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 |
基本身份验证用户名 | //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') | 遮盖敏感的来电者身份信息。 |
//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>