Liberty 中配置「OpenID 依賴方」

您可以將 Liberty 伺服器配置成當作「OpenID 依賴方」,以充分利用 Web 單一登入。

開始之前

您必須至少有一個授信的「OpenID 提供者 (OP)」,以用來鑑別使用者。已有一些協力廠商「OpenID 提供者」可用。

關於這項作業

您可以在 Liberty 中啟用 openid-2.0 特性,外加其他的選用配置資訊,讓使用者接受「OpenID 提供者」的鑑別。

程序

  1. openid-2.0 Liberty 特性新增至 server.xml 檔。server.xml 檔中,將下列元素宣告新增到 featureManager 元素內:
    <feature>openid-2.0</feature>
  2. <openId> 元素所指定的「OpenID 依賴方」配置選項,來更新 server.xml 檔。

    如需 <openId> 元素的配置選項說明,請參閱 OpenID

    您可以在 server.xml 檔中,使用 <openId> 元素的 providerIdentifier 屬性,來預先定義 OpenID 提供者的 URL,或者您可以用 FormLogin 來包裝您的應用程式,FormLogin 讓使用者可選擇提交 OpenID 提供者 URL 作為鑑別用。

    如果在 server.xml 檔中新增 providerIdentifier 屬性,Liberty 伺服器會自動將使用者重新導向至該屬性指定的 OpenID 提供者。如果未在 server.xml 檔中定義 providerIdentifier 屬性,Liberty 伺服器會先傳送登入表單,要求使用者選取或確認 OpenID 提供者,然後再將使用者重新導向至該 OpenID 提供者。

    以下是範例 OpenID 配置,其中定義了一個 OpenID 提供者:

    <openId id="myOpenId" providerIdentifier="https://openid.acme.com/op" userInfoRef="email">
      <userInfo id="email" alias="email" uriType="http://axschema.org/contact/email" count="1" required="true" />
    </openId>

    新增 openid-2.0 特性時,會自動施行最基本的特定配置。因此,不需在 server.xml 檔中明確指定 <openId> 元素。如果沒有指定 <openId> 元素,以下是隱含的配置:

    <openId id="myOpenId" userInfoRef="email">
      <userInfo id="email" alias="email" uriType="http://axschema.org/contact/email" count="1" required="true" />
    </openId>

    依預設,在主張身分和建立主體時,會使用「OpenID 提供者」傳回的使用者電子郵件位址。

  3. 配置伺服器的信任儲存庫,以包含支援的「OpenID 提供者」簽章者憑證。如需金鑰儲存庫的相關資訊,請參閱在 Liberty 中啟用 SSL 通訊
    1. 從「OpenID 提供者」擷取簽章者憑證。大部分主要的 Web 瀏覽器都支援透過瀏覽器介面,從網站擷取或匯出憑證。
    2. 將「OpenID 提供者」的憑證匯入至伺服器的信任儲存庫。如需取得用來將憑證匯入至信任儲存庫的方法,請參閱 keytool 公用程式的 -import 旗標功能,這個公用程式可在您的 Java™ 安裝目錄中找到。
    3. 使用 <openId> 元素的 sslRef 屬性,以指向您的 SSL 配置。如果沒有指定 sslRef 屬性,會使用前述金鑰儲存庫頁面中所說明的預設 SSL 配置。您的 SSL 配置必須包含適當的參照,並且指向含有所匯入之「OpenID 提供者」憑證的信任儲存庫。
  4. 選用:配置「鑑別過濾器」。

    如果您在 server.xml 檔中的 openId 元素內,配置了 providerIdentifier 屬性,您可以配置 authFilterRef,來限制 providerIdentifier 屬性所定義之 OpenID 提供者應該截取的要求。

    如需配置鑑別過濾器的相關資訊,請參閱鑑別過濾器


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

檔名:twlp_config_rp_openid.html