All Products
Search
Document Center

Resource Access Management:Contoh: Konfigurasikan role-based SSO dengan AD FS

Last Updated:May 28, 2026

Konfigurasikan role-based SSO antara AD FS (IdP) dan Alibaba Cloud (SP) menggunakan lingkungan AD FS yang di-deploy pada instans ECS Windows Server 2012 R2.

Informasi latar belakang

Perusahaan Anda menggunakan Active Directory (AD) untuk mengelola karyawan dan AD FS untuk melakukan federasi dengan aplikasi enterprise, termasuk Alibaba Cloud. Administrator AD mengontrol akses karyawan ke akun Alibaba Cloud melalui keanggotaan grup pengguna. Dalam contoh ini, perusahaan Anda memiliki dua akun Alibaba Cloud (Account1 dan Account2) dengan izin Admin dan Reader. Alice tergabung dalam grup AD Aliyun-<account-id>-ADFS-Admin dan Aliyun-<account-id>-ADFS-Reader, dan tujuannya adalah mengaktifkan role-based SSO baginya ke kedua akun tersebut.

Catatan
  • <account-id> adalah ID dari Account1 atau Account2. Alice tergabung dalam total empat grup AD: Admin dan Reader untuk masing-masing akun.

  • Konfigurasi AD dalam topik ini hanya bersifat panduan. Alibaba Cloud tidak menyediakan dukungan untuk konfigurasi Microsoft AD. Untuk menyiapkan AD FS, Bangun domain AD pada instans Windows.

Cara kerja

Gambar berikut menunjukkan alur login melalui konsol.

Basic SSO flow

Setelah federasi dikonfigurasi, karyawan seperti Alice dapat login ke konsol Alibaba Cloud melalui SSO. Ikhtisar SSO berbasis peran menggunakan SAML.

Pengguna melakukan autentikasi melalui sistem identitas perusahaan tanpa memerlukan kredensial Alibaba Cloud.

Langkah 1: Konfigurasikan Alibaba Cloud agar mempercayai AD FS

  1. Di Konsol RAM, buat penyedia identitas (IdP) bernama ADFS dan unggah metadata-nya. URL metadata AD FS adalah https://<ADFS-server>/federationmetadata/2007-06/federationmetadata.xml.

    Catatan

    Ganti <ADFS-server> dengan nama domain atau alamat IP server AD FS Anda.

    Konfigurasikan pengaturan SAML untuk role-based SSO di SP Alibaba Cloud.

    Catatan

    Jika ukuran file metadata melebihi batas, Anda dapat mengurangi ukurannya dengan menghapus seluruh konten di dalam tag <fed:ClaimTypesRequested> dan <fed:ClaimTypesOffered>.

  2. Di akun Alibaba Cloud Account1, buat dua role RAM (ADFS-Admin dan ADFS-Reader) yang mempercayai IdP tersebut. Pilih IdP ADFS yang baru saja Anda buat, lalu berikan kebijakan AdministratorAccess dan ReadOnlyAccess ke masing-masing role tersebut.

  3. Ulangi proses ini di Account2 untuk membuat IdP dan role RAM dengan nama yang sama (ADFS, ADFS-Admin, dan ADFS-Reader). Berikan kebijakan AdministratorAccess dan ReadOnlyAccess ke masing-masing role tersebut.

Catatan

Setelah konfigurasi ini, akun Alibaba Cloud Anda mempercayai informasi identitas pengguna dan peran dalam permintaan SAML dari AD FS.

Langkah 2: Konfigurasikan AD FS agar mempercayai Alibaba Cloud

Di AD FS, SP SAML disebut relying party. Siapkan Alibaba Cloud sebagai relying party di AD FS:

  1. Di Server Manager, klik menu Tools dan pilih AD FS Management.

  2. Di konsol AD FS Management, jalankan wizard Add Relying Party Trust.

    Di halaman Welcome, pilih claims-aware dan klik Start.

  3. Berikan metadata SP SAML untuk role-based SSO Alibaba Cloud. URL metadata-nya adalah https://signin.alibabacloud.com/saml-role/sp-metadata.xml.

    Di halaman Select Data Source, pilih Import data about the relying party published online or on a local network. Di kotak teks Federation metadata address (host name or URL), masukkan URL metadata dan klik Next.

  4. Selesaikan wizard dengan pengaturan default.

Langkah 3: Konfigurasikan atribut pernyataan SAML

AD FS harus menyertakan atribut NameID, Role, dan RoleSessionName dalam pernyataan SAML. Konfigurasikan atribut-atribut ini dengan aturan penerbitan transformasi.

  • NameID

    Petakan nama akun Windows di AD ke atribut NameID:

    1. Klik kanan relying party dan pilih Edit Claim Rules.

    2. Tambahkan issuance transform rule.

      Catatan

      Aturan penerbitan transformasi memetakan atribut pengguna ke atribut pernyataan SAML. Tambahkan aturan untuk menerbitkan nama akun Windows AD sebagai NameID.

    3. Untuk Claim rule template, pilih Transform an Incoming Claim, lalu klik Next.

    4. Konfigurasikan aturan dengan pengaturan berikut dan klik Finish.

      • Claim rule name: NameID

      • Incoming claim type: Windows account name

      • Outgoing claim type: Name ID

      • Outgoing name ID format: Persistent Identifier

      • Pilih Pass through all claim values.

      Setelah konfigurasi selesai, AD FS mengirimkan NameID dalam format yang diperlukan:

      <NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent">
          YourDomain\rolessouser
      </NameID>
  • RoleSessionName

    Petakan User Principal Name (UPN) di AD ke atribut RoleSessionName:

    1. Klik Add Rule.

    2. Dari daftar Claim rule template, pilih Send LDAP Attributes as Claims, lalu klik Next.

    3. Konfigurasikan aturan dengan pengaturan berikut dan klik Finish.

      • Claim rule name: RoleSessionName

      • Attribute store: Active Directory

      • Untuk User-Principal-Name, pilih User-Principal-Name. Anda juga dapat memilih atribut lain, seperti email, sesuai kebutuhan.

      • Untuk Outgoing claim type, masukkan https://www.aliyun.com/SAML-Role/Attributes/RoleSessionName.

    Setelah konfigurasi selesai, AD FS mengirimkan RoleSessionName dalam format yang diperlukan:

    <Attribute Name="https://www.aliyun.com/SAML-Role/Attributes/RoleSessionName">
        <AttributeValue>rolessouser@example.com<AttributeValue>
    </Attribute>
  • Role

    Ubah keanggotaan grup AD menjadi nama role Alibaba Cloud menggunakan aturan kustom:

    1. Klik Add Rule.

    2. Dari daftar Claim rule template, pilih Send Claims Using a Custom Rule, lalu klik Next.

    3. Konfigurasikan aturan dengan pengaturan berikut dan klik Finish.

      • Claim rule name: Get AD Groups

      • Custom rule:

        c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"] => add(store = "Active Directory",types = ("http://temp/variable"), query = ";tokenGroups;{0}", param =c.Value);
      Catatan

      Aturan ini mengambil keanggotaan grup AD dan menyimpannya di http://temp/variable.

    4. Klik Add Rule.

    5. Ulangi langkah-langkah sebelumnya untuk menambahkan aturan kustom lain, lalu klik Finish.

      • Claim rule name: Role

      • Custom rule:

        c:[Type == "http://temp/variable", Value =~ "(?i)^Aliyun-([\d]+)"] => issue(Type = "https://www.aliyun.com/SAML-Role/Attributes/Role",Value = RegExReplace(c.Value, "Aliyun-([\d]+)-(.+)", "acs:ram::$1:role/$2,acs:ram::$1:saml-provider/<provider-name>"));
        Catatan

        Ganti <provider-name> dengan nama penyedia identitas yang Anda buat di Langkah 1: Konfigurasikan Alibaba Cloud agar mempercayai AD FS sebagai SAML IdP. Dalam contoh ini, namanya adalah ADFS.

      Aturan ini memetakan grup AD yang cocok dengan pola Aliyun-<account-id>-ADFS-Admin atau Aliyun-<account-id>-ADFS-Reader ke role RAM yang sesuai di Alibaba Cloud.

    Setelah konfigurasi selesai, IdP mengembalikan pernyataan SAML dalam format yang diperlukan:

    <Attribute Name="https://www.aliyun.com/SAML-Role/Attributes/Role">
        <AttributeValue>acs:ram::<account-id>:role/ADFS-Admin,acs:ram::<account-id>:saml-provider/<provider-name></AttributeValue>
    </Attribute>

Verifikasi hasil

  1. Buka portal SSO AD FS di https://<ADFS-server>/adfs/ls/IdpInitiatedSignOn.aspx, pilih aplikasi Alibaba Cloud, lalu masukkan username dan password Anda.

    Catatan

    Ganti <ADFS-server> dengan nama domain atau alamat IP server AD FS Anda. Jika halaman web tidak tersedia, aktifkan dengan menjalankan perintah PowerShell berikut: Set-AdfsProperties -EnableIdpInitiatedSignonPage $True.

    Di halaman login AD FS, Anda melihat pesan "You are not signed in" dengan dua opsi: Sign in to this site dan Sign in to one of the following sites. Pilih Sign in to one of the following sites, pilih situs target seperti Aliyun dari daftar drop-down, lalu klik Sign in.

  2. Di halaman role-based SSO Alibaba Cloud, pilih role yang akan di-assume dan klik Log On.

    Catatan

    Jika Anda hanya tergabung dalam satu grup AD yang dipetakan, Anda langsung login tanpa memilih role.

    Jika Anda tergabung dalam beberapa grup AD yang dipetakan, halaman pemilihan role akan menampilkan daftar akun dan role Alibaba Cloud yang tersedia (ADFS-Reader, ADFS-Admin). Pilih akun dan role target, lalu klik Log On.