Dokumen ini menunjukkan cara administrator dapat membuat tingkat akses berdasarkan atribut perangkat (tingkat akses berbasis perangkat) menggunakan Access Context Manager.
Tingkat akses adalah sekumpulan atribut yang digunakan untuk mengizinkan akses ke resource berdasarkan informasi kontekstual tentang permintaan. Sebagai administrator, Anda dapat membuat tingkat akses dasar atau tingkat akses kustom menggunakan atribut perangkat yang dikumpulkan oleh Verifikasi Endpoint.
Sebelum memulai
Untuk menyelesaikan tugas di halaman ini, Anda harus memiliki salah satu peran berikut:
- Admin Access Context Manager (
roles/accesscontextmanager.policyAdmin
) - Editor Access Context Manager (
roles/accesscontextmanager.policyEditor
)
- Admin Access Context Manager (
Mengupgrade ke langganan berbayar Chrome Enterprise Premium.
Buat tingkat akses
Konsol
Di konsol Google Cloud , buka halaman Access Context Manager.
Jika diminta, pilih organisasi Anda.
Di halaman Access Context Manager, klik
Buat tingkat akses.Di panel Tingkat Akses Baru, buat tingkat akses dasar atau tingkat akses kustom. Untuk mengetahui petunjuknya, luaskan bagian yang diperlukan.
Membuat tingkat akses dasar
Di kotak Judul tingkat akses, masukkan judul untuk tingkat akses.
Judul maksimal 50 karakter, diawali dengan huruf, dan hanya boleh berisi angka, huruf, garis bawah, dan spasi.
Di bagian Buat Kondisi di, pilih Mode dasar
.- Di bagian Kondisi, pilih atribut perangkat:
- Klik Kebijakan Perangkat.
Pilih atribut yang diperlukan.
Misalnya, jika Anda ingin menerapkan persetujuan admin di perangkat, pilih Wajibkan persetujuan admin.
- Klik Simpan.
Tingkat akses yang baru dibuat akan ditampilkan di halaman Access Context Manager.
Membuat tingkat akses kustom
Di kotak Judul tingkat akses, masukkan judul untuk tingkat akses.
Judul maksimal 50 karakter, diawali dengan huruf, dan hanya boleh berisi angka, huruf, garis bawah, dan spasi.
- Di bagian Buat Kondisi di, pilih Mode lanjutan.
Di bagian Kondisi, masukkan ekspresi untuk tingkat akses kustom Anda. Kondisi harus diselesaikan ke satu nilai boolean.
Untuk menemukan atribut perangkat yang tersedia untuk ekspresi CEL Anda, lihat atribut perangkat yang dikumpulkan oleh Verifikasi Endpoint.
Ekspresi CEL berikut hanya mengizinkan akses dari perangkat terenkripsi:
device.encryption_status == DeviceEncryptionStatus.ENCRYPTED
Untuk mengetahui contoh dan informasi selengkapnya tentang dukungan Common Expression Language (CEL) dan tingkat akses kustom, lihat Spesifikasi tingkat akses kustom.
- Klik Simpan.
Tingkat akses yang baru dibuat akan ditampilkan di halaman Access Context Manager.
gcloud CLI
Untuk membuat tingkat akses, gunakan metode gcloud access-context-manager levels create.
Buat file
.yaml
.Untuk tingkat akses dasar, tentukan atribut kebijakan perangkat untuk tingkat akses.
Contoh: Untuk membatasi akses hanya bagi pengguna dengan penyimpanan perangkat yang dienkripsi, masukkan kode berikut dalam file
.yaml
.- devicePolicy: allowedEncryptionStatuses - ENCRYPTED
Untuk tingkat akses kustom, tentukan ekspresi CEL yang diformat sebagai pasangan nilai kunci tunggal:
expression: "CEL_EXPRESSION"
Contoh: Untuk membatasi akses hanya kepada pengguna dengan penyimpanan perangkat yang dienkripsi dan dengan status perangkat yang disetujui, masukkan kode berikut dalam file
.yaml
.expression: "device.encryption_status == DeviceEncryptionStatus.ENCRYPTED && device.is_admin_approved_device"
Untuk mengetahui daftar atribut tingkat akses kebijakan perangkat dan format YAML-nya, lihat Atribut kebijakan perangkat. Untuk file YAML komprehensif dari semua kemungkinan atribut, lihat contoh file YAML tingkat akses ini.
Untuk menemukan atribut perangkat yang tersedia untuk spesifikasi tingkat kustom, lihat Atribut perangkat yang dikumpulkan oleh Verifikasi Endpoint.
Buat tingkat akses.
Untuk tingkat akses dasar, jalankan perintah berikut:
gcloud access-context-manager levels create ACCESS_LEVEL_NAME \ --title=TITLE \ --basic-level-spec=FILE_NAME.yaml\ --policy=POLICY_NAME
Untuk tingkat akses kustom, jalankan perintah berikut:
gcloud access-context-manager levels create ACCESS_LEVEL_NAME \ --title=TITLE \ --custom-level-spec=FILE_NAME.yaml\ --policy=POLICY_NAME
Dengan:
ACCESS_LEVEL_NAME adalah nama unik untuk tingkat akses. Formatnya harus sebagai berikut:
accessPolicies/POLICY_ID/accessLevels/LEVEL_ID
.LEVEL_ID adalah nama untuk tingkat akses. Nama harus maksimal 50 karakter, diawali dengan huruf, dan hanya dapat berisi angka, huruf, dan garis bawah.
TITLE adalah judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
FILE_NAME adalah nama file
.yaml
. Untuk tingkat akses dasar, tingkat akses ini berisi atribut kebijakan perangkat. Untuk tingkat akses kustom, tingkat akses ini berisi ekspresi CEL yang diformat sebagai pasangan nilai kunci tunggal: `expression: "CEL_EXPRESSION".POLICY_NAME adalah nama kebijakan akses organisasi Anda.
Anda akan melihat output yang mirip dengan berikut ini:
Create request issued for: NAME Waiting for operation [accessPolicies/POLICY_NAME/accessLevels/NAME/create/1521594488380943] to complete...done. Created level NAME.
API
Buat tingkat akses menggunakan metode accessPolicies.accessLevels.create.
Membuat tingkat akses dasar
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- POLICY_ID: ID kebijakan akses organisasi Anda.
- LEVEL_ID: nama untuk tingkat akses. Nama harus maksimal 50 karakter, diawali dengan huruf, dan hanya dapat berisi angka, huruf, dan garis bawah.
- ACCESS_LEVEL_NAME: nama unik untuk tingkat akses. Formatnya harus sebagai berikut:
accessPolicies/POLICY_ID/accessLevels/LEVEL_ID
. - TITLE: judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
- DESCRIPTION: deskripsi tingkat akses dan penggunaannya.
- CONDITION: daftar persyaratan agar tingkat akses diberikan.
Metode HTTP dan URL:
POST https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels
Isi JSON permintaan:
For basic access levels: { "name": ACCESS_LEVEL_NAME, "title": TITLE, "description": DESCRIPTION, "basic": { "conditions": [ { CONDITION } ], } }, }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "operations/accessPolicies/84961948973/accessLevels/deviceEncrypted/create/1666896068847514", "metadata": { "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata" }, "done": true, "response": { "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessLevel", "name": "accessPolicies/84961948973/accessLevels/deviceEncrypted", "title": "accessPolicies/84961948973/accessLevels/deviceEncrypted", "basic": { "conditions": [ { "devicePolicy": { "allowedEncryptionStatuses": [ "ENCRYPTED" ] } } ] } } }
Membuat tingkat akses kustom
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- POLICY_ID: ID kebijakan akses organisasi Anda.
- LEVEL_ID: nama untuk tingkat akses. Nama harus maksimal 50 karakter, diawali dengan huruf, dan hanya dapat berisi angka, huruf, dan garis bawah.
- ACCESS_LEVEL_NAME: nama unik untuk tingkat akses. Formatnya harus sebagai berikut:
accessPolicies/POLICY_ID/accessLevels/LEVEL_ID
. - TITLE: judul yang dapat dibaca manusia. Nama ini harus unik untuk kebijakan.
- DESCRIPTION: deskripsi tingkat akses dan penggunaannya.
- CEL_EXPRESSION: Ekspresi CEL yang dievaluasi ke boolean.
Metode HTTP dan URL:
POST https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels
Isi JSON permintaan:
{ "name": ACCESS_LEVEL_NAME, "title": TITLE, "description": DESCRIPTION, "custom": { "conditions": [ { "expr": { CEL_EXPRESSION } } ] } }, }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "operations/accessPolicies/84961948973/accessLevels/sampleCustomAccessLevelName/create/1666936427127701", "metadata": { "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata" }, "done": true, "response": { "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessLevel", "name": "accessPolicies/84961948973/accessLevels/sampleCustomAccessLevelName", "title": "accessPolicies/84961948973/accessLevels/sampleCustomAccessLevelTitle", "custom": { "expr": { "expression": "device.encryption_status == DeviceEncryptionStatus.ENCRYPTED" } } } }
Untuk mengetahui informasi selengkapnya tentang cara membuat tingkat akses dengan berbagai kondisi dan dependensi tingkat akses, lihat Membuat tingkat akses dasar.