- 资源:EndpointPolicy
- EndpointPolicyType
- EndpointMatcher
- MetadataLabelMatcher
- MetadataLabelMatchCriteria
- MetadataLabels
- TrafficPortSelector
- 方法
资源:EndpointPolicy
EndpointPolicy 是一项资源,有助于在符合特定条件的端点上应用所需配置。例如,此资源可用于将“authentication config”应用于在端口 8080 上提供服务的所有端点。
JSON 表示法 |
---|
{ "name": string, "createTime": string, "updateTime": string, "labels": { string: string, ... }, "type": enum ( |
字段 | |
---|---|
name |
必需。EndpointPolicy 资源的名称。它与 |
createTime |
仅限输出。创建资源时的时间戳。 时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例: |
updateTime |
仅限输出。资源更新的时间戳。 时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例: |
labels |
可选。与 EndpointPolicy 资源关联的一组标签。 包含一系列 |
type |
必需。端点政策的类型。这主要用于验证配置。 |
authorizationPolicy |
可选。此字段指定 AuthorizationPolicy 资源的网址,该资源用于将授权政策应用于匹配端点的入站流量。请参阅“授权”。如果未指定此字段,则会对此端点停用授权(不进行身份验证检查)。 |
endpointMatcher |
必需。用于选择应应用政策的端点的匹配器。 |
trafficPortSelector |
可选。匹配的端点的端口选择器。如果未提供端口选择器,则匹配的配置将应用于所有端口。 |
description |
可选。资源的自由文本说明。长度上限为 1024 个字符。 |
serverTlsPolicy |
可选。引用 ServerTlsPolicy 资源的网址。ServerTlsPolicy 用于确定在确定后端终止入站流量时要应用的身份验证政策。如果未设置此字段,则系统会停用此端点的身份验证(开放)。 |
clientTlsPolicy |
可选。引用 ClientTlsPolicy 资源的网址。您可以设置 ClientTlsPolicy,以指定从代理传输到实际端点的流量进行身份验证。更具体地说,它会应用于从代理到端点的出站流量。这通常用于 Sidecar 模型,其中代理将自己标识为控制平面的端点,并且 Sidecar 和端点之间的连接需要身份验证。如果未设置此字段,则停用身份验证(开放)。仅当 EndpointPolicyType 为 SIDECAR_PROXY 时适用。 |
EndpointPolicyType
端点政策的类型。
枚举 | |
---|---|
ENDPOINT_POLICY_TYPE_UNSPECIFIED |
默认值。不得使用。 |
SIDECAR_PROXY |
表示部署为 Sidecar 的代理。 |
GRPC_SERVER |
表示无代理 gRPC 后端。 |
EndpointMatcher
匹配器的定义,用于选择应将政策应用到的端点。
JSON 表示法 |
---|
{ // Union field |
字段 | |
---|---|
联合字段 matcher_type 。指定用于此端点匹配器的匹配器的类型。matcher_type 只能是下列其中一项: |
|
metadataLabelMatcher |
匹配器基于 xDS 客户端提供的节点元数据。 |
MetadataLabelMatcher
基于 xDS 客户端提供的节点元数据的匹配器。
JSON 表示法 |
---|
{ "metadataLabelMatchCriteria": enum ( |
字段 | |
---|---|
metadataLabelMatchCriteria |
指定应如何完成匹配。 支持的值包括:MATCH_ANY:匹配器中指定的标签中至少有一个应与 xDS 客户端提供的元数据匹配。MATCH_ALL:xDS 客户端提供的元数据应包含此处指定的所有标签。 系统将根据最佳匹配结果进行选择。例如,假设有三个 EndpointPolicy 资源 P1、P2 和 P3,如果 P1 的匹配器为 MATCH_ANY <A:1, B:1>,则 P2 的匹配器为 MATCH_ALL <A:1,B:1>,而 P3 的匹配器为 MATCH_ALL <A:1,B:1,C:1>。 如果连接的是标签为 <A:1> 的客户端,则系统会选择 P1 中的配置。 如果连接的是标签为 <A:1,B:1> 的客户端,则系统会选择 P2 中的配置。 如果连接的是标签为 <A:1,B:1,C:1> 的客户端,则系统会选择 P3 中的配置。 如果有多个最佳匹配项(例如,如果存在选择器为 <A:1,D:1> 的配置 P4,并且连接的客户端带有标签 <A:1,B:1,D:1>),则选择创建时间较早的那个。 |
metadataLabels[] |
必须根据 filterMatchCriteria 与所提供元数据中的标签匹配的标签值对的列表。此列表最多可包含 64 个条目。如果匹配条件为 MATCH_ANY,则列表可以为空,以指定通配符匹配(即匹配任何客户)。 |
MetadataLabelMatchCriteria
用于定义匹配逻辑的可能条件值。
枚举 | |
---|---|
METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED |
默认值。不应使用。 |
MATCH_ANY |
匹配器中指定的标签中至少有一个应与 xDS 客户端提供的元数据匹配。 |
MATCH_ALL |
xDS 客户端提供的元数据应包含此处指定的所有标签。 |
MetadataLabels
定义单个标签的名称对值。
JSON 表示法 |
---|
{ "labelName": string, "labelValue": string } |
字段 | |
---|---|
labelName |
必需。标签名称在 xDS 节点元数据中显示为键。 |
labelValue |
必需。标签值在 xDS 节点元数据中显示为上述键对应的值。 |
TrafficPortSelector
基于端口的选择器规范。
JSON 表示法 |
---|
{ "ports": [ string ] } |
字段 | |
---|---|
ports[] |
可选。端口列表。可以是端口号或端口范围(例如,[80-90] 指定 80 到 90 之间的所有端口,包括 80 和 90),也可以是已命名的端口,也可以是 * 以指定所有端口。如果列表为空,则表示选择了所有端口。 |
方法 |
|
---|---|
|
在给定的项目和位置中创建新的 EndpointPolicy。 |
|
删除单个 EndpointPolicy。 |
|
获取单个 EndpointPolicy 的详细信息。 |
|
获取资源的访问权限控制政策。 |
|
列出给定项目和位置中的 EndpointPolicy。 |
|
更新单个 EndpointPolicy 的参数。 |
|
针对指定资源设置访问权限控制政策。 |
|
返回调用者对指定资源拥有的权限。 |