Halaman ini menjelaskan cara menentukan kebijakan akses kontekstual menggunakan tingkat akses.
Tingkat akses
adalah serangkaian atribut yang ditetapkan ke permintaan berdasarkan asalnya. Dengan menggunakan informasi seperti jenis perangkat, alamat IP, dan identitas pengguna, Anda dapat menentukan tingkat akses yang akan diberikan. Misalnya, Anda dapat menetapkan tingkat
High_Trust
ke koneksi dari dalam jaringan perusahaan dan tingkat
Medium_Trust
ke perangkat eksternal yang menjalankan sistem operasi yang disetujui.
Kebijakan akses adalah container untuk semua resource Access Context Manager Anda, seperti tingkat akses dan perimeter layanan.
Untuk mengetahui informasi selengkapnya tentang tingkat akses dan kebijakan akses, lihat Ringkasan Access Context Manager.
Batasan
Saat menentukan tingkat akses, batasan berikut berlaku:
- Anda tidak dapat menggunakan alamat IP sebagai atribut untuk koneksi Docker, dan Anda juga tidak dapat menggunakan alamat IP pribadi saat terhubung ke cluster pribadi menggunakan
kubectl
atau instance Looker terkelola. - Looker Studio selalu diizinkan akses tanpa batas ke Google Cloud API, terlepas dari kebijakan Access Context Manager.
- Atribut perangkat tidak tersedia untuk aplikasi klien OAuth non-Google.
- Anda tidak dapat menggunakan tingkat akses yang tercakup.
Menentukan kebijakan menggunakan tingkat akses
Konsol
Buat tingkat akses dasar:
Di konsol Google Cloud , buka halaman Access Context Manager.
Jika Anda diminta, pilih project.
Di halaman Access Context Manager, klik New.
Di panel New Access Level, lakukan hal berikut:
Di kolom Judul tingkat akses, masukkan judul untuk tingkat akses. Judul harus maksimal 50 karakter, diawali dengan huruf, dan hanya boleh berisi angka, huruf, garis bawah, dan spasi.
Di bagian Kondisi, klik tombol tambahkan untuk jenis atribut yang ingin ditambahkan, lalu berikan nilai yang ingin diterapkan ke atribut tersebut.
Untuk mengetahui daftar lengkap atribut yang dapat Anda tambahkan, lihat atribut tingkat akses.
Misalnya, jika Anda ingin tingkat akses mempertimbangkan dari mana permintaan berasal dalam jaringan Anda, Anda akan memilih atribut Subnetwork IP.
Ulangi langkah ini untuk menambahkan beberapa atribut ke kondisi yang sama. Jika suatu kondisi memiliki beberapa atribut, semua atribut harus dipenuhi oleh permintaan akses.
Kondisi tingkat akses dapat menyertakan satu dari setiap jenis atribut. Beberapa atribut mencakup opsi tambahan, seperti atribut Kebijakan Perangkat.
Tingkat akses mendukung kondisi berdasarkan identitas pengguna. Namun, untuk menambahkan identitas ke kondisi, Anda harus membuat atau memperbarui tingkat akses menggunakan gcloud CLI atau API.
Gunakan opsi Jika kondisi terpenuhi, tampilkan untuk menentukan apakah Anda ingin kondisi tersebut mewajibkan permintaan memenuhi semua atribut yang ditentukan (BENAR) atau apakah permintaan harus memenuhi apa pun kecuali atribut tersebut (SALAH).
Misalnya, jika Anda ingin menolak permintaan dari rentang alamat IP tertentu di jaringan Anda, tentukan rentang alamat IP menggunakan atribut Subnet IP, lalu tetapkan kondisi ke FALSE.
Atau, klik Tambahkan kondisi lain untuk menambahkan kondisi tambahan ke tingkat akses Anda, lalu ulangi dua langkah sebelumnya.
Misalnya, jika Anda ingin menolak akses ke subset alamat IP dalam rentang alamat IP yang lebih luas, buat kondisi baru, tentukan rentang alamat IP subset untuk atribut IP Subnetworks, dan tetapkan kondisi untuk menampilkan FALSE.
Ulangi langkah ini untuk menambahkan beberapa kondisi ke tingkat akses yang sama.
Jika Anda membuat lebih dari satu kondisi, gunakan Gabungkan kondisi dengan untuk menentukan apakah Anda ingin tingkat akses memerlukan permintaan untuk memenuhi setidaknya salah satu kondisi (OR), atau semua kondisi (AND).
Klik Simpan.
gcloud
Jika Anda tidak memiliki kebijakan akses untuk organisasi Anda, buat kebijakan akses sebelum melanjutkan.
Gunakan perintah gcloud access-context-manager levels create
untuk membuat tingkat akses:
gcloud access-context-manager levels create LEVEL_NAME OPTIONS \ --policy=POLICY
Ganti kode berikut:
LEVEL_NAME: Nama unik untuk tingkat akses. Nama ini harus diawali dengan huruf dan hanya menyertakan huruf, angka, serta garis bawah. Nama dapat berisi maksimal 50 karakter.
OPTIONS: Opsi yang diperlukan dari tabel berikut.
Opsi basic-level-spec
File YAML yang menentukan satu atau beberapa kondisi untuk tingkat akses.
title
Judul singkat untuk tingkat akses. Judul tingkat akses ditampilkan di konsol Google Cloud .
combine-function
(Opsional) Menentukan cara penggabungan kondisi.
Nilai yang valid:
AND
,OR
description
(Opsional) Deskripsi panjang tingkat akses.
POLICY: ID kebijakan akses organisasi Anda. Jika Anda telah menetapkan kebijakan default, parameter ini bersifat opsional.
Secara opsional, Anda dapat menyertakan salah satu flag gcloud.
File YAML basic-level-spec
Saat menggunakan gcloud CLI untuk membuat tingkat akses, Anda harus
memberikan file YAML
untuk opsi basic-level-spec
. File YAML menentukan satu atau beberapa
kondisi untuk tingkat akses. Kondisi harus berisi minimal satu
atribut. Jika kondisi berisi lebih dari satu atribut, atribut tersebut akan digabungkan sebagai operasi AND (semua harus benar) atau sebagai operasi NAND (tidak boleh ada yang benar), bergantung pada apakah atribut negate
disertakan dalam kondisi.
Untuk mengetahui daftar lengkap atribut yang dapat Anda sertakan dalam file YAML, lihat atribut tingkat akses.
Untuk mengetahui informasi selengkapnya tentang tingkat akses dan YAML, lihat contoh YAML untuk tingkat akses.
Contoh perintah
gcloud access-context-manager levels create Device_Trust \
--basic-level-spec=corpdevspec.yaml \
--combine-function=AND \
--description='Access level that conforms to corporate spec.' \
--title='Device_Trust Extended' \
--policy=1521580097614100
API
Jika Anda tidak memiliki kebijakan akses untuk organisasi Anda, buat kebijakan akses sebelum melanjutkan.
Untuk membuat tingkat akses, panggil accessLevels.create
.
POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY/accessLevels
POLICY adalah ID kebijakan akses organisasi Anda.
Isi permintaan
Isi permintaan harus menyertakan resource AccessLevel
yang menentukan kondisi yang Anda inginkan untuk tingkat akses baru.
Setiap Condition
memiliki satu atau beberapa atribut yang dievaluasi sebagai operasi AND (semua harus benar) atau sebagai operasi NAND (tidak boleh ada yang benar) bergantung pada apakah kolom negate
ditetapkan ke true
. Evaluasi yang dihasilkan menentukan apakah kondisi terpenuhi atau tidak.
Isi respons
Jika berhasil, isi respons untuk panggilan berisi resource
Operation
yang memberikan detail tentang operasi
POST
.
Konfigurasi kebijakan umum
Contoh berikut mencakup beberapa cara praktis yang mungkin ingin dilakukan organisasi Anda untuk menerapkan tingkat akses. Contoh ini mengasumsikan bahwa organisasi Anda sudah memiliki kebijakan akses.
Membatasi akses di jaringan perusahaan
Contoh ini menjelaskan cara membuat kondisi tingkat akses yang mengizinkan akses hanya dari rentang alamat IP tertentu (misalnya, yang berada dalam jaringan perusahaan).
Dengan membatasi rentang alamat IP yang diberi akses, Anda dapat mempersulit penyerang yang berada di dalam atau di luar organisasi Anda untuk mencuri data.
Untuk contoh ini, asumsikan Anda ingin membuat tingkat akses yang akan mengizinkan sekelompok auditor internal mengakses layanan Cloud Logging untuk project bernama sensitive-data. Semua perangkat untuk auditor diberi IP di subnet yang memiliki rentang antara 203.0.113.0 dan 203.0.113.127. Anda tahu bahwa tidak akan ada perangkat yang ditetapkan ke subnet tersebut selain perangkat yang digunakan oleh auditor.
Jika Anda ingin menggunakan rentang alamat IP pribadi (misalnya, 192.168.0.0/16
atau 172.16.0.0/12
), lihat Mengizinkan akses ke resource yang dilindungi dari alamat IP internal untuk mengetahui informasi tambahan dan contoh penerapan menggunakan Kontrol Layanan VPC.
Konsol
Di konsol Google Cloud , buka Access Context Manager.
Jika Anda diminta, pilih project.
Di bagian atas halaman Chrome Enterprise Premium, klik Baru.
Di panel New Access Level, di bagian Conditions, klik Add attribute, lalu klik IP Subnetworks.
Di kotak IP Subnetworks, pilih Public IP atau Private IP.
Jika Anda memilih IP Publik, masukkan satu atau beberapa rentang IPv4 atau IPv6 yang diformat sebagai blok CIDR.
Dalam contoh ini, untuk membatasi akses hanya kepada auditor, masukkan
203.0.113.0/25
di kotak Subnet IP.Jika Anda memilih Private IP, klik Select VPC networks. Anda dapat menentukan jaringan VPC menggunakan salah satu dari tiga opsi yang tersedia di daftar Opsi impor.
Opsi 1:
Pilih Jelajahi jaringan VPC di organisasi Anda, lalu pilih jaringan VPC.
Klik Tambahkan jaringan VPC yang dipilih.
Klik Pilih subnet IP, lalu pilih subnet.
Klik Tambahkan subnet IP.
Opsi 2:
Pilih Masukkan alamat jaringan VPC secara manual dan masukkan satu atau beberapa jaringan VPC.
Klik Add VPC network.
Klik Pilih subnet IP, lalu pilih subnet.
Klik Tambahkan subnet IP.
Opsi 3:
Pilih Upload file CSV (menimpa jaringan yang ada).
Jika Anda menggunakan file CSV untuk menambahkan jaringan dan subnet VPC ke tingkat akses, Access Context Manager akan menggantikan jaringan dan subnet VPC yang sebelumnya dipilih.
Klik Jelajahi, lalu upload file CSV. Dalam file CSV, Anda harus menentukan jaringan dan subnet VPC dalam format berikut:
VPC_NETWORK_NAME_1 | IP_RANGE_1 | IP_RANGE_2 | ... VPC_NETWORK_NAME_2 | . | . | ... . | . | . | ... . | . | . | ...
Klik Impor jaringan.
Dengan menggunakan file CSV, Access Context Manager akan mengisi nama jaringan VPC dan informasi subnet di kotak VPC network address dan IP subnetworks.
Untuk mengetahui informasi tentang nama jaringan VPC dan format alamat IP pribadi, lihat Menggunakan alamat IP internal di tingkat akses.
Klik Simpan.
gcloud
Buat file YAML untuk tingkat akses yang mencakup satu atau beberapa rentang IPv4 atau IPv6 yang diformat sebagai blok CIDR.
Dalam contoh ini, untuk membatasi akses hanya ke auditor, Anda akan memasukkan kode berikut ke dalam file YAML:
- ipSubnetworks: - 203.0.113.0/25
Jika ingin menggunakan alamat IP pribadi, Anda harus memasukkan informasi berikut dalam file YAML:
- vpcNetworkSources: - vpcSubnetwork: network: VPC_NETWORK_NAME vpcIpSubnetworks: - IP_RANGE
Ganti VPC_NETWORK_NAME dan IP_RANGE dengan nilai yang dijelaskan di bagian Menggunakan alamat IP internal di tingkat akses.
Simpan file. Dalam contoh ini, file diberi nama
CONDITIONS.yaml
.Buat tingkat akses.
gcloud access-context-manager levels create NAME \ --title TITLE \ --basic-level-spec CONDITIONS.yaml \ --policy=POLICY
Ganti kode berikut:
NAME: Nama unik untuk tingkat akses. Nama ini harus diawali dengan huruf dan hanya menyertakan huruf, angka, serta garis bawah.
TITLE: Judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
POLICY: ID kebijakan akses organisasi Anda. Jika Anda telah menetapkan kebijakan default, parameter ini bersifat opsional.
Anda akan melihat output yang mirip dengan yang berikut:
Create request issued for: NAME Waiting for operation [accessPolicies/POLICY/accessLevels/NAME/create/1521594488380943] to complete...done. Created level NAME.
API
Buat isi permintaan untuk membuat resource
AccessLevel
yang mencakup satu atau beberapa rentang IPv4 atau IPv6 yang diformat sebagai blok CIDR.Dalam contoh ini, untuk membatasi akses hanya ke auditor, Anda akan memasukkan berikut ke dalam isi permintaan:
{ "name": "NAME", "title": "TITLE", "basic": { "conditions": [ { "ipSubnetworks": [ "203.0.113.0/25" ] } ] } }
Ganti kode berikut:
NAME: Nama unik untuk tingkat akses. Nama ini harus diawali dengan huruf dan hanya menyertakan huruf, angka, serta garis bawah.
TITLE: Judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
Jika ingin menggunakan alamat IP pribadi, Anda harus memasukkan informasi berikut di isi permintaan:
{ "name": "NAME", "title": "TITLE", "basic": { "conditions": [ { "vpcNetworkSources": [ { "vpcSubnetwork": { "network": VPC_NETWORK_NAME, "vpcIpSubnetworks": [ IP_RANGE ] } } ] } ] } }
Ganti VPC_NETWORK_NAME dan IP_RANGE dengan nilai yang dijelaskan di bagian Menggunakan alamat IP internal di tingkat akses.
Buat tingkat akses dengan memanggil
accessLevels.create
.POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY/accessLevels
POLICY adalah ID kebijakan akses organisasi Anda.
Setelah membuat tingkat akses, Anda harus menerapkannya menggunakan binding akses agar dapat diterapkan.
Membatasi akses berdasarkan atribut perangkat
Contoh ini menjelaskan cara membuat tingkat akses yang memberikan akses hanya ke perangkat yang memenuhi serangkaian persyaratan tertentu, seperti versi sistem operasi (OS) tertentu.
Informasi tentang perangkat diberikan ke Chrome Enterprise Premium menggunakan Verifikasi Endpoint. Kriteria berikut dapat diperiksa saat menentukan apakah akan memberikan akses:
- Kunci layar diaktifkan
- Enkripsi penyimpanan diaktifkan
- Perangkat menjalankan jenis dan versi sistem operasi tertentu
Untuk contoh ini, asumsikan organisasi Anda hanya menggunakan komputer yang telah menginstal ChromeOS atau Windows. Untuk menambahkan lapisan keamanan, Anda ingin membuat tingkat akses yang akan mencegah akses oleh siapa pun yang menggunakan sistem operasi lain. Selain itu, untuk mengelola risiko, Anda harus memastikan bahwa hanya versi OS tertentu yang dapat memperoleh akses.
Konsol
Di Google Cloud console, buka halaman Access Context Manager.
Jika Anda diminta, pilih project.
Di bagian atas halaman Chrome Enterprise Premium, klik Baru.
Di panel New Access Level, di bagian Conditions, klik Add attribute, lalu klik Device Policy.
Tambahkan atribut kebijakan perangkat:
Klik Tambahkan Kebijakan OS, lalu klik Kebijakan ChromeOS.
Di kotak Versi minimum, masukkan versi minimum ChromeOS yang ingin Anda izinkan.
Ulangi langkah 1 dan 2 untuk Kebijakan OS Windows.
Klik Simpan.
gcloud
Buat file YAML untuk tingkat akses yang menyertakan kebijakan perangkat dengan batasan OS.
Dalam contoh ini, untuk mengizinkan hanya perangkat dengan versi minimum ChromeOS dan Windows yang dapat diterima, Anda akan memasukkan kode berikut ke dalam file YAML:
- devicePolicy: osConstraints: - osType: DESKTOP_CHROME_OS minimumVersion: 11316.165.0 - osType: DESKTOP_WINDOWS minimumVersion: 10.0.1809
Simpan file. Dalam contoh ini, file diberi nama
CONDITIONS.yaml
.Buat tingkat akses.
gcloud access-context-manager levels create NAME \ --title TITLE \ --basic-level-spec CONDITIONS.yaml \ --policy=POLICY
Ganti kode berikut:
NAME: Nama unik untuk tingkat akses. Nama ini harus diawali dengan huruf dan hanya menyertakan huruf, angka, serta garis bawah.
TITLE: Judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
POLICY: ID kebijakan akses organisasi Anda. Jika Anda telah menetapkan kebijakan default, parameter ini bersifat opsional.
Anda akan melihat output yang mirip dengan yang berikut:
Create request issued for: NAME Waiting for operation [accessPolicies/POLICY/accessLevels/NAME/create/1521594488380943] to complete...done. Created level NAME.
API
Buat isi permintaan untuk membuat resource
AccessLevel
yang menyertakan kebijakan perangkat dengan batasan OS.Dalam contoh ini, untuk mengizinkan hanya perangkat dengan versi minimum ChromeOS dan Windows yang dapat diterima, Anda akan memasukkan kode berikut ke dalam isi permintaan:
{ "name": "NAME", "title": "TITLE", "basic": { "conditions": [ { "devicePolicy": { "osConstraints": [ { "osType": "DESKTOP_CHROME_OS", "minimumVersion": "11316.165.0" }, { "osType": "DESKTOP_WINDOWS", "minimumVersion": "10.0.1809" } ] { } ] } }
Ganti kode berikut:
NAME: Nama unik untuk tingkat akses. Nama ini harus diawali dengan huruf dan hanya menyertakan huruf, angka, serta garis bawah.
TITLE: Judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
Buat tingkat akses dengan memanggil
accessLevels.create
.POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY/accessLevels
POLICY adalah ID kebijakan akses organisasi Anda.
Setelah membuat tingkat akses, Anda harus menerapkannya menggunakan binding akses agar dapat diterapkan.
Membatasi akses ke perangkat perusahaan tepercaya dengan sertifikat yang valid
Anda dapat menggunakan akses berbasis sertifikat (CBA) untuk mewajibkan sertifikat X.509 terverifikasi untuk mengakses resource Google Cloud. Kredensial tambahan memberikan sinyal identitas perangkat yang lebih kuat dan membantu melindungi organisasi Anda dari pencurian kredensial atau kehilangan yang tidak disengaja dengan mewajibkan kredensial pengguna dan sertifikat perangkat asli ada sebelum memberikan akses.
Sebelum melanjutkan, pastikan ekstensi Chrome Verifikasi Endpoint dan aplikasi pendukung Verifikasi Endpoint di-deploy di semua perangkat yang memerlukan akses ke resourceGoogle Cloud . Perangkat ini akan menjadi perangkat tepercaya yang dapat Anda beri akses. Lihat Men-deploy Endpoint Verification untuk digunakan dengan akses berbasis sertifikat untuk mengetahui detailnya.
Untuk membuat kebijakan yang memerlukan akses berbasis sertifikat, Anda harus memiliki tingkat akses dengan spesifikasi tingkat akses kustom.
Konsol
Di konsol Google Cloud , buka halaman Access Context Manager.
Jika Anda diminta, pilih project.
Klik Buat tingkat akses.
Di panel Tingkat akses baru, pilih Mode lanjutan. Anda harus memiliki lisensi Chrome Enterprise Premium untuk menggunakan mode ini.
Di bagian Kondisi, masukkan ekspresi berikut di kotak Ekspresi CEL.
certificateBindingState(origin, device) == CertificateBindingState.CERT_MATCHES_EXISTING_DEVICE
Klik Simpan.
gcloud
Buat file YAML untuk tingkat akses yang mencakup penerapan sertifikat.
expression: "certificateBindingState(origin, device) == CertificateBindingState.CERT_MATCHES_EXISTING_DEVICE"
Simpan file. Dalam contoh ini, file diberi nama
CONDITIONS.yaml
.Buat tingkat akses.
gcloud access-context-manager levels create NAME \ --title TITLE \ --basic-level-spec CONDITIONS.yaml \ --policy=POLICY
Ganti kode berikut:
NAME: Nama unik untuk tingkat akses. Nama harus diawali dengan huruf dan hanya boleh berisi huruf, angka, dan garis bawah.
TITLE: Judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
POLICY: ID kebijakan akses organisasi Anda. Jika Anda telah menetapkan kebijakan default, parameter ini bersifat opsional.
Anda akan melihat output yang mirip dengan yang berikut:
Create request issued for: NAME Waiting for operation [accessPolicies/POLICY/accessLevels/NAME/create/1234] to complete...done. Created level NAME.
API
Buat file isi permintaan untuk tingkat akses yang mencakup kebijakan perangkat dengan batasan OS.
{ "name": "require_certificate", "title": "Certificate-Based Access", "description": "An example certificate-based access level.", "custom": { "expr": { "expression": "certificateBindingState(origin, device) == CertificateBindingState.CERT_MATCHES_EXISTING_DEVICE", "title": "Require a valid certificate", "description": "Permits requests from a device with a valid mTLS certificate." } } }
Buat tingkat akses dengan memanggil
accessLevels.create
.POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY/accessLevels
POLICY adalah ID kebijakan akses organisasi Anda.
Setelah membuat tingkat akses, Anda harus menerapkannya menggunakan binding akses agar dapat diterapkan.