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

    可使用 <openId> 元素的 providerIdentifier 属性在 server.xml 文件中预定义 OpenID 提供者 URL,也可使用 FormLogin 打包应用程序,这允许用户选择提交要用于认证的 OpenID 提供者 URL。

    如果已将 providerIdentifier 属性添加至 server.xml 文件,那么 Liberty 服务器会自动将用户重定向至该属性指定的 OpenID 提供者。如果未在 server.xml 文件中定义 providerIdentifier 属性,那么在将用户重定向至 OpenID 提供者之前,Liberty 服务器会先发送登录表单以要求用户选择或确认 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 浏览器支持通过浏览器界面从 Web 站点抽取或导出证书。
    2. 将 OpenID 提供程序证书导入至服务器的信任库。有关将证书导入至信任库的一种方法,请参阅 Java™ 安装目录中的 keytool 实用程序的 -import 标记功能。
    3. 使用 <openId> 元素的 sslRef 属性以指向 SSL 配置。如果未指定 sslRef 属性,那么将使用先前提到的密钥库页面中描述的缺省 SSL 配置。SSL 配置必须包含对信任库的相应引用,此信任库包含已导入的 OpenID 提供者证书。
  4. 可选:配置认证过滤器。

    如果在 server.xml 文件的 openId 元素内配置了 providerIdentifier 属性,那么您可配置 authFilterRef 以限制应被 providerIdentifier 属性定义的 OpenID 提供程序拦截的请求。

    有关配置认证过滤器的更多信息,请参阅认证过滤器


用于指示主题类型的图标 任务主题

文件名:twlp_config_rp_openid.html