REST Resource: projects.locations.endpointPolicies

資源:EndpointPolicy

EndpointPolicy 是一種資源,可協助您在符合特定條件的端點上套用所需設定。舉例來說,您可以使用這個資源,為通訊埠 8080 上的所有端點套用「驗證設定」。

JSON 表示法
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "type": enum (EndpointPolicyType),
  "authorizationPolicy": string,
  "endpointMatcher": {
    object (EndpointMatcher)
  },
  "trafficPortSelector": {
    object (TrafficPortSelector)
  },
  "description": string,
  "serverTlsPolicy": string,
  "clientTlsPolicy": string
}
欄位
name

string

這是必要旗標,EndpointPolicy 資源的名稱。符合模式 projects/{project}/locations/global/endpointPolicies/{endpointPolicy}

createTime

string (Timestamp format)

僅供輸出。資源建立時間的時間戳記。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位,最多九個小數位數。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

僅供輸出。資源更新時間的時間戳記。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位,最多九個小數位數。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

labels

map (key: string, value: string)

(非必要) 與 EndpointPolicy 資源相關聯的標籤標記集。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

type

enum (EndpointPolicyType)

這是必要旗標,端點政策類型。這項參數主要用於驗證設定。

authorizationPolicy

string

(非必要) 這個欄位會指定 AuthorizationPolicy 資源的網址,以便將授權政策套用至相符端點的入站流量。請參閱「授權」一節。如果未指定這個欄位,系統就會停用此端點的授權(不進行授權檢查)。

endpointMatcher

object (EndpointMatcher)

這是必要旗標,用於選取應套用政策的端點的比對器。

trafficPortSelector

object (TrafficPortSelector)

(非必要) 已比對的端點所需的通訊埠選項。如果未提供通訊埠選取器,系統會將相符的設定套用至所有通訊埠。

description

string

(非必要) 資源的自由文字說明。長度上限為 1024 個半形字元。

serverTlsPolicy

string

(非必要) 指向 ServerTlsPolicy 資源的網址。ServerTlsPolicy 可用於決定要套用的驗證政策,以便在已識別的後端終止傳入流量。如果未設定這個欄位,系統會停用(開放) 這個端點的驗證功能。

clientTlsPolicy

string

(非必要) 參照 ClientTlsPolicy 資源的網址。您可以設定 ClientTlsPolicy,指定從 Proxy 到實際端點的流量驗證。具體來說,這項設定會套用至從 Proxy 傳送至端點的連出流量。這通常用於側邊車模型,其中 Proxy 會將自身識別為控制平面的端點,且側邊車與端點之間的連線需要驗證。如果未設定這個欄位,系統會停用驗證(開放)。僅適用於 EndpointPolicyType 為 SIDECAR_PROXY 的情況。

EndpointPolicyType

端點政策類型。

列舉
ENDPOINT_POLICY_TYPE_UNSPECIFIED 預設值。請勿使用。
SIDECAR_PROXY 代表部署為邊車的 Proxy。
GRPC_SERVER 代表無 Proxy gRPC 後端。

EndpointMatcher

比對器的定義,用於選取應套用政策的端點。

JSON 表示法
{

  // Union field matcher_type can be only one of the following:
  "metadataLabelMatcher": {
    object (MetadataLabelMatcher)
  }
  // End of list of possible types for union field matcher_type.
}
欄位
聯集欄位 matcher_type。指定用於此端點比對器的比對器類型。matcher_type 只能是下列其中一項:
metadataLabelMatcher

object (MetadataLabelMatcher)

比對器會根據 xDS 用戶端提供的節點中繼資料。

MetadataLabelMatcher

根據 xDS 用戶端提供的節點中繼資料,進行比對。

JSON 表示法
{
  "metadataLabelMatchCriteria": enum (MetadataLabelMatchCriteria),
  "metadataLabels": [
    {
      object (MetadataLabels)
    }
  ]
}
欄位
metadataLabelMatchCriteria

enum (MetadataLabelMatchCriteria)

指定比對方式。

支援的值如下:MATCH_ANY:比對器中指定的至少一個標籤應與 xDS 用戶端提供的中繼資料相符。MATCH_ALL:XD 用戶端提供的中繼資料應包含這裡指定的所有標籤。

系統會根據最相符的項目決定選取結果。舉例來說,假設有三個 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[]

object (MetadataLabels)

根據 filterMatchCriteria 必須與提供中繼資料中的標籤相符的標籤值組合清單。此清單最多可包含 64 個項目。如果比對條件為 MATCH_ANY,則清單可以為空白,以便指定萬用字元比對 (也就是比對任何客戶)。

MetadataLabelMatchCriteria

可用來定義配對邏輯的條件值。

列舉
METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED 預設值。請勿使用。
MATCH_ANY 比對器中指定的至少一個標籤應與 xDS 用戶端提供的中繼資料相符。
MATCH_ALL xDS 用戶端提供的中繼資料應包含這裡指定的所有標籤。

MetadataLabels

為單一標籤定義名稱組合值。

JSON 表示法
{
  "labelName": string,
  "labelValue": string
}
欄位
labelName

string

這是必要旗標,在 xDS 節點中繼資料中,標籤名稱會以鍵的形式顯示。

labelValue

string

這是必要旗標,標籤值會以與上述鍵相對應的值呈現在 xDS 節點中繼資料中。

TrafficPortSelector

以連接埠為基礎的選取器規格。

JSON 表示法
{
  "ports": [
    string
  ]
}
欄位
ports[]

string

(非必要) 通訊埠清單。可以是通訊埠編號或通訊埠範圍 (例如 [80-90] 可指定 80 到 90 之間的所有通訊埠,包括 80 和 90),或是已命名通訊埠或 * 來指定所有通訊埠。如果清單為空白,代表已選取所有連接埠。

方法

create

在指定的專案和位置中建立新的 EndpointPolicy。

delete

刪除單一 EndpointPolicy。

get

取得單一 EndpointPolicy 的詳細資料。

list

列出指定專案和位置中的 EndpointPolicies。

patch

更新單一 EndpointPolicy 的參數。

setIamPolicy

設定指定資源的存取權控管政策。

testIamPermissions

傳回呼叫者在指定資源上擁有的權限。