yap*_*m01 9 tomcat jaas java-ee tomcat7
根据Apache Tomcat 1.7文档:
编写自己的基于JAAS的LoginModule,User和Role类(参见JAAS Authentication Tutorial和JAAS Login Module Developer's Guide),由JAAS登录上下文管理(javax.security.auth.login.LoginContext)开发LoginModule时,请注意,JAASRealm的内置CallbackHandler目前仅识别NameCallback和PasswordCallback.
它只支持NameCallback和PasswordCallback.我想将其他参数传递给JAAS登录模块但由于此限制而无法传递.
如何将其他参数传递给JAAS登录模块?
编写您自己的CallbackHandler。有关详细信息,请参阅http://docs.oracle.com/javase/7/docs/technotes/guides/security/jaas/tutorials/GeneralAcnOnly.html
例如,MyCallbackHandler 可以支持额外的TextOutputCallback
public void handle(Callback[] callbacks)
throws IOException, UnsupportedCallbackException {
for (int i = 0; i < callbacks.length; i++) {
if (callbacks[i] instanceof TextOutputCallback) {
// display a message according to a specified type
. . .
} else if (callbacks[i] instanceof NameCallback) {
// prompt the user for a username
. . .
} else if (callbacks[i] instanceof PasswordCallback) {
// prompt the user for a password
. . .
} else {
throw new UnsupportedCallbackException
(callbacks[i], "Unrecognized Callback");
}
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1147 次 |
最近记录: |