全部产品
Search
文档中心

Identity as a Service:Aturan untuk mengonfigurasi Pernyataan Atribut SAML

更新时间:Jul 02, 2025

Topik ini menjelaskan aturan untuk mengonfigurasi Pernyataan Atribut Security Assertion Markup Language (SAML) serta menyediakan contoh konfigurasi.

SAML value deskripsi

Tipe

Nilai

Deskripsi

Variabel

user.username

Nama pengguna.

user.displayName

Nama tampilan.

user.phone (kedaluwarsa)

Nomor telepon seluler yang tidak termasuk kode negara dan telah kedaluwarsa.

user.phoneNumber

Nomor telepon seluler yang tidak termasuk kode negara.

user.email

Alamat email.

user.status

Status pengguna. Nilai valid:

  • enabled

  • disabled

user.primaryOrganizationalUnitId

ID organisasi utama tempat pengguna tersebut bernaung.

ObjectToJsonString(user.organizationalUnits)

Informasi tentang organisasi tempat pengguna tersebut bernaung.

Nilainya adalah string array JSON.

ArrayJoin(ArrayMap(user.organizationalUnits, __item.organizationalUnitId), ",")

ID organisasi tempat pengguna tersebut bernaung.

Nilainya adalah string array JSON.

ObjectToJsonString(user.groups)

Informasi tentang grup tempat akun tersebut bernaung.

Nilainya adalah string array JSON.

ArrayJoin(ArrayMap(user.groups, __item.groupId), ",")

ID grup tempat akun tersebut bernaung.

Nilainya adalah string array JSON.

ArrayJoin(ArrayMap(user.groups, __item.groupExternalId), ",")

ID eksternal grup tempat akun tersebut bernaung.

Nilainya adalah string array JSON.

ObjectToJsonString(user.customFields)

Informasi tentang semua bidang tambahan.

Nilainya adalah string array JSON.

user.customFieldMap.$fieldname$.fieldValue

Nilai dari sebuah bidang tambahan.

appUser.username

Akun aplikasi.

Konstanta

Kurunglah konstanta dengan tanda kutip ganda ("").

Ekspresi

Fitur lanjutan. Anda dapat secara fleksibel menggabungkan dan mengubah nilai menggunakan ekspresi.

Untuk informasi lebih lanjut, lihat Ekspresi lanjutan untuk bidang akun.

Contoh Ekspresi SAML

Contoh: objek pengguna

{
  ...
  "customFieldMap": {
        "place": {
            "fieldName": "place",
            "fieldValue": "beijing"
        },
        "age": {
            "fieldName": "age",
            "fieldValue": "18"
        }
    },
    "identityProviderUserMap": {
        "idp_m2gngriuenktdkxxxxxx": {
            "identityProviderId": "idp_m2gngriuenktdkxxxxxx",
            "identityProviderType": "ding_talk",
            "identityProviderExternalId": "corp_1234xxxxxxx",
            "identityProviderUserId": "b2ed5fc0xxxxx"
        }
    },
    "organizationalUnits": [
        {
            "organizationalUnitId": "ou_sdfadtaaxxxxxx",
            "organizationalUnitName": "AD",
            "primary": false
        },
        {
            "organizationalUnitId": "ou_werttxxxxxx",
            "organizationalUnitName": "name_002",
            "primary": true
        }
    ],
    "primaryOrganizationalUnitId": "ou_werttxxxxxx",
    "customFields": [
        {
            "fieldName": "place",
            "fieldValue": "beijing"
        },
        {
            "fieldName": "age",
            "fieldValue": "18"
        }
    ],
    "groups": [
        {
            "groupId": "group_jp6al4sn4n4wjgjxxxxxx",
            "groupName": "group1",
            "groupExternalId": "group_jp6al4sn4n4wjgjxxxxxx"
        },
        {
            "groupId": "group_vavikcxewkf5h3oxxxxxx",
            "groupName": "group2",
            "groupExternalId": "group_vavikcxewkf5h3oxxxxxx"
        }
    ],
  ...
}

Contoh Konfigurasi Antarmuka SAML

image

Contoh Hasil Penguraian SAML

  1. Berikut adalah respons SAML yang dikembalikan setelah bidang organizationalUnits dalam Pernyataan Atribut diurai menggunakan ekspresi ObjectToJsonString(user.organizationalUnits).

    <saml2:Attribute Name="organizationalUnits" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">
        [{"organizationalUnitId":"ou_sdfadtaaxxxxxx","organizationalUnitName":"AD","primary":false},{"organizationalUnitId":"ou_werttxxxxxx","organizationalUnitName":"name_002","primary":true}]
      </saml2:AttributeValue>
    </saml2:Attribute>
  2. Berikut adalah respons SAML yang dikembalikan setelah bidang organizationalUnitIds dalam Pernyataan Atribut diurai menggunakan ekspresi ArrayJoin(ArrayMap(user.organizationalUnits, __item.organizationalUnitId), ",").

    <saml2:Attribute Name="organizationalUnitIds" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">
        ou_sdfadtaaxxxxxx,ou_werttxxxxxx
      </saml2:AttributeValue>
    </saml2:Attribute>
  3. Berikut adalah respons SAML yang dikembalikan setelah bidang groups dalam Pernyataan Atribut diurai menggunakan ekspresi ObjectToJsonString(user.groups).

    <saml2:Attribute Name="groups" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">
        [{"groupId":"group_jp6al4sn4n4wjgjxxxxxx","groupName":"group1","groupExternalId":"group_jp6al4sn4n4wjgjxxxxxx"},{"groupId":"group_vavikcxewkf5h3oxxxxxx","groupName":"group2","groupExternalId":"group_vavikcxewkf5h3oxxxxxx"}]
      </saml2:AttributeValue>
    </saml2:Attribute>
  4. Berikut adalah respons SAML yang dikembalikan setelah bidang groupIds dalam Pernyataan Atribut diurai menggunakan ekspresi ArrayJoin(ArrayMap(user.groups, __item.groupId), ",").

    <saml2:Attribute Name="groupIds" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">
        group_jp6al4sn4n4wjgjxxxxxx,group_vavikcxewkf5h3oxxxxxx
      </saml2:AttributeValue>
    </saml2:Attribute>
  5. Berikut adalah respons SAML yang dikembalikan setelah bidang groupExternalIds dalam Pernyataan Atribut diurai menggunakan ekspresi ArrayJoin(ArrayMap(user.groups, __item.groupExternalId), ",").

    <saml2:Attribute Name="groupExternalIds" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">
        group_jp6al4sn4n4wjgjxxxxxx,group_vavikcxewkf5h3oxxxxxx
      </saml2:AttributeValue>
    </saml2:Attribute>
  6. Berikut adalah respons SAML yang dikembalikan setelah bidang grouIdArray dalam Pernyataan Atribut diurai menggunakan ekspresi SamlArray(ArrayMap(user.groups, __item.groupId)).

    <saml2:Attribute Name="grouIdArray" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:type="xsd:string">
        group_jp6al4sn4n4wjgjxxxxxx
      </saml2:AttributeValue>
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">
        group_vavikcxewkf5h3oxxxxxx
      </saml2:AttributeValue>
    </saml2:Attribute>
  7. Berikut adalah respons SAML yang dikembalikan setelah bidang customFields dalam Pernyataan Atribut diurai menggunakan ekspresi ObjectToJsonString(user.customFields).

    <saml2:Attribute Name="customFields" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:type="xsd:string">
        [{"fieldName":"place","fieldValue":"beijing"},{"fieldName":"age","fieldValue":"18"}]
      </saml2:AttributeValue>
    </saml2:Attribute>
  8. Berikut adalah respons SAML yang dikembalikan setelah bidang age dalam Pernyataan Atribut diurai menggunakan ekspresi user.customFieldMap.age.fieldValue.

    <saml2:Attribute Name="age" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">
        18
      </saml2:AttributeValue>
    </saml2:Attribute>