Tüm Ürünler
Search
Belge Merkezi

Resource Access Management:Provision users to Alibaba Cloud RAM using SCIM

Son Güncelleme:Oct 03, 2026

Kullanıcıları, OAuth 2.0 yetkilendirmesi ile güvence altına alınan SCIM protokolü aracılığıyla şirket içi kimlik sistemlerinizden RAM'e senkronize edin.

Önkoşullar

Bu konudaki işlemleri bir RAM yöneticisinin veya OAuth yönetimi izinlerine sahip bir RAM kullanıcısının gerçekleştirmesini öneririz.

Genel Bakış

  • SCIM (Sistemler Arası Kimlik Yönetimi), bulut uygulamaları arasında kimlik yönetimini standartlaştırır. SCIM 2.0, tüm nesnelerin id, externalId ve meta niteliklerini içeren Resource'dan türetildiği bir nesne modeli kullanır. RFC 7643 bu yapıyı User, Group ve EnterpriseUser ile genişletir. Bu konuda User kaynağı kullanılır.

  • OAuth (Açık Yetkilendirme), üçüncü taraf uygulamaların kimlik bilgilerini açığa çıkarmadan kullanıcı kaynaklarına erişmesine olanak tanır. Alibaba Cloud üç tür OAuth uygulamasını destekler: Web Application, Native Application ve Server Application. Hem Web Application hem de Native Application 3 ayaklı OAuth kullanırken Server Application 2 ayaklı OAuth kullanır. SCIM, istemci-API iletişimi için OAuth 2.0 teknik özelliklerinde tanımlandığı gibi 2 ayaklı OAuth kullanır. OAuth uygulamalarına genel bakış.

  • Alibaba Cloud SCIM uç noktası: https://scim.alibabacloud.com.

  • Bir access_token almak için Alibaba Cloud OAuth uç noktası: https://oauth.aliyun.com/v1/token.

Adım 1: Bir OAuth uygulaması oluşturun ve yetkilendirin

  1. Alibaba Cloud hesabınızı kullanarak RAM konsolu üzerinde oturum açın.

  2. Sol gezinme bölmesinde OAuth (Preview) seçeneğine tıklayın.

  3. Enterprise Applications sekmesinde Create Application seçeneğine tıklayın.

    Application Type olarak Server Application seçeneğini belirleyin. Uygulama oluşturma.

    Oluşturma işleminden sonra uygulama ayrıntıları sayfasından client_id değerini alın.

  4. Uygulama adına tıklayın. OAuth Scope sekmesinde Add OAuth Scopes seçeneğine tıklayın.

    OAuth Scope olarak /acs/scim seçeneğini belirleyin. OAuth kapsamlarını yönetme.

  5. OAuth uygulamasını yetkilendirin.

    1. OAuth Scope sekmesinde Grants seçeneğine tıklayın.

    2. Third-party Application Authorization sayfasında Alibaba Cloud Cross-domain Identity Management Service seçeneğini belirleyin ve ardından Grants seçeneğine tıklayın.

  6. App Secrets sekmesinde bir uygulama gizli anahtarı oluşturmak için Create Secret seçeneğine tıklayın.

    Önemli

    AppSecretValue yalnızca oluşturma sırasında bir kez görüntülenir ve daha sonra alınamaz. Bu değeri güvenli bir şekilde saklayın.

Adım 2: Kullanıcı verilerini senkronize edin

Kullanıcı verilerini One Identity gibi bir istemci aracılığıyla veya doğrudan SCIM API'leri aracılığıyla senkronize edebilirsiniz.

  • İstemci: Kullanıcı verilerini senkronize etmek için One Identity gibi bir istemcide SCIM ayarlarını yapılandırın. One Identity belgeleri.

  • SCIM API: Şirket içi kullanıcıları RAM kullanıcılarıyla eşleştirin. Aşağıdaki RAM kullanıcı niteliklerini oluşturabilir, silebilir, sorgulayabilir ve güncelleyebilirsiniz.

    • id: RAM kullanıcısının ID'si; evrensel olarak benzersizdir ve sunucu tarafından oluşturulur.

    • externalId: Bir RAM kullanıcısını şirket içi sisteminizdeki bir kullanıcıyla ilişkilendiren, istemci tarafından belirtilen benzersiz bir ID.

      Not

      Konsol üzerinden oluşturulan RAM kullanıcılarında externalId niteliği bulunmaz.

    • userName: Her kullanıcı için istemci tarafından belirtilen benzersiz ad.

    • displayName: İstemci tarafından belirtilen RAM kullanıcısının görünen adı.

SCIM API'lerini kullanarak kullanıcı verilerini senkronize etmek için:

  1. Yetkilendirilmiş sunucu uygulamasının ID'sini (client_id) ve gizli anahtar değerini (AppSecretValue) alın.

  2. Bir access_token almak için client_id ve AppSecretValue değerlerini içeren bir isteği https://oauth.aliyun.com/v1/token adresine gönderin.

    Authorization başlığı "Authorization: Basic Base64Encode(client_id:AppSecretValue)" formatını kullanmalıdır. Örneğin, client_id=cid ve AppSecretValue=123456 ise Authorization başlığı "Authorization: Basic Y2lkOjEyMzQ1Ng==" olmalıdır.

    Örnek istek:

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

    Örnek yanıt:

    {
        "scope": "/acs/scim",
        "request_id": "8dc768e0-d6fe-4f52-a788-05631dd6c584",
        "access_token": "eyJ***hKg",
        "token_type": "Bearer",
        "expires_in": "3599"
    }
  3. Alibaba Cloud SCIM'in desteklediği ResourceType ve Schema değerlerini sorgulayın.

    Desteklenen ResourceType değerlerini sorgulamak için:

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

    Desteklenen Schema değerlerini sorgulamak için:

    curl --location --request GET 'https://scim.alibabacloud.com/Schemas'
  4. RAM kullanıcılarını oluşturun, sorgulayın, güncelleyin ve silin.

    • Bir RAM kullanıcısı oluşturun.

      Şirket içi sisteminizdeki kullanıcıyla eşleşen userName, displayName ve externalId değerlerini belirtin.

      Örnek istek:

      curl --location --request POST 'https://scim.alibabacloud.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****"
      }'

      Örnek yanıt:

      {
          "displayName": "j2gg0s_****",
          "meta": {
              "created": "2020-02-14T03:58:59Z",
              "location": "https://scim.alibabacloud.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****"
      }
    • Belirli bir RAM kullanıcısını sorgulayın.

      • Bir RAM kullanıcısını id ile sorgulamak için GET /Users/{id} kullanın.

      • Bir RAM kullanıcısını externalId ile sorgulamak için GET /Users?filter=externalId eq xxx kullanın.

      • Bir RAM kullanıcısını userName ile sorgulamak için GET /Users?filter=userName eq xxx kullanın.

        Örnek istek:

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

        Örnek yanıt:

        {
            "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.alibabacloud.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****"
                }
            ]
        }
        Not

        SCIM filtreleri için Alibaba Cloud yalnızca id, userName ve externalId nitelikleri üzerinde and ve eq işlemlerini destekler.

    • RAM kullanıcı niteliklerini güncelleyin.

      Örnek istek:

      curl --location --request PUT 'https://scim.alibabacloud.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****"
      }'

      Örnek yanıt:

      {
          "displayName": "j2gg0s_new_****",
          "meta": {
              "created": "2020-02-14T03:58:59Z",
              "location": "https://scim.alibabacloud.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****"}
    • Bir RAM kullanıcısını silin.

      Örnek istek:

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

      HTTP 204 durum kodu başarılı bir silme işlemini onaylar.

      Not

      Alibaba Cloud yumuşak silmeyi (soft delete) desteklemez. Verileri senkronize etmeden önce tüm yumuşak silme işlemlerini kalıcı silmeye (hard delete) eşleştirin.