Menyiapkan Devices API

Halaman ini menjelaskan cara menyiapkan Cloud Identity Devices API. Anda dapat menggunakan Devices API untuk menyediakan resource secara terprogram—misalnya, mengelola Grup Google—atas nama administrator.

Mengaktifkan API dan menyiapkan kredensial

  1. Login keakun Anda. Google Cloud Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Identity API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Cloud Identity API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

Menyiapkan akses API menggunakan akun layanan dengan delegasi di seluruh domain

Bagian ini menjelaskan cara membuat dan menggunakan akun layanan untuk mengakses resource Google Workspace. Autentikasi langsung ke Devices API menggunakan akun layanan tidak didukung, jadi Anda harus menggunakan metode ini.

Membuat akun layanan dan mengonfigurasinya untuk delegasi di seluruh domain

Untuk membuat akun layanan dan mendownload kunci akun layanan, lakukan hal berikut:

  1. Untuk membuat akun layanan, lakukan langkah berikut:

    1. Di Google Cloud console, buka halaman akun layanan IAM:

      Buka akun layanan

    2. Klik Buat akun layanan.

    3. Di bagian Detail akun layanan, ketik nama, ID, dan deskripsi untuk akun layanan, lalu klik Buat dan lanjutkan.

    4. Opsional: Di bagian Berikan akses project ke akun layanan ini, pilih peran IAM yang akan diberikan ke akun layanan.

    5. Klik Lanjutkan.

    6. Opsional: Di bagian Beri pengguna akses ke akun layanan ini, tambahkan pengguna atau grup yang diizinkan untuk menggunakan dan mengelola akun layanan.

    7. Klik Selesai.

  2. Untuk mengizinkan akun layanan mengakses Devices API menggunakan delegasi di seluruh domain, ikuti petunjuk di Menyiapkan delegasi di seluruh domain untuk akun layanan.

  3. Untuk membuat dan mendownload kunci akun layanan, lakukan hal berikut.

    1. Klik alamat email untuk akun layanan yang Anda buat.
    2. Klik tab Kunci.
    3. Di daftar drop-down Tambahkan kunci, pilih Buat kunci baru.
    4. Klik Buat.

      File kredensial berformat JSON, yang berisi pasangan kunci publik dan pribadi baru, akan dibuat dan didownload ke komputer Anda. File ini berisi satu-satunya salinan kunci. Anda bertanggung jawab untuk menyimpannya dengan aman. Jika kehilangan pasangan kunci, Anda harus membuat yang baru.

Meninjau entri log

Saat meninjau entri log, perhatikan bahwa log audit akan menampilkan tindakan akun layanan sebagai tindakan yang dimulai oleh pengguna. Hal ini karena delegasi di seluruh domain berfungsi dengan mengizinkan akun layanan meniru identitas pengguna administrator.

Menginisialisasi kredensial

Saat menginisialisasi kredensial dalam kode Anda, tentukan alamat email tempat akun layanan bertindak dengan memanggil with_subject() pada kredensial. Contoh:

Python

credentials = service_account.Credentials.from_service_account_file(
  'SERVICE_ACCOUNT_CREDENTIAL_FILE',
  scopes=SCOPES).with_subject(USER
)

Ganti kode berikut:

  • SERVICE_ACCOUNT_CREDENTIAL_FILE: file kunci akun layanan yang Anda buat sebelumnya dalam dokumen ini
  • USER: pengguna yang ditiru identitasnya oleh akun layanan

Membuat instance klien

Contoh berikut menunjukkan cara membuat instance klien menggunakan kredensial akun layanan.

Python

from google.oauth2 import service_account
import googleapiclient.discovery

SCOPES = ['https://www.googleapis.com/auth/cloud-identity.devices']

def create_service():
  credentials = service_account.Credentials.from_service_account_file(
    'SERVICE_ACCOUNT_CREDENTIAL_FILE',
    scopes=SCOPES
  )

  delegated_credentials = credentials.with_subject('USER')

  service_name = 'cloudidentity'
  api_version = 'v1'
  service = googleapiclient.discovery.build(
    service_name,
    api_version,
    credentials=delegated_credentials)

  return service

Ganti kode berikut:

  • SERVICE_ACCOUNT_CREDENTIAL_FILE: file kunci akun layanan yang Anda buat sebelumnya dalam dokumen ini
  • USER: pengguna yang ditiru identitasnya oleh akun layanan

Sekarang Anda dapat mulai melakukan panggilan ke Devices API.

Untuk mengautentikasi sebagai pengguna akhir, ganti objek credential dari akun layanan dengan credential yang dapat Anda peroleh di Mendapatkan token OAuth 2.0.

Menginstal library klien Python

Untuk menginstal library klien Python, jalankan perintah berikut:

  pip install --upgrade google-api-python-client google-auth \
    google-auth-oauthlib google-auth-httplib2

Untuk mengetahui informasi selengkapnya tentang cara menyiapkan lingkungan pengembangan Python, baca Panduan Penyiapan Lingkungan Pengembangan Python.