Liberty Repository[8.5.5.4 或更高版本]

在 Liberty 概要文件中配置 OpenID Connect 提供者

可配置 Liberty 概要文件服务器以充当 OpenID Connect 提供者或授权服务器以使用 Web 单点登录。

关于此任务

通过启用 Liberty 概要文件的 openidConnectServer-1.0 功能部件并配置其他配置信息,可配置 Liberty 概要文件服务器以充当 OpenID Connect 提供者。

过程

  1. openidConnectServer-1.0 Liberty 功能部件及任何其他所需功能部件添加至 server.xml 文件。对于 openidConnectServer-1.0 功能部件,还需要 ssl-1.0 功能部件。
    <feature>openidConnectServer-1.0</feature>
    <feature>ssl-1.0</feature>
  2. 定义 OAuth 服务提供者。OpenID Connect 是在 OAuth 2.0 协议基础上构建的,您必须配置有效 OAuth 服务提供者。OAuth 服务提供者的配置包含相应 oauth-rolesoauthProvider 和用户注册表元素。被授权使用 OpenID Connect 的任何用户还必须映射至 authenticated oauth-role。有关更多信息,请参阅定义 OAuth 服务提供者

    系统将针对 OpenID Connect 更新 OAuth 元数据,并且大部分添加在客户机元数据中进行。如果对客户机注册使用 databaseStore 方式,请参阅配置 OpenID Connect 提供者以接受客户机注册请求以了解更多信息。建议您遵循该文档中的指示来管理客户机。如果对客户机注册使用 localStore 方式,那么可注册 scopepreAuthorizedScopegrantTypesresponseTypesintrospectTokens、和 functionalUserId 及其他属性。

  3. 添加 openidConnectProvider 元素,其 oauthProviderRef 属性引用所配置 oauthProvider。每个 oauthProvider 只能被一个 openidConnectProvider 引用,两个或更多 openidConnectProvider 元素不能引用同一 oauthProvider。客户机元素的 name 属性和 secret 属性必须与对应 OpenID Connect 客户机的 client IDclient secret 相匹配。此示例使用缺省 Liberty 概要文件服务器 OpenID Connect 客户机。
    注: 在此示例中,OP 期望客户机的 SSL 端口设置为 443。
    <openidConnectProvider id="OidcConfigSample" oauthProviderRef="OAuthConfigSample" /> 
    
    <oauthProvider id="OAuthConfigSample"> 
    <localStore>
    <client name="client01" secret="{xor}LDo8LTor"
    displayname="client01" 
    scope="openid profile email" 
    redirect="https://server.example.com:443/oidcclient/redirect/client01"/> 
    </localStore>
    </oauthProvider>
    注: 有效客户机必须针对 authorization_code 授权类型注册其名称、重定向、范围和密钥。
  4. 配置服务器的信任库以包含受支持的 OpenID Connect 依赖方或客户机的签署者证书。有关密钥库的信息,请参阅对 Liberty 概要文件启用 SSL 通信
  5. 修改服务器的 SSL 配置以使用所配置信任库。
    <sslDefault sslRef="DefaultSSLSettings" /> 	
    <ssl id="DefaultSSLSettings" keyStoreRef="myKeyStore" trustStoreRef="myTrustStore" /> 	
    <keyStore id="myKeyStore" password="{xor}Lz4sLCgwLTs=" type="jks" location="${server.config.dir}/resources/security/BasicKeyStore.jks" /> 
    <keyStore id="myTrustStore" password="{xor}Lz4sLCgwLTs=" type="jks" location="${server.config.dir}/resources/security/BasicTrustStore.jks" />

    OpenID Connect 配置为使用服务器指定的缺省 SSL 配置。因此,服务器的缺省 SSL 配置必须使用为 OpenID Connect 配置的信任库。

    OpenID Connect 中的用户同意书是可插拔的,这允许提供者创建和维护他们自己的同意书。因为此表单是通过 SSL 检索到的,所以您必须配置信任库以包含同意书所在服务器的签署者证书。如果已使用缺省同意书并且用于 OpenID Connect 的信任库配置为不同于 Liberty 概要文件服务器使用的密钥库,那么必须将 Liberty 概要文件服务器的签署者证书导入至 OpenID Connect 信任库。

    有关更多 OpenID Connect 提供者配置选项,请参阅在 server.xml 文件中配置元素

    注: 为使用 OpenID Connect,scope 属性必须在范围列表中添加 openid

结果

您现在已完成将 Liberty 概要文件服务器配置为 OpenID Connect 提供者(它能够与配置为 OpenID Connect 客户机的其他 Liberty 概要文件服务器通信)时所需的基本配置。

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

信息中心的条款和条件 | 反馈


时间戳记图标 最近一次更新时间: Wednesday, 2 September 2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_config_oidc_op
文件名:twlp_config_oidc_op.html