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

ID。EndpointPolicy 資源的名稱。符合模式 projects/{project}/locations/global/endpointPolicies/{endpointPolicy}

createTime

string (Timestamp format)

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

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

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

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

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 資源的 URL。您可以設定 ClientTlsPolicy,指定從 Proxy 到實際端點的流量驗證方式。具體來說,這項設定會套用至從 Proxy 傳送至端點的輸出流量。這通常用於 Sidecar 模型,Proxy 會將自己識別為控制層的端點,且 Sidecar 與端點之間的連線需要驗證。如未設定這個欄位,系統會停用驗證(開放)。僅適用於 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: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[]

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

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

patch

更新單一 EndpointPolicy 的參數。

setIamPolicy

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

testIamPermissions

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