将公共对象请求代理体系结构程序化登录迁移到 Java 认证和授权服务(CORBA 和 JAAS)
使用本主题作为如何使用基于 CORBA 的程序化登录 API 执行程序化登录的示例。
开始之前
本文档概述不推荐的公共对象请求代理体系结构 (CORBA) 程序化登录 API 以及 JAAS 提供的备用方法。WebSphere® Application Server 完全支持 Java™ 认证和授权服务 (JAAS) 作为程序化登录应用程序编程接口 (API)。请参阅为 Java 认证和授权服务配置程序化登录和开发带 Java 认证和授权服务的程序化登录,以了解有关 JAAS 支持的更多详细信息。
WebSphere Application Server for z/OS® 环境中不支持公共对象请求代理体系结构 (CORBA) 应用程序编程接口 (API)。如果要将某个应用程序从另一个 WebSphere Application Server 产品移植到 WebSphere Application Server for z/OS,那么必须了解 V6.0.x 中不推荐的安全性 API。如果您要在 WebSphere Application Server for z/OS V8.0 中使用这些应用程序,那么您必须迁移到 Java 认证和授权服务 (JAAS)。
${user.install.root}/installedApps/sampleApp.ear/default_app.war/WEB-INF/classes/LoginHelper.java.
${user.install.root}/installedApps/sampleApp.ear/default_app.war/WEB-INF/classes/ServerSideAuthenticator.java.
profile_root/installedApps/sampleApp.ear/default_app.war/WEB-INF/classes/ServerSideAuthenticator.java。
org.omg.SecurityLevel2.Credentials。此 API 包含在产品中,但是不推荐使用。
WebSphere Application Server 中提供的 API 是标准 JAAS API 和标准 JAAS 接口的产品实现的组合。
WebSphere Application Server for z/OS 中提供的受支持 API 是标准 JAAS API 和标准 JAAS 接口的产品实现(有一些小扩展)的组合。
以下信息只是摘要;请参阅用于您的平台的 JAAS 文档,该文档位于:http://www.ibm.com/developerworks/java/jdk/security/。
- 程序化登录 API:
- javax.security.auth.login.LoginContext
- javax.security.auth.callback.CallbackHandler 接口:WebSphere Application Server 产品提供 javax.security.auth.callback.CallbackHandler 接口的以下实现:
- com.ibm.websphere.security.auth.callback.WSCallbackHandlerImpl
- 当应用程序将基本认证数据(用户标识、密码和安全领域)或令牌数据推送到产品登录模块时,提供非提示 CallbackHandler 处理程序。建议为服务器端登录使用此 API。
com.ibm.websphere.security.auth.callback.WSGUICallbackHandlerImpl
提供登录提示 CallbackHandler 处理程序以收集基本认证数据(用户标识、密码和安全领域)。建议为客户端登录使用此 API。
如果在服务器端使用此 API,将阻止服务器输入。
- com.ibm.websphere.security.auth.callback.WSStdinCallbackHandlerImpl
- 提供标准输入登录提示 CallbackHandler 处理程序以收集基本认证数据(用户标识、密码和安全领域)。建议为客户端登录使用此 API。注: 如果在服务器端使用此 API,将阻止服务器输入。
- javax.security.auth.callback.Callback 接口:
- javax.security.auth.callback.NameCallback
- 由 JAAS 提供,以将用户名传递到 LoginModules 接口。
- javax.security.auth.callback.PasswordCallback
- 由 JAAS 提供,以将密码传递到 LoginModules 接口。
- com.ibm.websphere.security.auth.callback.WSCredTokenCallbackImpl
- 由产品提供,以执行基于令牌的登录。使用此 API,应用程序可以传递标记字节数组到 LoginModules 接口。
- javax.security.auth.spi.LoginModule interface
WebSphere Application Server 为客户机和服务器端登录提供 LoginModules 实现。请参阅为 Java 认证和授权服务配置程序化登录,以获取详细信息。
- javax.security.Subject:
com.ibm.websphere.security.auth.WSSubject
由产品提供的扩展,以使用 javax.security.Subject 中的凭证调用远程 J2EE 资源
com.ibm.websphere.security.auth.WSSubject
由产品提供的扩展,以使用 javax.security.Subject 中的凭证调用远程 J2EE 资源
应用程序必须使用显式调用 WebSphere Application Server 登录模块生成的主体集,调用 WSSubject.doAs() 方法来访问 J2EE 资源。
- com.ibm.websphere.security.cred.WSCredential
- 使用 WebSphere Application Server LoginModules 接口 JAAS 登录成功后,创建 com.ibm.websphere.security.cred.WSCredential 凭证并将它存储到主体集。
- com.ibm.websphere.security.auth.WSPrincipal
- 一个由 WebSphere Application Server LoginModules 接口认证的已认证主体,在主体集中创建并存储。