All Products
Search
Document Center

Resource Access Management:Provision pengguna ke Alibaba Cloud RAM menggunakan SCIM

Last Updated:May 28, 2026

Sinkronkan pengguna dari sistem identitas on-premises Anda ke RAM melalui protokol SCIM yang diamankan oleh otorisasi OAuth 2.0.

Prasyarat

Disarankan agar administrator RAM atau pengguna RAM dengan izin manajemen OAuth melakukan operasi dalam topik ini.

Ikhtisar

  • SCIM (System for Cross-domain Identity Management) menstandarkan manajemen identitas di berbagai aplikasi cloud. SCIM 2.0 menggunakan model objek di mana semua objek mewarisi dari Resource dengan atribut id, externalId, dan meta. RFC 7643 memperluasnya dengan User, Group, dan EnterpriseUser. Topik ini menggunakan resource User.

  • OAuth (Open Authorization) memungkinkan aplikasi pihak ketiga mengakses resource pengguna tanpa mengekspos kredensial. Alibaba Cloud mendukung tiga jenis aplikasi OAuth: Web Application, Native Application, dan Server Application. Baik Web Application maupun Native Application menggunakan OAuth 3-legged, sedangkan Server Application menggunakan OAuth 2-legged. SCIM menggunakan OAuth 2-legged untuk komunikasi client-to-API, sebagaimana didefinisikan dalam spesifikasi OAuth 2.0. Ikhtisar aplikasi OAuth.

  • Titik akhir SCIM Alibaba Cloud: https://scim.aliyun.com.

  • Titik akhir OAuth Alibaba Cloud untuk mendapatkan access_token: https://oauth.aliyun.com/v1/token.

Langkah 1: Buat dan otorisasi aplikasi OAuth

  1. Masuk ke Konsol RAM menggunakan Akun Alibaba Cloud Anda.

  2. Di panel navigasi sebelah kiri, klik OAuth (Preview).

  3. Pada tab Enterprise Applications, klik Create Application.

    Untuk Application Type, pilih Server Application. Buat aplikasi.

    Setelah pembuatan, dapatkan client_id dari halaman detail aplikasi.

  4. Klik nama aplikasi. Pada tab OAuth Scope, klik Add OAuth Scopes.

    Untuk OAuth Scope, pilih /acs/scim. Kelola OAuth scopes.

  5. Otorisasi aplikasi OAuth.

    1. Pada tab OAuth Scope, klik Grants.

    2. Pada halaman Third-party Application Authorization, pilih Alibaba Cloud Cross-domain Identity Management Service lalu klik Grants.

  6. Pada tab App Secrets, klik Create Secret untuk membuat rahasia aplikasi.

    Penting

    AppSecretValue hanya ditampilkan sekali saat pembuatan dan tidak dapat diambil kembali. Simpan dengan aman.

Langkah 2: Sinkronkan data pengguna

Anda dapat menyinkronkan data pengguna melalui client seperti One Identity atau langsung melalui API SCIM.

  • Client: Konfigurasikan pengaturan SCIM di client seperti One Identity untuk menyinkronkan data pengguna. Dokumentasi One Identity.

  • API SCIM: Petakan pengguna on-premises ke RAM user. Anda dapat membuat, menghapus, mengkueri, dan memperbarui atribut RAM user berikut.

    • id: ID RAM user, unik secara global dan dihasilkan oleh server.

    • externalId: ID unik yang ditentukan client yang mengaitkan RAM user dengan pengguna di sistem on-premises Anda.

      Catatan

      RAM user yang dibuat di konsol tidak memiliki atribut externalId.

    • userName: Nama unik yang ditentukan client untuk setiap pengguna.

    • displayName: Nama tampilan RAM user, sebagaimana ditentukan oleh client.

Untuk menyinkronkan data pengguna menggunakan API SCIM:

  1. Dapatkan ID (client_id) dan nilai rahasia (AppSecretValue) dari aplikasi server yang telah diotorisasi.

  2. Untuk mendapatkan access_token, kirim permintaan yang berisi client_id dan AppSecretValue ke https://oauth.aliyun.com/v1/token.

    Header Authorization harus menggunakan format "Authorization: Basic Base64Encode(client_id:AppSecretValue)". Misalnya, jika client_id=cid dan AppSecretValue=123456, header Authorization-nya harus berupa "Authorization: Basic Y2lkOjEyMzQ1Ng==".

    Contoh permintaan:

    curl --location --request POST --header "Authorization: Basic Y2lkOjEyMzQ1Ng==" https://oauth.aliyun.com/v1/token?grant_type=client_credentials&client_id=463790568674183****

    Contoh tanggapan:

    {
        "scope": "/acs/scim",
        "request_id": "8dc768e0-d6fe-4f52-a788-05631dd6c584",
        "access_token": "eyJ***hKg",
        "token_type": "Bearer",
        "expires_in": "3599"
    }
  3. Kueri nilai ResourceType dan Schema yang didukung oleh SCIM Alibaba Cloud.

    Untuk mengkueri ResourceType yang didukung:

    curl --location --request GET 'https://scim.aliyun.com/ResourceTypes'

    Untuk mengkueri Schema yang didukung:

    curl --location --request GET 'https://scim.aliyun.com/Schemas'
  4. Buat, kueri, perbarui, dan hapus RAM user.

    • Buat RAM user.

      Tentukan userName, displayName, dan externalId yang dipetakan ke pengguna di sistem on-premises Anda.

      Contoh permintaan:

      curl --location --request POST 'https://scim.aliyun.com/Users' \
      --header 'Authorization: Bearer  eyJ***hKg' \
      --header 'Content-Type: application/json' \
      --data-raw '{
          "displayName": "j2gg0s_****",
          "schemas": [
              "urn:ietf:params:scim:schemas:core:2.0:User"
          ],
          "externalId": "6e74eec4-ddb5-4e74-bd12-5e7b99b2****",
          "userName": "j2gg0screatedbyscim_exa****"
      }'

      Contoh tanggapan:

      {
          "displayName": "j2gg0s_****",
          "meta": {
              "created": "2020-02-14T03:58:59Z",
              "location": "https://scim.aliyun.com/Users/27648498165273****",
              "lastModified": "2020-02-14T03:58:59Z",
              "resourceType": "User"
          },
          "schemas": [
              "urn:ietf:params:scim:schemas:core:2.0:User"
          ],
          "externalId": "6e74eec4-ddb5-4e74-bd12-5e7b99b2****",
          "id": "27648498165273****",
          "userName": "j2gg0screatedbyscim_exa****"
      }
    • Kueri RAM user tertentu.

      • Gunakan GET /Users/{id} untuk mengkueri RAM user berdasarkan id.

      • Gunakan GET /Users?filter=externalId eq xxx untuk mengkueri RAM user berdasarkan externalId.

      • Gunakan GET /Users?filter=userName eq xxx untuk mengkueri RAM user berdasarkan userName.

        Contoh permintaan:

        curl --location --request GET 'https://scim.aliyun.com/Users?filter=userName%20eq%20%22j2gg0screatedbyscim****%22' \
        --header 'Authorization: Bearer  eyJ***hKg'

        Contoh tanggapan:

        {
            "startIndex": 1,
            "totalResults": 1,
            "itemsPerPage": 30,
            "schemas": [
                "urn:ietf:params:scim:api:messages:2.0:ListResponse"
            ],
            "Resources": [
                {
                    "displayName": "j2gg0screatedbyscim****",
                    "meta": {
                        "created": "2019-12-11T01:53:19Z",
                        "location": "https://scim.aliyun.com/Users/27769827602919****",
                        "lastModified": "2019-12-11T02:10:39Z",
                        "resourceType": "User"
                    },
                    "schemas": [
                        "urn:ietf:params:scim:schemas:core:2.0:User"
                    ],
                    "externalId": "6e74eec4-ddb5-4e74-bd12-5e7b99b2****",
                    "id": "27769827602919****",
                    "userName": "j2gg0screatedbyscim****"
                }
            ]
        }
        Catatan

        Untuk filter SCIM, Alibaba Cloud hanya mendukung operasi and dan eq pada atribut id, userName, dan externalId.

    • Perbarui atribut RAM user.

      Contoh permintaan:

      curl --location --request PUT 'https://scim.aliyun.com/Users/27648498165273****' \
      --header 'Authorization: Bearer  eyJ***hKg' \
      --header 'Content-Type: application/json' \
      --data-raw '{
          "displayName": "j2gg0s_new_****",
          "schemas": [
              "urn:ietf:params:scim:schemas:core:2.0:User"
          ],
          "externalId": "6e74eec4-ddb5-4e74-bd12-5e7b99b2****",
          "userName": "j2gg0screatedbyscim_new_exa****"
      }'

      Contoh tanggapan:

      {
          "displayName": "j2gg0s_new_****",
          "meta": {
              "created": "2020-02-14T03:58:59Z",
              "location": "https://scim.aliyun.com/Users/27648498165273****",
              "lastModified": "2020-02-14T04:03:55Z",
              "resourceType": "User"
          },
          "schemas": [
              "urn:ietf:params:scim:schemas:core:2.0:User"
          ],
          "externalId": "6e74eec4-ddb5-4e74-bd12-5e7b99b2****",
          "id": "27648498165273****",
          "userName": "j2gg0screatedbyscim_new_exa****"}
    • Hapus RAM user.

      Contoh permintaan:

      curl --location --request DELETE 'https://scim.aliyun.com/Users/27648498165273****' \
      --header 'Authorization: Bearer  eyJ***hKg' \
      --header 'Content-Type: application/json'

      Kode status HTTP 204 mengonfirmasi penghapusan yang berhasil.

      Catatan

      Alibaba Cloud tidak mendukung soft delete. Petakan semua operasi soft delete ke hard delete sebelum menyinkronkan data.