定义 OAuth 服务提供程序

使用提供者配置文件来定义 OAuth 服务提供程序。可以通过编辑 OAuthSampleConfig.xml 文件来定义 OAuth 服务提供程序。

OauthSampleConfig.xml 位于 WebSphere® Application Server 安装版本的 properties 目录中。可以复制和编辑此文件以定义 OAuth 服务提供程序。

每个参数都有可定制值 true(这意味着用户可以修改此变量)或者可定制值 false(这意味着用户通常不能更新此变量)。可使用 exportOAuthProps wsadmin 任务来导出可定制参数,可使用 importOAuthProps wsadmin 任务来导入可定制参数。否则,可定制属性对这些参数没有影响。可以根据您所在环境按需要来更新可定制参数值。
避免故障 避免故障: 在内部使用参数类型 wscc,更新参数时可以忽略参数类型。gotcha
表 1. 用于内存客户机和令牌存储的活动参数
参数名称 描述 可定制
oauth20.client.provider.classname 客户机提供者实现类 对于内存客户机存储,使用值 com.ibm.ws.security.oauth20.plugins.BaseClientProvider False
oauth20.token.cache.classname 令牌高速缓存实现类 对于内存令牌存储,使用值 com.ibm.ws.security.oauth20.plugins.BaseCache False
oauth20.token.cache.jndi.tokens 按标识建立索引的令牌的动态高速缓存对象的 Java™ 命名和目录接口 (JNDI) 名称。 缺省值为 Services/cache/OAuth20MemTokenCache。请参阅“动态高速缓存配置”一节以了解用法详细信息。 False
oauth20.token.cache.jndi.users 按用户建立索引的令牌的动态高速缓存对象的 JNDI 名称 缺省值为 Services/cache/OAuth20MemTokenOwnerCache。请参阅“动态高速缓存配置”一节以了解用法详细信息。 False
表 2. 用于 Java 数据库连接 (JDBC) 数据库存储的参数
参数名称 描述 可定制
oauth20.client.provider.classname 客户机提供者实现类名 对于基于 JDBC 的客户机存储,使用值 com.ibm.ws.security.oauth20.plugins.db.CachedDBClientProvider。请参阅“数据库表”一节以了解有关数据库配置的详细信息。 False
oauth20.token.cache.classname 令牌高速缓存实现类名 对于基于 JDBC 的令牌存储,使用值 com.ibm.ws.security.oauth20.plugins.db.CachedDBTokenStore。请参阅“数据库表”一节以了解有关数据库配置的详细信息。 False
oauthjdbc.JDBCProvider JDBC 提供程序名称 请将此值设置为与 JDBC 提供程序相匹配,例如,jdbc/oauthProvider False
oauthjdbc.client.table 用于 OAuth 客户机的表名 请将此值设置为与数据库表名相匹配,例如,OAuthDBSchema.OAUTH20CLIENTCONFIG False
oauthjdbc.token.table 用于 OAuth 令牌的表名 请将此值设置为与数据库表名相匹配,例如,OAuthDBSchema.OAUTH20CACHE False
oauthjdbc.CleanupInterval 到期令牌的清除时间间隔(以秒计) 清除数据库令牌表中已到期的令牌时的延迟时间量(以秒计)。 True
oauthjdbc.LimitRefreshToken 未使用 未使用 True
oauth20.db.token.cache.jndi.tokens 令牌的动态高速缓存对象的 JNDI 名称 所指定名称的动态高速缓存所支持的数据存储,例如,services/cache/OAuth20DBTokenCache。请参阅“动态高速缓存配置”一节以了解用法详细信息。 False
oauth20.db.token.cache.jndi.client 客户机的动态高速缓存对象的 JNDI 名称 所指定名称的动态高速缓存所支持的数据存储,例如,services/cache/OAuth20DBClientCache。请参阅“动态高速缓存配置”一节以了解用法详细信息。 False
表 3. OAuth 访问时间长度。根据授权级别,对客户机分配访问时间。
参数名称 描述 可定制
oauth20.max.authorization.grant.lifetime.seconds 授权准予生存期(以秒计) 授权准予保持有效的持续时间(以秒计),例如,604800。 True
oauth20.code.lifetime.seconds 授权代码生存期(以秒计) 在使用 OAuth 期间,授权代码保持有效的持续时间(以秒计),例如,60。 True
oauth20.code.length 整数 所生成的 OAuth 授权代码的长度 True
oauth20.token.lifetime.seconds 整数 OAuth 访问令牌保持有效的时间(以秒计),通常是一个定制值 True
oauth20.access.token.length 整数 所生成的 OAuth 访问令牌的长度 True
oauth20.issue.refresh.token true 或 false 如果值为 false,那么将禁止在 OAuth 提供程序中使用和生成新令牌 True
oauth20.refresh.token.length 值的范围可以从 50 开始 缺省值为 50。 True
oauth20.access.tokentypehandler.classname 可以指定任何 OAuth20 令牌处理程序。 缺省值为 com.ibm.ws.security.oauth20.plugins.BaseTokenHandler。类型为 cc False
oauth20.mediator.classnames OAuth 介体的可选类名 请参阅“OAuth 介体”一节以了解详细信息。 False
oauth20.allow.public.clients true 或 false 如果值为 false,那么将禁止访问公用客户机(有关详细信息,请参阅 OAuth 规范)。 True
oauth20.grant.types.allowed 其值可能为:authorization_codepasswordrefresh_tokensclient_credentialsimplicit 已启用的 OAuth 流的列表(有关详细信息,请参阅 OAuth 规范)。 False
oauth20.authorization.form.template 所定制的授权模板的可选 URL 如果您正在使用所定制的授权表单,请指定模板位置。 True
oauth20.authorization.error.template 所定制的授权错误页模板的可选 URL 如果您正在使用所定制的授权表单错误页,请指定模板位置。 True
oauth20.authorization.loginURL 所定制的登录页面的可选 URL 如果您正在使用所定制的登录页面,请指定登录 URL。 True
oauth20.audithandler.classname OAuth 审计处理程序的类名 用于高级日志记录和审计的可选实现。缺省值为 com.ibm.oauth.core.api.audit.XMLFileOAuthAuditHandler True
oauth20.template.lifetime.seconds 模板生存期(秒)。缺省值为 600。 这是模板应该保留在模板高速缓存中的时间。

oauth20.template.lifetime.seconds 将覆盖现有 JVM 系统属性 com.ibm.ws.security.oauth20.util.defaultTemplateLifetime 的任何设置。

 
oauth20.template.waitTime 模板等待时间(以秒计)。缺省值为 120。 这是等待从远程服务器装入模板所用的时间。  
oauth20.template.connectTime 模板连接时间(以秒计)。缺省值为 120。 这是等待服务器连接装入模板所用的时间。  
oauth20.template.readTime 模板读时间(以秒计)。缺省值为 120。 这是留出的用于完成从远程服务器读取模板文档的时间。  
oauth20.template.count 模板计数。缺省值为 3。 这是要同时获取的模板数。  
oauth20.grant.type.password.skip.validation truefalse,缺省值为 false 值为 true 表示对密码授予类型禁用资源所有者验证。  
xmlFileAuditHandler.filename 文件名 与缺省审计处理程序相对应的文件的名称。 True
表 4. 信任关联拦截器 (TAI) 配置的参数。(可选)可以将这些参数作为 TAI 定制属性来添加,这样更具灵活性。通过指定 type="tai",可以将其他定制 TAI 属性作为参数来添加
参数名称 描述 可定制
过滤器 可以使用任何过滤条件 有关详细信息,请参阅 TAI 配置参数和语法 True
oauthOnly true 或 false 示例 TAI 配置属性,用来限制仅对 OAuth 进行认证 (true),或者使用已启用的其他认证 (false)。有关详细信息,请参阅 TAI 配置参数。 True
表 5. 授权参数。可选端点参数和客户机白名单,以跳过具有特权的客户机的授权步骤。
参数名称 描述 可定制
oauth20.autoauthorize.param 任何字符串 要使用授权,必须将 autoauthorize 参数作为值为 true 的 URL 参数追加至请求。 False
oauth20.autoauthorize.clients 已注册的客户机标识的列表 此列表中的客户机能够参与 autoauthorization。 True
表 6. 可选值,用于替换动态主机名的客户机 URI 字符串。变量必须使用 '${VAR_NAME}' 语法。
参数名称 描述 可定制
oauth20.client.uri.substitutions 未使用 未使用 False
表 7. 用于配置服务器缺省范围的可选值。值是以空格定界的字符串。
参数名称 描述 可定制
oauth20.scope.preAuthorized 任何字符串 对所有客户机指定的范围列表 True

指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_oauthdefineprovider
文件名:cwbs_oauthdefineprovider.html