samlcallbackhandlerimpl.java
来自「1. 如何生成自签名的KeyStore以及导出供SP使用的公钥 C:>k」· Java 代码 · 共 66 行
JAVA
66 行
package samlsso.providers.identityassertion;
import javax.security.auth.callback.Callback;
import javax.security.auth.callback.CallbackHandler;
import javax.security.auth.callback.NameCallback;
import javax.security.auth.callback.UnsupportedCallbackException;
/**
*
* @author maxq
* @version 0.9
*/
final class SAMLCallbackHandlerImpl implements CallbackHandler {
/**
*
*/
private String userName;
/**
* Create a callback handler that stores the user name.
*
* @param user
* A String containing the name of the user from the identity
* assertion token
*/
SAMLCallbackHandlerImpl( String user) {
userName= user;
}
/**
* Used by the authenticators' login modules to get the user name that the
* identity asserter extracted from the identity assertion token. This name
* can only be retrieved via a NameCallback.
*
* @param callbacks
* An array of Callback objects indicating what data the login module
* is trying to extract from this callback handler. It must only
* contain NameCallbacks.
*
* @exception UnsupportedCallbackException
* thrown if any of the callbacks aren't NameCallbacks.
*
* @see CallbackHandler
*/
public void handle( Callback[] callbacks) throws UnsupportedCallbackException {
// loop over the callbacks
for( int i= 0; i < callbacks.length; i++) {
Callback callback= callbacks[i];
// we only handle NameCallbacks
if( !( callback instanceof NameCallback)) {
throw new UnsupportedCallbackException( callback,
"Unrecognized Callback");
}
// send the user name to the name callback:
NameCallback nameCallback= (NameCallback)callback;
nameCallback.setName( userName);
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?