全部产品
Search
文档中心

Resource Access Management:Respons SAML untuk Single Sign-On (SSO) berbasis pengguna

更新时间:Jun 27, 2025

Topik ini menjelaskan sintaks respons Security Assertion Markup Language (SAML) untuk Single Sign-On (SSO) berbasis pengguna dan elemen-elemen dalam asersi SAML yang terkandung dalam respons tersebut.

Informasi latar belakang

Selama proses SSO berbasis SAML 2.0, setelah identitas pengguna diverifikasi, penyedia identitas (IdP) menghasilkan respons otentikasi dan mengirimkannya ke Alibaba Cloud melalui browser atau program. Respons ini mencakup asersi SAML yang sesuai dengan spesifikasi pengikatan HTTP POST dalam SAML 2.0. Alibaba Cloud menggunakan asersi SAML untuk menentukan status login dan identitas pengguna. Oleh karena itu, asersi SAML harus memuat elemen-elemen yang diperlukan oleh Alibaba Cloud. Jika elemen-elemen tersebut tidak ada, SSO akan gagal.

Respons SAML

Pastikan bahwa setiap respons SAML yang dikirim oleh IdP Anda ke Alibaba Cloud memuat elemen-elemen berikut. Jika tidak, SSO akan gagal.

<saml2p:Response>
    <saml2:Issuer>...</saml2:Issuer>
    <saml2p:Status>
        ...
    </saml2p:Status>
    <saml2:Assertion>
        <saml2:Issuer>...</saml2:Issuer>
        <ds:Signature>
            ...
        </ds:Signature>
        <saml2:Subject>
            <saml2:NameID>${NameID}</saml2:NameID>
            <saml2:SubjectConfirmation>
                ...
            </saml2:SubjectConfirmation>
        </saml2:Subject>
        <saml2:Conditions>
            <saml2:AudienceRestriction>
                <saml2:Audience>${Audience}</saml2:Audience>
            </saml2:AudienceRestriction>
        </saml2:Conditions>
        <saml2:AuthnStatement>
            ...
        </saml2:AuthnStatement>
    </saml2:Assertion>
</saml2p:Response>

Elemen dalam asersi SAML

  • Common elements in SAML 2.0

    Untuk informasi lebih lanjut tentang SAML 2.0, lihat SAML 2.0.

    Elemen

    Deskripsi

    Issuer

    Nilai elemen Issuer harus cocok dengan EntityID dalam file metadata yang Anda unggah untuk IdP di Konsol Manajemen Alibaba Cloud.

    Signature

    Asersi SAML harus ditandatangani. Elemen Signature harus berisi informasi seperti nilai tanda tangan dan algoritma tanda tangan. Tanda tangan digunakan untuk memastikan bahwa asersi SAML yang telah ditandatangani tidak dimodifikasi setelah tanda tangan dibuat.

    Subject

    Elemen Subject harus berisi sub-elemen berikut:

    • Hanya satu sub-elemen NameID. Sub-elemen ini digunakan untuk mengidentifikasi pengguna RAM dalam akun Alibaba Cloud Anda. Untuk informasi lebih lanjut, lihat deskripsi dan contoh NameID dalam topik ini.

    • Hanya satu sub-elemen SubjectConfirmation yang berisi sub-elemen SubjectConfirmationData. Sub-elemen SubjectConfirmationData harus berisi atribut berikut:

      • NotOnOrAfter: periode validitas asersi SAML.

      • Recipient: penerima asersi SAML. Alibaba Cloud memeriksa penerima asersi SAML berdasarkan nilai atribut ini. Oleh karena itu, Anda harus mengatur atribut ini menjadi https://signin-intl.aliyun.com/saml/SSO.

      Skrip berikut memberikan contoh elemen Subject:

      <Subject>
        <NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent">Alice@example.onaliyun.com</NameID>        
        <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">   
          <SubjectConfirmationData NotOnOrAfter="2019-01-01T00:01:00.000Z" Recipient="https://signin-intl.aliyun.com/saml/SSO"/>    
        </SubjectConfirmation>
      </Subject>

    Conditions

    Elemen Conditions harus berisi sub-elemen AudienceRestriction. Sub-elemen AudienceRestriction dapat berisi satu atau lebih sub-elemen Audience. Nilai sub-elemen Audience harus https://signin-intl.aliyun.com/${accountId}/saml/SSO. ${accountId} menentukan ID akun Alibaba Cloud.

    Skrip berikut memberikan contoh elemen Conditions:

    <Conditions>
      <AudienceRestriction>
        <Audience>https://signin-intl.aliyun.com/${accountId}/saml/SSO</Audience>
      </AudienceRestriction>
    </Conditions>           
  • NameID element

    Alibaba Cloud menggunakan User Principal Name (UPN) untuk menemukan pengguna RAM. Oleh karena itu, asersi SAML yang dihasilkan oleh IdP Anda harus memuat UPN dari pengguna RAM. Untuk menerapkan SSO berbasis pengguna, Alibaba Cloud menyelesaikan elemen NameID dalam asersi SAML dan memetakan elemen ini ke UPN pengguna RAM yang sesuai.

    Ketika mengonfigurasi asersi SAML yang dikeluarkan oleh IdP Anda, Anda harus memetakan UPN pengguna RAM ke elemen NameID dalam asersi SAML.

    Nilai elemen NameID harus mencakup salah satu akhiran berikut:

    • domain alias akun Alibaba Cloud Anda: <username>@<domain_alias>. <username> menentukan nama pengguna pengguna RAM. <domain_alias> menentukan alias domain. Untuk informasi lebih lanjut tentang cara mengonfigurasi alias domain, lihat Buat dan verifikasi alias domain.

    • auxiliary domain name: <username>@<auxiliary_domain>. <username> menentukan nama pengguna pengguna RAM. <auxiliary_domain> menentukan nama domain tambahan. Untuk informasi tentang cara mengonfigurasi nama domain tambahan, lihat Konfigurasikan pengaturan SAML Alibaba Cloud untuk SSO berbasis peran.

      Catatan

      Jika Anda mengonfigurasi alias domain dan nama domain tambahan, nilai elemen NameID akan memiliki akhiran alias domain.

    • default domain name akun Alibaba Cloud Anda: <username>@<default_domain>. <username> menentukan nama pengguna pengguna RAM. <default_domain> menentukan nama domain default. Untuk informasi lebih lanjut tentang cara mengonfigurasi nama domain default, lihat Lihat dan modifikasi nama domain default.

      Catatan

      Anda dapat menggunakan nama domain default akun Alibaba Cloud Anda sebagai akhiran elemen NameID meskipun Anda telah mengonfigurasi alias domain atau nama domain tambahan.

  • NameID example

    Dalam contoh ini, pengguna RAM bernama Alice dibuat untuk akun Alibaba Cloud Anda dan nama domain default akun Alibaba Cloud Anda adalah example.onaliyun.com.

    • Jika Anda mengatur alias domain akun Alibaba Cloud Anda menjadi example.com, nilai elemen NameID dalam asersi SAML adalah Alice@example.onaliyun.com atau Alice@example.com.

    • Jika Anda telah mengatur nama domain tambahan menjadi example.net dan tidak ada alias domain yang dikonfigurasi, nilai elemen NameID dalam asersi SAML adalah Alice@example.onaliyun.com atau Alice@example.net.

    • Jika Anda mengatur alias domain akun Alibaba Cloud Anda menjadi example.com dan nama domain tambahan menjadi example.net, nilai elemen NameID dalam asersi SAML adalah Alice@example.onaliyun.com atau Alice@example.com. Nama domain tambahan tidak dapat digunakan.

Referensi

Bagaimana cara melihat respons SAML di Google Chrome?