全部产品
Search
文档中心

Resource Access Management:Implementasi SSO Berbasis Peran dari AD FS

更新时间:Jun 27, 2025

Topik ini menjelaskan cara mengimplementasikan single sign-on (SSO) berbasis peran dari Active Directory Federation Services (AD FS) ke Alibaba Cloud. Dalam contoh ini, AD FS diimplementasikan pada instance Elastic Compute Service (ECS) yang menjalankan Windows Server 2012 R2. AD FS bertindak sebagai penyedia identitas (IdP), dan Alibaba Cloud sebagai penyedia layanan (SP).

Informasi Latar Belakang

Sebuah perusahaan menggunakan Active Directory (AD) untuk mengelola pengguna dan AD FS untuk mengonfigurasi aplikasi perusahaan seperti Alibaba Cloud. Setelah SSO berbasis peran dikonfigurasi, administrator AD dapat mengontrol akses pengguna ke sumber daya akun Alibaba Cloud berdasarkan grup pengguna. Dalam contoh ini, perusahaan memiliki dua akun Alibaba Cloud, Akun 1 dan Akun 2, serta dua grup pengguna AD, Aliyun-<account-id>-ADFS-Admin dan Aliyun-<account-id>-ADFS-Reader. Pengguna bernama Alice termasuk dalam kedua grup tersebut. Perusahaan ingin mengimplementasikan SSO berbasis peran dari AD FS ke Akun 1 dan Akun 2.

Catatan
  • <account-id> menunjukkan ID dari Akun 1 atau Akun 2. Oleh karena itu, pengguna Alice termasuk dalam empat grup pengguna. Grup dengan nama yang mengandung Admin memiliki izin Admin pada Akun 1 atau Akun 2. Grup dengan nama yang mengandung Reader memiliki izin Reader pada Akun 1 atau Akun 2.

  • Konfigurasi Microsoft AD yang dijelaskan dalam topik ini hanya untuk referensi dan membantu Anda memahami prosedur konfigurasi log masuk SSO ke Alibaba Cloud. Alibaba Cloud tidak menyediakan layanan konsultasi untuk konfigurasi Microsoft AD. Untuk informasi lebih lanjut, lihat Membangun domain AD pada instance Windows.

Proses

Gambar berikut menunjukkan proses SSO berbasis peran.

Proses Dasar

Setelah administrator AD menyelesaikan konfigurasi SSO berbasis peran, pengguna Alice dapat masuk ke Konsol Manajemen Alibaba Cloud sesuai proses yang ditunjukkan pada gambar. Untuk informasi lebih lanjut, lihat Ikhtisar.

Proses ini menunjukkan bahwa pengguna dapat diautentikasi tanpa perlu memberikan nama pengguna atau kata sandi Alibaba Cloud selama proses masuk.

Langkah 1: Konfigurasikan AD FS sebagai IdP SAML tepercaya di Alibaba Cloud

  1. Masuk ke Konsol Resource Access Management (RAM) Alibaba Cloud. Buat IdP bernama ADFS dan unggah file metadata. Anda dapat memperoleh file metadata AD FS dari https://<ADFS-server>/federationmetadata/2007-06/federationmetadata.xml.

    Catatan

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

    Untuk informasi lebih lanjut, lihat Konfigurasikan pengaturan SAML Alibaba Cloud untuk SSO berbasis peran.

    Catatan

    Jika ukuran file metadata IdP melebihi batas atas, Anda dapat menghapus konten di bagian <fed:ClaimTypesRequested> dan <fed:ClaimTypesOffered>.

  2. Buat dua Peran RAM bernama ADFS-Admin dan ADFS-Reader untuk Akun 1. Saat membuat Peran RAM, pilih IdP sebagai jenis entitas tepercaya dan ADFS sebagai IdP tepercaya. Kemudian, lampirkan kebijakan AdministratorAccess ke peran ADFS-Admin dan kebijakan ReadOnlyAccess ke peran ADFS-Reader.

    Untuk informasi lebih lanjut, lihat Buat Peran RAM untuk IdP tepercaya.

  3. Ulangi langkah-langkah sebelumnya untuk membuat IdP yang sama dan dua Peran RAM untuk Akun 2. Kemudian, lampirkan kebijakan AdministratorAccess ke peran ADFS-Admin dan kebijakan ReadOnlyAccess ke peran ADFS-Reader.

Catatan

Setelah Anda menyelesaikan konfigurasi, Akun 1 dan Akun 2 mempercayai informasi tentang identitas pengguna dan peran. Informasi tersebut disertakan dalam permintaan Security Assertions Markup Language (SAML) yang dikirim dari server AD FS Anda.

Langkah 2: Konfigurasikan Alibaba Cloud sebagai SP SAML tepercaya di AD FS

Di AD FS, SP SAML adalah relying party. Untuk mengonfigurasi Alibaba Cloud sebagai SP SAML tepercaya di AD FS, lakukan langkah-langkah berikut:

  1. Di bilah navigasi atas Server Manager, pilih Tools > AD FS Management.

  2. Klik kanan Relying Parties dan pilih Add Relying Party Trust.

    Tambahkan Kepercayaan Pihak yang Bergantung

  3. Konfigurasikan file metadata SP SAML Alibaba Cloud untuk pihak yang bergantung. Anda dapat memperoleh file metadata dari URL berikut: https://signin.alibabacloud.com/saml-role/sp-metadata.xml.

    Pilih Sumber Data

  4. Selesaikan panduan sesuai petunjuk.

Langkah 3: Konfigurasikan atribut asersi SAML untuk SP Alibaba Cloud

Aseri SAML yang dikeluarkan oleh AD FS harus berisi atribut NameID, Role, dan RoleSessionName. AD FS menyediakan atribut-atribut ini menggunakan aturan transformasi penerbitan.

  • NameID

    Lakukan langkah-langkah berikut untuk menetapkan atribut NameID dalam asersi SAML ke nama akun Windows pengguna di AD:

    1. Klik kanan nama tampilan pihak yang bergantung dan pilih Edit Claim Issuance Policy.

    2. Klik Issuance Transform Rules untuk menambahkan aturan.

      Catatan

      Aturan transformasi penerbitan menunjukkan cara mentransformasi atribut pengguna yang diketahui dan menerbitkannya sebagai atribut dalam asersi SAML. Jika Anda ingin menerbitkan nama akun Windows pengguna di AD sebagai NameID, Anda harus membuat aturan transformasi penerbitan.

    3. Tetapkan Claim rule template ke Transform an Incoming Claim. Transformasi Klaim Masuk

    4. Konfigurasikan parameter berikut dan klik Finish.

      • Tetapkan Claim rule name ke NameID.

      • Tetapkan Incoming claim type ke Windows account name.

      • Tetapkan Outgoing claim type ke Name ID.

      • Tetapkan Outgoing name ID format ke Persistent Identifier.

      • Pilih Pass through all claim values.

      Konfigurasi Aturan

      Setelah Anda menyelesaikan konfigurasi, AD FS mengirimkan atribut NameID dalam format yang diminta oleh Alibaba Cloud. Kode berikut menunjukkan contohnya:

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

    Lakukan langkah-langkah berikut untuk menetapkan atribut RoleSessionName dalam asersi SAML ke User Principal Name (UPN) pengguna di AD:

    1. Di kotak dialog Issuance Transform Rules, klik Add Rule.

    2. Tetapkan Claim rule template ke Send LDAP Attributes as Claims. Pilih Template Aturan

    3. Konfigurasikan parameter berikut dan klik Finish.

      • Tetapkan Claim rule name ke RoleSessionName.

      • Tetapkan Attribute store ke Active Directory.

      • Pilih User-Principal-Name di kolom LDAP Attribute. Anda juga dapat menggunakan opsi lain, seperti Email, berdasarkan kebutuhan bisnis Anda.

      • Masukkan https://www.aliyun.com/SAML-Role/Attributes/RoleSessionName di kolom Outgoing Claim Type.

      Konfigurasi Aturan

    Setelah Anda menyelesaikan konfigurasi, AD FS mengirimkan atribut RoleSessionName dalam format yang diminta oleh Alibaba Cloud. Kode berikut menunjukkan contohnya:

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

    Lakukan langkah-langkah berikut untuk mengonfigurasi atribut kustom dan menetapkan nilainya ke nama Peran RAM Alibaba Cloud yang terkait dengan grup AD pengguna:

    1. Di kotak dialog Issuance Transform Rules, klik Add Rule.

    2. Tetapkan Claim rule template ke Send Claims Using a Custom Rule dan klik Next. Gunakan Aturan Kustom untuk Mengirim Klaim

    3. Konfigurasikan parameter berikut dan klik Finish.

      • Tetapkan Claim rule name ke Get AD Groups.

      • Di bidang Custom rule, masukkan informasi yang diperlukan. Tetapkan parameter ini berdasarkan contoh berikut:

        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);

      Aturan Kustom

      Catatan

      Aturan ini digunakan untuk mendapatkan grup AD tempat pengguna termasuk. Aturan ini disimpan dalam variabel antara http://temp/variable.

    4. Di kotak dialog Issuance Transform Rules, klik Add Rule.

    5. Ulangi langkah-langkah sebelumnya dan klik Finish.

      • Tetapkan Claim rule name ke Role.

      • Di bidang Custom rule, masukkan informasi yang diperlukan. Tetapkan parameter ini berdasarkan contoh berikut:

        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

        Tetapkan <provider-name> ke nama IdP yang dibuat di Langkah 1: Konfigurasikan AD FS sebagai IdP SAML tepercaya di Alibaba Cloud. Dalam contoh ini, tetapkan nama menjadi ADFS.

      Pilih Tipe Aturan

      Jika pengguna termasuk dalam grup Aliyun-<account-id>-ADFS-Admin atau Aliyun-<account-id>-ADFS-Reader, atribut SAML dihasilkan dan dipetakan ke peran ADFS-Admin atau ADFS-Reader di Alibaba Cloud berdasarkan aturan ini.

    Setelah Anda menyelesaikan konfigurasi, IdP Anda mengembalikan bagian yang diperlukan dari asersi SAML ke Alibaba Cloud. Kode berikut menunjukkan contohnya:

    <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 konfigurasi SSO berbasis peran

  1. Masuk ke portal AD FS untuk SSO di https://<ADFS-server>/adfs/ls/IdpInitiatedSignOn.aspx. Pilih aplikasi Alibaba Cloud dan masukkan nama pengguna dan kata sandi pengguna Anda.

    Catatan

    <ADFS-server> menunjukkan nama domain atau alamat IP server AD FS Anda. Jika URL tidak tersedia, jalankan perintah Set-AdfsProperties -EnableIdpInitiatedSignonPage $True di PowerShell.

    Verifikasi Konfigurasi

  2. Di halaman SSO Berbasis Peran Alibaba Cloud, pilih Peran RAM yang ingin Anda gunakan dan klik Log On.

    Catatan

    Jika pengguna Anda termasuk hanya dalam satu grup AD, pengguna tersebut sesuai dengan hanya satu Peran RAM di Alibaba Cloud. Dalam kasus ini, Anda dapat masuk ke Konsol Manajemen Alibaba Cloud tanpa perlu memilih Peran RAM.

    Halaman SSO Berbasis Peran Alibaba Cloud