Memberikan akses instance kepada pengguna

Halaman ini menjelaskan cara memberi pengguna Anda akses ke instance Secure Source Manager menggunakan Identity and Access Management (IAM). Untuk mengetahui detail selengkapnya tentang kontrol akses di Secure Source Manager, lihat Kontrol akses dengan IAM

Peran yang diperlukan

Untuk mendapatkan izin yang diperlukan untuk memberi pengguna akses instance, minta administrator untuk memberi Anda peran IAM Secure Source Manager Instance Owner (roles/securesourcemanager.instanceOwner) di instance Secure Source Manager. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran kustom atau peran yang telah ditentukan lainnya.

Untuk mengetahui informasi tentang cara memberikan peran Secure Source Manager, lihat Kontrol akses dengan IAM.

Memberi pengguna Workforce Identity Federation akses

Jika Anda menggunakan Workforce Identity Federation untuk mengakses Secure Source Manager, maka principal akan direpresentasikan secara berbeda. Untuk mempelajari lebih lanjut cara memberikan akses ke principal yang merepresentasikan grup identitas, lihat Merepresentasikan pengguna workforce pool dalam kebijakan IAM.

Misalnya, perintah berikut memberikan peran Instance Accessor (roles/securesourcemanager.instanceAccessor) kepada pengguna user@example.com di kumpulan tenaga kerja my-pool pada instance my-instance di project my-project di region us-central1:

  gcloud beta source-manager instances add-iam-policy-binding my-instance \
      --project=my-project \
      --region=us-central1 \
      --member=principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/user@example.com \
      --role=roles/securesourcemanager.instanceAccessor

Anda dapat memberikan akses kepada pengguna atau grup dalam workforce identity pool berdasarkan atribut Penyedia identitas (IdP), atau menggunakan Common Expression Language (CEL) untuk memetakan atribut OIDC ke atribut kustom guna menentukan strategi otorisasi dalam kebijakan IAM. Untuk mengetahui informasi selengkapnya tentang pemetaan atribut, baca artikel Pemetaan atribut.

Memberikan akses kepada satu pengguna

Untuk memberikan akses ke satu pengguna ke instance, gunakan perintah Google Cloud CLI berikut:

  gcloud beta source-manager instances add-iam-policy-binding INSTANCE_ID \
      --project=PROJECT_ID \
      --region=REGION \
      --member=PRINCIPAL_IDENTIFIER \
      --role=roles/securesourcemanager.instanceAccessor

Ganti kode berikut:

  • INSTANCE_ID dengan ID instance.
  • PROJECT_ID dengan project ID atau nomor project instance.
  • REGION dengan region tempat instance berada. Lihat dokumentasi lokasi untuk mengetahui region Secure Source Manager yang tersedia.
  • PRINCIPAL_IDENTIFIER dengan ID untuk akun utama yang ingin Anda beri peran.

    Misalnya, untuk memberikan peran kepada satu pengguna dengan alamat emailnya, Anda akan memformat ID prinsipal sebagai user:EMAIL dengan EMAIL adalah alamat email pengguna.

    Untuk mengetahui informasi selengkapnya tentang ID utama yang didukung, lihat ID utama.

Misalnya, perintah berikut memberikan peran roles/securesourcemanager.instanceAccessor kepada pengguna trusted-user1@gmail.com di instance my-instance, dalam project my-project di region us-central.

  gcloud beta source-manager instances add-iam-policy-binding INSTANCE_ID \
      --project=my-project \
      --region=us-central1 \
      --member=user:trusted-user1@gmail.com \
      --role=roles/securesourcemanager.instanceAccessor

Memberikan akses kepada beberapa pengguna

  1. Buat grup Google yang berisi semua pengguna yang perlu mengakses instance Anda. Grup dapat berupa grup khusus domain.

    Sebaiknya buat grup luas yang mencakup semua calon pengguna, misalnya semua developer, dan orang yang mungkin melaporkan masalah di perusahaan Anda. Pengguna harus berada dalam grup ini untuk mengakses atau membuat resource di instance Secure Source Manager, termasuk repositori dan masalah.

    Dengan menjadikannya grup yang luas, pimpinan tim dapat mengelola peran pengguna tingkat instance dan tingkat repositori tanpa harus mengelola keanggotaan grup.

  2. Untuk membaca kebijakan izin saat ini dan menyimpannya ke /tmp/instances.json, jalankan perintah berikut:

      gcloud beta source-manager instances get-iam-policy INSTANCE_ID \
          --project=PROJECT_ID \
          --region=REGION \
          --format=json > /tmp/instance.json
    

    Ganti kode berikut:

    • INSTANCE_ID dengan ID instance.
    • PROJECT_ID dengan project ID atau nomor project instance.
    • REGION dengan region tempat instance berada. Lihat dokumentasi lokasi untuk mengetahui region Secure Source Manager yang tersedia.

    Output akan menyertakan binding yang ada, atau, jika tidak ada, nilai etag yang mirip dengan berikut ini:

    {
        "etag": "BwUjHYKJUiQ="
    }
    
  3. Edit file JSON /tmp/instance.json untuk memberikan peran berikut kepada grup Anda:

    • Peran Instance Accessor (roles/securesourcemanager.instanceAccessor) untuk pengguna yang perlu melihat instance, tetapi tidak membuat atau mengubah repositori.
    • Peran Instance Repository Creator (roles/securesourcemanager.instanceRepositoryCreator) untuk pengguna yang perlu membuat dan mengubah repositori.
    • Peran Pemilik Instance (roles/securesourcemanager.instanceOwner) untuk pengguna yang akan mengelola instance Anda.

    Contoh kebijakan berikut memberikan peran roles/securesourcemanager.instanceRepositoryCreator kepada grup your-group@gmail.com, dan memberikan peran roles/securesourcemanager.instanceOwner kepada pengguna trusted-user1@gmail.com dan trusted-user2@gmail.com.

    {
      "etag": "ETAG",
      "bindings": [
        {
          "role": "roles/securesourcemanager.instanceRepositoryCreator",
          "members": [
            "group:GROUP_EMAIL"
          ]
        },
        {
          "role": "roles/securesourcemanager.instanceOwner",
          "members": [
            "user:USER_EMAIL_1",
            "user:USER_EMAIL_2"
          ]
        }
      ]
    }
    

    Ganti kode berikut:

    • ETAG dengan nilai etag dari respons getIamPolicy, dalam hal ini adalah BwUjHYKJUiQ=
    • GROUP_EMAIL dengan alamat email grup Google Anda.
    • USER_EMAIL_1 dan USER_EMAIL_2 dengan alamat email pengguna yang ingin Anda beri peran Pemilik Instance.
  4. Simpan file /tmp/instance.json yang telah diedit.

  5. Setelah Anda mengubah kebijakan izinkan tersimpan untuk memberikan dan mencabut peran yang diinginkan, perbarui kebijakan izinkan instance Anda dengan menjalankan perintah berikut:

    gcloud beta source-manager instances set-iam-policy INSTANCE_ID  \
        --project=PROJECT_ID \
        --region=REGION \
        /tmp/instance.json
    

    Ganti kode berikut:

    • INSTANCE_ID dengan ID instance.
    • PROJECT_ID dengan project ID atau nomor project instance.
    • REGION dengan region tempat instance berada. Lihat dokumentasi lokasi untuk mengetahui region Secure Source Manager yang tersedia.

Langkah berikutnya