配置 UserInfo 端點所傳回的聲明

您可以配置 Liberty 的「OpenID Connect 提供者」,以自訂 UserInfo 端點傳回的聲明。

關於這項作業

您可以在 server.xml 檔中,使用 openidConnectProvider 元素的 scopeToClaimMapclaimToUserRegistryMap 子元素,來配置 Liberty 伺服器的「OpenID Connect 提供者」傳回的聲明。

OpenID Connect UserInfo 端點會接受輸入形式的存取記號,並傳回建立存取記號之使用者的一組相關聲明。所傳回的聲明取決於:
  1. 存取記號中的範圍

    存取記號可以有多個範圍。存取記號中的範圍,是指在呼叫授權端點以建立存取記號時所提供的範圍。

  2. 與範圍相關聯的聲明

    每一個範圍可以有多項相關聯的聲明。

  3. 與聲明相關聯的聯合儲存庫內容

    一項聲明只能有一個相關聯的聯合儲存庫內容。

  4. 與聯合儲存庫內容相關聯的使用者登錄屬性

    一個聯合儲存庫內容只能有一個相關聯的使用者登錄屬性。

註: 唯一支援擷取 UserInfo 聲明的使用者登錄類型是 LDAP。

Liberty 會定義預設範圍、聲明、聯合登錄內容,以及預設對映。

表 1. 範圍、聲明和聯合登錄內容的預設對映
範圍 聲明 聯合登錄內容
設定檔 name, given_name, picture displayName, givenName, photoURL
email email mail
address address postalAddress
phone phone_number telephoneNumber

下列每一個步驟都是選用的。Liberty 伺服器會定義預設範圍、聲明、聯合登錄內容,以及預設對映。唯有在您想變更預設對映,或定義自訂範圍或聲明時,才需要執行下列任何步驟。

程序

  1. 配置範圍相關聯的聲明。範圍可以對映至多項聲明,多項聲明之間必須以逗點區隔。
    在下列範例中,範圍 CUSTOM_SCOPE1 有兩項相關聯的聲明,CUSTOM_CLAIM1language,而範圍 CUSTOM_SCOPE2 與聲明 CUSTOM_CLAIM2 相關聯。
    <scopeToClaimMap CUSTOM_SCOPE1="CUSTOM_CLAIM1, language"
                     CUSTOM_SCOPE2="CUSTOM_CLAIM2" />
    註: 聲明和範圍名稱有區分大小寫,CUSTOM_SCOPE1custom_scope1 是不同的範圍。
    1. 如果要定義拼字相同但大小寫不同的範圍,必須使用 property 子元素。在下列範例中,定義了範圍 CUSTOM_SCOPE1custom_scope1
      <scopeToClaimMap CUSTOM_SCOPE1="CUSTOM_CLAIM1, language" > 
          <property name="custom_scope1" value="custom_claim1,mobile"/> 
      </scopeToClaimMap>
  2. 配置與聲明相關聯的聯合儲存庫內容。一項聲明只能對映至一個聯合儲存庫內容。
    在下列範例中,聲明 CUSTOM_CLAIM1 與聯合儲存庫內容 departmentNumber 相關聯。聲明 language 與聯合儲存庫內容 preferredLanguage 相關聯,聲明 CUSTOM_CLAIM2 與聯合儲存庫內容 mail 相關聯。
    <claimToUserRegistryMap CUSTOM_CLAIM1="departmentNumber"
                            language="preferredLanguage"
                            CUSTOM_CLAIM2="mail" />
    1. 如果要定義拼字相同但大小寫不同的聲明,必須使用 property 子元素。在下列範例中,定義了 CUSTOM_CLAIM1custom_claim1 聲明。
      <claimToUserRegistryMap CUSTOM_CLAIM1="departmentNumber" >
          <property name="custom_claim1" value="employeeType" />
      </claimToUserRegistryMap>
  3. 配置聯合儲存庫內容相關聯的使用者登錄屬性。
    在下列範例中,聯合儲存庫內容 photoURL 與 LDAP 登錄屬性 ldapPersonPicture 相關聯
    <ldapRegistry...>
      ...
        	<attributeConfiguration>
            <attribute name="ldapPersonPicture" 
                       propertyName="photoURL" 
                       entityType="PersonAccount" />
        </attributeConfiguration>
       ...
    </ldapRegistry>
    註: 必須根據 LDAP 登錄綱目來定義 LDAP 屬性。

結果

現在您已完成配置,這是自訂 UserInfo 端點傳回的聲明所需要的。

指示主題類型的圖示 作業主題



「時間戳記」圖示 前次更新: 2016 年 11 月 30 日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-libcore-mp&topic=twlp_config_scopes_claims_userinfo
檔名:twlp_config_scopes_claims_userinfo.html