REST Resource: projects.locations.authorizationPolicies

Resource: AuthorizationPolicy

AuthorizationPolicy adalah resource yang menentukan cara server mengizinkan koneksi masuk. Resource ini sendiri 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. Pola ini cocok dengan pola projects/{project}/locations/{location}/authorizationPolicies/<authorizationPolicy>.

description

string

Opsional. Deskripsi teks bebas tentang resource.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat resource dibuat.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat resource diperbarui.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

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 dilakukan 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 dilakukan. Aturan 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 memungkinkan yang menentukan tindakan yang akan dilakukan.

Enum
ACTION_UNSPECIFIED Nilai default.
ALLOW Berikan akses.
DENY Menolak akses. Aturan tolak 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 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 adalah kecocokan 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 peer yang akan dicocokkan untuk otorisasi. Setidaknya satu akun utama harus cocok. Setiap peer dapat berupa pencocokan persis, atau pencocokan awalan (misalnya, "namespace/*") atau pencocokan akhiran (misalnya, "*/service-account") atau pencocokan kehadiran "*". Otorisasi berdasarkan nama akun 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. Satu IP (mis., "1.2.3.4") dan CIDR (mis., "1.2.3.0/24") didukung. Otorisasi berdasarkan IP sumber saja 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
  ],
  "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 (misalnya "mydomain.*") atau pencocokan akhiran (misalnya "*.myorg.com") atau pencocokan kehadiran (apa pun) "*".

ports[]

integer (uint32 format)

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

methods[]

string

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

httpHeaderMatch

object (HttpHeaderMatch)

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

HttpHeaderMatch

Spesifikasi atribut kecocokan 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 mencocokkan 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 di 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 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 satu AuthorizationPolicy.

getIamPolicy

Mendapatkan kebijakan kontrol akses untuk resource.

list

Mencantumkan AuthorizationPolicies di project dan lokasi tertentu.

patch

Memperbarui parameter satu AuthorizationPolicy.

setIamPolicy

Menetapkan kebijakan kontrol akses pada resource yang ditentukan.

testIamPermissions

Menampilkan izin yang dimiliki pemanggil pada resource yang ditentukan.