REST Resource: projects.locations.authorizationPolicies

Resource: AuthorizationPolicy

AuthorizationPolicy adalah resource yang menentukan cara server harus mengizinkan koneksi masuk. Resource ini tidak mengubah konfigurasi kecuali jika dilampirkan ke proxy https target atau resource pemilih konfigurasi endpoint.

Representasi JSON
{
  "name": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "action": enum (Action),
  "rules": [
    {
      object (Rule)
    }
  ]
}
Kolom
name

string

Wajib. Nama resource AuthorizationPolicy. URL ini cocok dengan pola projects/{project}/locations/{location}/authorizationPolicies/<authorizationPolicy>.

description

string

Opsional. Deskripsi teks bebas resource.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat resource dibuat.

Menggunakan RFC 3339 yang outputnya akan selalu dikonversi ke format 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 yang outputnya akan selalu dikonversi ke format 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 AuthorizationPolicy.

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

action

enum (Action)

Wajib. Tindakan yang harus diambil saat kecocokan aturan ditemukan. Nilai yang mungkin adalah "ALLOW" atau "DENY".

rules[]

object (Rule)

Opsional. Daftar aturan yang akan dicocokkan. Perhatikan bahwa setidaknya salah satu aturan harus cocok agar tindakan yang ditentukan di kolom 'action' dapat diambil. Aturan akan cocok jika ada sumber dan tujuan yang cocok. Jika dibiarkan kosong, tindakan yang ditentukan di kolom action akan diterapkan pada setiap permintaan.

Tindakan

Nilai yang mungkin menentukan tindakan yang harus diambil.

Enum
ACTION_UNSPECIFIED Nilai default.
ALLOW Berikan akses.
DENY Tolak akses. Aturan penolakan harus dihindari kecuali jika digunakan untuk memberikan penggantian "tolak semua" default.

Aturan

Spesifikasi aturan.

Representasi JSON
{
  "sources": [
    {
      object (Source)
    }
  ],
  "destinations": [
    {
      object (Destination)
    }
  ]
}
Kolom
sources[]

object (Source)

Opsional. Daftar atribut untuk sumber traffic. Semua sumber harus cocok. Sumber akan cocok jika akun utama dan ipBlocks cocok. Jika tidak ditetapkan, tindakan yang ditentukan di kolom 'action' akan diterapkan tanpa pemeriksaan aturan apa pun untuk sumber.

destinations[]

object (Destination)

Opsional. Daftar atribut untuk tujuan traffic. Semua tujuan harus cocok. Tujuan akan cocok jika permintaan cocok dengan semua host, port, metode, dan header yang ditentukan. Jika tidak ditetapkan, tindakan yang ditentukan di kolom 'action' akan diterapkan tanpa pemeriksaan aturan apa pun untuk tujuan.

Sumber

Spesifikasi atribut sumber traffic.

Representasi JSON
{
  "principals": [
    string
  ],
  "ipBlocks": [
    string
  ]
}
Kolom
principals[]

string

Opsional. Daftar identitas pembanding yang akan dicocokkan untuk otorisasi. Setidaknya satu akun utama harus cocok. Setiap peer dapat berupa pencocokan persis, atau pencocokan awalan (contoh, "namespace/*") atau pencocokan akhiran (contoh, "*/service-account") atau pencocokan kehadiran "*". Otorisasi berdasarkan nama utama tanpa validasi sertifikat (dikonfigurasi oleh resource ServerTlsPolicy) dianggap tidak aman.

ipBlocks[]

string

Opsional. Daftar rentang CIDR yang akan dicocokkan berdasarkan alamat IP sumber. Setidaknya satu blok IP harus cocok. IP tunggal (misalnya, "1.2.3.4") dan CIDR (misalnya, "1.2.3.0/24") didukung. Otorisasi yang hanya didasarkan pada IP sumber harus dihindari. Alamat IP load balancer atau proxy apa pun harus dianggap tidak tepercaya.

Tujuan

Spesifikasi atribut tujuan traffic.

Representasi JSON
{
  "hosts": [
    string
  ],
  "ports": [
    integer
  ],
  "paths": [
    string
  ],
  "methods": [
    string
  ],
  "httpHeaderMatch": {
    object (HttpHeaderMatch)
  }
}
Kolom
hosts[]

string

Wajib. Daftar nama host yang akan dicocokkan. Dicocokkan dengan header ":authority" dalam permintaan http. Setidaknya satu host harus cocok. Setiap host dapat berupa pencocokan persis, atau pencocokan awalan (contoh "mydomain.*") atau pencocokan akhiran (contoh "*.myorg.com") atau pencocokan kehadiran (apa pun) "*".

ports[]

integer (uint32 format)

Wajib. Daftar port tujuan yang akan dicocokkan. Setidaknya satu port harus cocok.

paths[]

string

Opsional. Daftar jalur HTTP yang akan dicocokkan. Metode gRPC harus ditampilkan sebagai nama yang sepenuhnya memenuhi syarat dalam bentuk "/packageName.serviceName/methodName". Setidaknya satu jalur harus cocok. Setiap jalur dapat berupa pencocokan persis, atau pencocokan awalan (misalnya, "/packageName.serviceName/*") atau pencocokan akhiran (misalnya, "*/video") atau pencocokan kehadiran (apa pun) "*".

methods[]

string

Opsional. Daftar metode HTTP yang akan dicocokkan. Setidaknya satu metode harus cocok. Tidak boleh ditetapkan untuk layanan gRPC.

httpHeaderMatch

object (HttpHeaderMatch)

Opsional. Cocokkan dengan pasangan kunci:nilai di header http. Menyediakan pencocokan fleksibel berdasarkan header HTTP, untuk kasus penggunaan yang berpotensi lebih lanjut. Setidaknya satu header harus cocok. Hindari penggunaan pencocokan header untuk membuat keputusan otorisasi, kecuali jika ada jaminan kuat bahwa permintaan masuk melalui klien atau proxy tepercaya.

HttpHeaderMatch

Spesifikasi atribut pencocokan header HTTP.

Representasi JSON
{
  "headerName": string,

  // Union field type can be only one of the following:
  "regexMatch": string
  // End of list of possible types for union field type.
}
Kolom
headerName

string

Wajib. Nama header HTTP yang akan dicocokkan. Untuk pencocokan dengan otoritas permintaan HTTP, gunakan headerMatch dengan nama header ":authority". Untuk mencocokkan metode permintaan, gunakan headerName ":method".

Kolom union type.

type hanya dapat berupa salah satu dari hal berikut:

regexMatch

string

Wajib. Nilai header harus cocok dengan ekspresi reguler yang ditentukan dalam regexMatch. Untuk tata bahasa ekspresi reguler, lihat: en.cppreference.com/w/cpp/regex/ecmascript Untuk pencocokan dengan port yang ditentukan dalam permintaan HTTP, gunakan headerMatch dengan headerName yang ditetapkan ke Host dan ekspresi reguler yang memenuhi penentu port header Host RFC2616.

Metode

create

Membuat AuthorizationPolicy baru di project dan lokasi tertentu.

delete

Menghapus satu AuthorizationPolicy.

get

Mendapatkan detail AuthorizationPolicy tunggal.

list

Mencantumkan AuthorizationPolicies di project dan lokasi tertentu.

patch

Memperbarui parameter satu AuthorizationPolicy.