将 Apigee 与数据驻留功能搭配使用

本文档介绍了如何将 Apigee 界面、Apigee API 以及 MessageLogging 和 PublishMessage 政策与数据驻留搭配使用。

如需详细了解 Apigee 中的数据驻留,请参阅数据驻留简介。

将 Apigee 界面与数据驻留搭配使用

如需访问启用了数据驻留的 Apigee 界面,请根据您的数据驻留要求访问以下控制台之一:

管辖权控制台会按如下方式更改与服务的界面互动:

  • 您只能选择与所选控制平面位置一致的资源位置。
  • 创建端点附件时,您只能选择与组织的资源位置政策一致的服务附件。这样可防止不在允许位置的私密目标进行访问。

将 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 政策。