本文档介绍了如何将 Apigee 界面、Apigee API 以及 MessageLogging 和 PublishMessage 政策与数据驻留搭配使用。
如需详细了解 Apigee 中的数据驻留,请参阅数据驻留简介。
将 Apigee 界面与数据驻留搭配使用
如需访问启用了数据驻留的 Apigee 界面,请根据您的数据驻留要求访问以下控制台之一:
- 数据驻留(仅限静态数据):Google Cloud 控制台
- 高级数据驻留:管辖区级控制台
管辖权控制台会按如下方式更改与服务的界面互动:
- 您只能选择与所选控制平面位置一致的资源位置。
- 创建端点附件时,您只能选择与组织的资源位置政策一致的服务附件。这样可防止不在允许位置的私密目标进行访问。
将 Apigee API 与数据驻留搭配使用
如需访问具有数据驻留功能的 Apigee API,请使用使用区域端点实现数据驻留中所述的以下区域端点。
使用 Apigee API 时,如果您使用的区域受到控制软件包的禁止,您将收到 Permission Denied 错误。
将 MessageLogging 和 PublishMessage 政策与数据驻留搭配使用
以下部分介绍了如何更新 MessageLogging 和 PublishMessage 政策的政策定义,以支持数据驻留。
将 MessageLogging 政策与数据驻留搭配使用
使用 MessageLogging 政策时,为了支持数据驻留,请更新政策定义,将 <Endpoint> 元素添加到 <CloudLogging> 元素,并将其设置为用于消息日志记录的区域端点,如下所示:
logging.CONTROL_PLANE_LOCATION.rep.googleapis.com:443。
CONTROL_PLANE_LOCATION 是预配期间指定的物理位置,Apigee 控制平面数据将存储在该位置。
如果您不添加 <Endpoint> 元素,政策将默认使用全球端点。
例如,以下政策定义使用区域端点在 us 区域中记录消息:
<MessageLogging name="LogToCloudLogging">
<CloudLogging>
<LogName>projects/{organization.name}/logs/{log.id}</LogName>
<Message contentType="application/json">{"{message.queryparam.key}": "{message.queryparam.value}"}</Message>
<Labels>
<Label>
<Key>key1</Key>
<Value>value1</Value>
</Label>
<Label>
<Key>key2</Key>
<Value>value2</Value>
</Label>
</Labels>
<ResourceType>api</ResourceType>
<Endpoint>logging.us.rep.googleapis.com:443</Endpoint>
</CloudLogging>
</MessageLogging>如需了解详情,请参阅 MessageLogging 政策。
将 PublishMessage 政策与数据驻留搭配使用
为了支持数据驻留,在使用 PublishMessage 政策时,您必须更新政策定义,将 <Endpoint> 元素添加到 <CloudPubSub> 元素,并将其设置为要用于 Pub/Sub 消息传递的区域端点,如下所示:
pubsub.CONTROL_PLANE_LOCATION.rep.googleapis.com:443。
CONTROL_PLANE_LOCATION 是预配期间指定的物理位置,Apigee 控制平面数据将存储在该位置。
如果您不添加 <Endpoint> 元素,政策将默认使用全球端点。
例如,以下政策定义使用 us 区域中 Pub/Sub 消息传递的区域端点:
<PublishMessage async="false" continueOnError="false" enabled="true" name="Publish to Pub/Sub">
<DisplayName>Publish to Pub/Sub</DisplayName>
<Description>Publish to Pub/Sub</Description>
<CloudPubSub>
<Topic>projects/{organization.name}/topics/{topic.name}</Topic>
<Endpoint>pubsub.us.rep.googleapis.com:443</Endpoint>
</CloudPubSub>
</PublishMessage>如需了解详情,请参阅 PublishMessage 政策。