REST Resource: projects.locations.endpointPolicies

Resource: EndpointPolicy

EndpointPolicy adalah resource yang membantu menerapkan konfigurasi yang diinginkan pada endpoint yang cocok dengan kriteria tertentu. Misalnya, resource ini dapat digunakan untuk menerapkan "konfigurasi autentikasi" ke semua endpoint yang melayani di port 8080.

Representasi 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
}
Kolom
name

string

ID. Nama resource EndpointPolicy. Cocok dengan pola projects/{project}/locations/global/endpointPolicies/{endpointPolicy}.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat resource dibuat.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat resource diperbarui.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Opsional. Kumpulan tag label yang terkait dengan resource EndpointPolicy.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

type

enum (EndpointPolicyType)

Wajib. Jenis kebijakan endpoint. Ini terutama digunakan untuk memvalidasi konfigurasi.

authorizationPolicy

string

Opsional. Kolom ini menentukan URL resource AuthorizationPolicy yang menerapkan kebijakan otorisasi ke traffic masuk di endpoint yang cocok. Lihat Otorisasi. Jika kolom ini tidak ditentukan, otorisasi akan dinonaktifkan(tidak ada pemeriksaan otorisasi) untuk endpoint ini.

endpointMatcher

object (EndpointMatcher)

Wajib. Pencocok yang memilih endpoint tempat kebijakan harus diterapkan.

trafficPortSelector

object (TrafficPortSelector)

Opsional. Pemilih port untuk endpoint (yang cocok). Jika tidak ada pemilih port yang diberikan, konfigurasi yang cocok akan diterapkan ke semua port.

description

string

Opsional. Deskripsi teks bebas tentang resource. Panjang maksimum 1024 karakter.

serverTlsPolicy

string

Opsional. URL yang merujuk ke resource ServerTlsPolicy. ServerTlsPolicy digunakan untuk menentukan kebijakan autentikasi yang akan diterapkan untuk menghentikan traffic masuk di backend yang diidentifikasi. Jika kolom ini tidak disetel, autentikasi akan dinonaktifkan(terbuka) untuk endpoint ini.

clientTlsPolicy

string

Opsional. URL yang merujuk ke resource ClientTlsPolicy. ClientTlsPolicy dapat disetel untuk menentukan autentikasi untuk traffic dari proxy ke endpoint sebenarnya. Lebih khusus lagi, kebijakan ini diterapkan pada traffic keluar dari proxy ke endpoint. Biasanya digunakan untuk model sidecar di mana proxy mengidentifikasi dirinya sebagai endpoint ke bidang kontrol, dengan koneksi antara sidecar dan endpoint yang memerlukan autentikasi. Jika kolom ini tidak disetel, autentikasi akan dinonaktifkan(terbuka). Hanya berlaku jika EndpointPolicyType adalah SIDECAR_PROXY.

EndpointPolicyType

Jenis kebijakan endpoint.

Enum
ENDPOINT_POLICY_TYPE_UNSPECIFIED Nilai default. Tidak boleh digunakan.
SIDECAR_PROXY Mewakili proxy yang di-deploy sebagai sidecar.
GRPC_SERVER Mewakili backend gRPC tanpa proxy.

EndpointMatcher

Definisi pencocok yang memilih endpoint yang akan diterapkan kebijakan.

Representasi 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.
}
Kolom
Kolom union matcher_type. Menentukan jenis pencocok yang digunakan untuk pencocok endpoint ini. matcher_type hanya ada berupa salah satu diantara berikut:
metadataLabelMatcher

object (MetadataLabelMatcher)

Pencocok didasarkan pada metadata node yang ditampilkan oleh klien xDS.

MetadataLabelMatcher

Pencocokan yang didasarkan pada metadata node yang ditampilkan oleh klien xDS.

Representasi JSON
{
  "metadataLabelMatchCriteria": enum (MetadataLabelMatchCriteria),
  "metadataLabels": [
    {
      object (MetadataLabels)
    }
  ]
}
Kolom
metadataLabelMatchCriteria

enum (MetadataLabelMatchCriteria)

Menentukan cara pencocokan harus dilakukan.

Nilai yang didukung adalah: MATCH_ANY: Setidaknya salah satu Label yang ditentukan dalam pencocok harus cocok dengan metadata yang ditampilkan oleh klien xDS. MATCH_ALL: Metadata yang ditampilkan oleh klien xDS harus berisi semua label yang ditentukan di sini.

Pilihan ditentukan berdasarkan kecocokan terbaik. Misalnya, ada tiga resource EndpointPolicy P1, P2, dan P3. Jika P1 memiliki pencocok sebagai MATCH_ANY <A:1, B:1>, P2 memiliki MATCH_ALL <A:1,B:1>, dan P3 memiliki MATCH_ALL <A:1,B:1,C:1>.

Jika klien dengan label <A:1> terhubung, konfigurasi dari P1 akan dipilih.

Jika klien dengan label <A:1,B:1> terhubung, konfigurasi dari P2 akan dipilih.

Jika klien dengan label <A:1,B:1,C:1> terhubung, konfigurasi dari P3 akan dipilih.

Jika ada lebih dari satu kecocokan terbaik (misalnya, jika ada konfigurasi P4 dengan pemilih <A:1,D:1> dan jika klien dengan label <A:1,B:1,D:1> terhubung), pilih yang memiliki waktu pembuatan lebih lama.

metadataLabels[]

object (MetadataLabels)

Daftar pasangan nilai label yang harus cocok dengan label dalam metadata yang diberikan berdasarkan filterMatchCriteria. Daftar ini dapat memiliki maksimal 64 entri. Daftar dapat kosong jika kriteria kecocokan adalah MATCH_ANY, untuk menentukan kecocokan karakter pengganti (yaitu, ini cocok dengan klien mana pun).

MetadataLabelMatchCriteria

Kemungkinan nilai kriteria yang menentukan logika cara pencocokan dilakukan.

Enum
METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED Nilai default. Tidak boleh digunakan.
MATCH_ANY Setidaknya salah satu Label yang ditentukan dalam pencocok harus cocok dengan metadata yang ditampilkan oleh klien xDS.
MATCH_ALL Metadata yang ditampilkan oleh klien xDS harus berisi semua label yang ditentukan di sini.

MetadataLabels

Menentukan nilai pasangan nama untuk satu label.

Representasi JSON
{
  "labelName": string,
  "labelValue": string
}
Kolom
labelName

string

Wajib. Nama label ditampilkan sebagai kunci dalam Metadata Node xDS.

labelValue

string

Wajib. Nilai label ditampilkan sebagai nilai yang sesuai dengan kunci di atas, di Metadata Node xDS.

TrafficPortSelector

Spesifikasi pemilih berbasis port.

Representasi JSON
{
  "ports": [
    string
  ]
}
Kolom
ports[]

string

Opsional. Daftar port. Dapat berupa nomor port atau rentang port (misalnya, [80-90] menentukan semua port dari 80 hingga 90, termasuk 80 dan 90) atau port bernama atau * untuk menentukan semua port. Jika daftar kosong, semua port akan dipilih.

Metode

create

Membuat EndpointPolicy baru di project dan lokasi tertentu.

delete

Menghapus satu EndpointPolicy.

get

Mendapatkan detail satu EndpointPolicy.

getIamPolicy

Mendapatkan kebijakan kontrol akses untuk resource.

list

Mencantumkan EndpointPolicy dalam project dan lokasi tertentu.

patch

Memperbarui parameter satu EndpointPolicy.

setIamPolicy

Menetapkan kebijakan kontrol akses pada resource yang ditentukan.

testIamPermissions

Menampilkan izin yang dimiliki pemanggil pada resource tertentu.