本文整理汇总了Java中org.jasig.cas.authentication.principal.PrincipalResolver类的典型用法代码示例。如果您正苦于以下问题:Java PrincipalResolver类的具体用法?Java PrincipalResolver怎么用?Java PrincipalResolver使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PrincipalResolver类属于org.jasig.cas.authentication.principal包,在下文中一共展示了PrincipalResolver类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: resolvePrincipal
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
/**
* Resolve principal.
*
* @param handlerName the handler name
* @param resolver the resolver
* @param credential the credential
* @return the principal
*/
protected Principal resolvePrincipal(
final String handlerName, final PrincipalResolver resolver, final Credential credential) {
if (resolver.supports(credential)) {
try {
final Principal p = resolver.resolve(credential);
logger.debug("{} resolved {} from {}", resolver, p, credential);
return p;
} catch (final Exception e) {
logger.error("{} failed to resolve principal from {}", resolver, credential, e);
}
} else {
logger.warn(
"{} is configured to use {} but it does not support {}, which suggests a configuration problem.",
handlerName,
resolver,
credential);
}
return null;
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:28,代码来源:PolicyBasedAuthenticationManager.java
示例2: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestRemoteUserNonInteractiveCredentialsAction();
this.action.setPrincipalFactory(new DefaultPrincipalFactory());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final AbstractCentralAuthenticationService centralAuthenticationService = (AbstractCentralAuthenticationService)
getCentralAuthenticationService();
this.action.setCentralAuthenticationService(centralAuthenticationService);
this.action.getAuthenticationSystemSupport().getAuthenticationTransactionManager()
.setAuthenticationManager(authenticationManager);
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:20,代码来源:PrincipalFromRequestRemoteUserNonInteractiveCredentialsActionTests.java
示例3: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestUserPrincipalNonInteractiveCredentialsAction();
this.action.setPrincipalFactory(new DefaultPrincipalFactory());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final AbstractCentralAuthenticationService centralAuthenticationService = (AbstractCentralAuthenticationService)
getCentralAuthenticationService();
this.action.setCentralAuthenticationService(centralAuthenticationService);
this.action.getAuthenticationSystemSupport().getAuthenticationTransactionManager()
.setAuthenticationManager(authenticationManager);
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:17,代码来源:PrincipalFromRequestUserPrincipalNonInteractiveCredentialsActionTests.java
示例4: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new X509CertificateCredentialsNonInteractiveAction();
final X509CredentialsAuthenticationHandler handler = new X509CredentialsAuthenticationHandler();
handler.setTrustedIssuerDnPattern("CN=\\w+,DC=jasig,DC=org");
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
handler, new X509SerialNumberPrincipalResolver()));
final AbstractCentralAuthenticationService centralAuthenticationService = (AbstractCentralAuthenticationService)
getCentralAuthenticationService();
this.action.setCentralAuthenticationService(centralAuthenticationService);
this.action.getAuthenticationSystemSupport().getAuthenticationTransactionManager()
.setAuthenticationManager(authenticationManager);
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:20,代码来源:X509CertificateCredentialsNonInteractiveActionTests.java
示例5: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.ticketRegistry = new DefaultTicketRegistry();
final OpenIdCredentialsAuthenticationHandler handler = new OpenIdCredentialsAuthenticationHandler();
handler.setTicketRegistry(this.ticketRegistry);
this.authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
handler,
new OpenIdPrincipalResolver()));
final Map<String, UniqueTicketIdGenerator> generator = new HashMap<>();
generator.put(OpenIdService.class.getName(), new DefaultUniqueTicketIdGenerator());
impl = new CentralAuthenticationServiceImpl(this.ticketRegistry, null, this.authenticationManager,
new DefaultUniqueTicketIdGenerator(), generator, new NeverExpiresExpirationPolicy(),
new NeverExpiresExpirationPolicy(),
new DefaultServicesManagerImpl(new InMemoryServiceRegistryDaoImpl()), mock(LogoutManager.class));
this.action = new OpenIdSingleSignOnAction();
this.action.setCentralAuthenticationService(this.impl);
this.action.setExtractor(new DefaultOpenIdUserNameExtractor());
this.action.afterPropertiesSet();
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:24,代码来源:OpenIdSingleSignOnActionTests.java
示例6: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestRemoteUserNonInteractiveCredentialsAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), null, authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:19,代码来源:PrincipalFromRequestRemoteUserNonInteractiveCredentialsActionTests.java
示例7: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestUserPrincipalNonInteractiveCredentialsAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), null, authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:21,代码来源:PrincipalFromRequestUserPrincipalNonInteractiveCredentialsActionTests.java
示例8: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new X509CertificateCredentialsNonInteractiveAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final X509CredentialsAuthenticationHandler handler = new X509CredentialsAuthenticationHandler();
handler.setTrustedIssuerDnPattern("CN=\\w+,DC=jasig,DC=org");
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
handler, new X509SerialNumberPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), null, authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
this.action.afterPropertiesSet();
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:23,代码来源:X509CertificateCredentialsNonInteractiveActionTests.java
示例9: resolvePrincipal
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
protected Principal resolvePrincipal(
final String handlerName, final PrincipalResolver resolver, final Credential credential) {
if (resolver.supports(credential)) {
logger.info("{} resolved from {}", resolver, credential);
try {
final Principal p = resolver.resolve(credential);
logger.debug("{} resolved {} from {}", resolver, p, credential);
logger.info("{} resolved {} from {}", resolver, p, credential);
return p;
} catch (final Exception e) {
logger.error("{} failed to resolve principal from {}", resolver, credential, e);
}
} else {
logger.warn(
"{} is configured to use {} but it does not support {}, which suggests a configuration problem.",
handlerName,
resolver,
credential);
logger.info(
"{} is configured to use {} but it does not support {}, which suggests a configuration problem.",
handlerName,
resolver,
credential);
}
return null;
}
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:27,代码来源:PolicyBasedAuthenticationManager.java
示例10: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.ticketRegistry = new DefaultTicketRegistry();
final OpenIdCredentialsAuthenticationHandler handler = new OpenIdCredentialsAuthenticationHandler();
handler.setTicketRegistry(this.ticketRegistry);
this.authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
handler,
new OpenIdPrincipalResolver()));
final Map<String, UniqueTicketIdGenerator> generator = new HashMap<String, UniqueTicketIdGenerator>();
generator.put(OpenIdService.class.getName(), new DefaultUniqueTicketIdGenerator());
impl = new CentralAuthenticationServiceImpl(this.ticketRegistry, null, this.authenticationManager,
new DefaultUniqueTicketIdGenerator(), generator, new NeverExpiresExpirationPolicy(),
new NeverExpiresExpirationPolicy(),
new DefaultServicesManagerImpl(new InMemoryServiceRegistryDaoImpl()), mock(LogoutManager.class));
this.action = new OpenIdSingleSignOnAction();
this.action.setCentralAuthenticationService(this.impl);
this.action.setExtractor(new DefaultOpenIdUserNameExtractor());
this.action.afterPropertiesSet();
}
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:24,代码来源:OpenIdSingleSignOnActionTests.java
示例11: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestRemoteUserNonInteractiveCredentialsAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<String, UniqueTicketIdGenerator>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), null, authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
}
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:19,代码来源:PrincipalFromRequestRemoteUserNonInteractiveCredentialsActionTests.java
示例12: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestUserPrincipalNonInteractiveCredentialsAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<String, UniqueTicketIdGenerator>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), null, authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
}
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:21,代码来源:PrincipalFromRequestUserPrincipalNonInteractiveCredentialsActionTests.java
示例13: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new X509CertificateCredentialsNonInteractiveAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<String, UniqueTicketIdGenerator>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final X509CredentialsAuthenticationHandler handler = new X509CredentialsAuthenticationHandler();
handler.setTrustedIssuerDnPattern("CN=\\w+,DC=jasig,DC=org");
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
handler, new X509SerialNumberPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), null, authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
this.action.afterPropertiesSet();
}
开发者ID:luotuo,项目名称:cas4.0.x-server-wechat,代码行数:23,代码来源:X509CertificateCredentialsNonInteractiveActionTests.java
示例14: authenticateAndResolvePrincipal
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
/**
* Authenticate and resolve principal.
*
* @param builder the builder
* @param credential the credential
* @param resolver the resolver
* @param handler the handler
* @throws GeneralSecurityException the general security exception
* @throws PreventedException the prevented exception
*/
private void authenticateAndResolvePrincipal(final AuthenticationBuilder builder, final Credential credential,
final PrincipalResolver resolver, final AuthenticationHandler handler)
throws GeneralSecurityException, PreventedException {
final Principal principal;
final HandlerResult result = handler.authenticate(credential);
builder.addSuccess(handler.getName(), result);
logger.info("{} successfully authenticated {}", handler.getName(), credential);
if (resolver == null) {
principal = result.getPrincipal();
logger.debug(
"No resolver configured for {}. Falling back to handler principal {}",
handler.getName(),
principal);
} else {
principal = resolvePrincipal(handler.getName(), resolver, credential);
}
// Must avoid null principal since AuthenticationBuilder/ImmutableAuthentication
// require principal to be non-null
if (principal != null) {
builder.setPrincipal(principal);
}
}
开发者ID:yuweijun,项目名称:cas-server-4.2.1,代码行数:34,代码来源:PolicyBasedAuthenticationManager.java
示例15: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.ticketRegistry = new DefaultTicketRegistry();
final OpenIdCredentialsAuthenticationHandler handler = new OpenIdCredentialsAuthenticationHandler();
handler.setTicketRegistry(this.ticketRegistry);
this.authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
handler,
new OpenIdPrincipalResolver()));
final Map<String, UniqueTicketIdGenerator> generator = new HashMap<>();
generator.put(OpenIdService.class.getName(), new DefaultUniqueTicketIdGenerator());
impl = new CentralAuthenticationServiceImpl(this.ticketRegistry, this.authenticationManager,
new DefaultUniqueTicketIdGenerator(), generator, new NeverExpiresExpirationPolicy(),
new NeverExpiresExpirationPolicy(),
new DefaultServicesManagerImpl(new InMemoryServiceRegistryDaoImpl()), mock(LogoutManager.class));
this.action = new OpenIdSingleSignOnAction();
this.action.setCentralAuthenticationService(this.impl);
this.action.setExtractor(new DefaultOpenIdUserNameExtractor());
this.action.afterPropertiesSet();
}
开发者ID:xuchengdong,项目名称:cas4.1.9,代码行数:24,代码来源:OpenIdSingleSignOnActionTests.java
示例16: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestRemoteUserNonInteractiveCredentialsAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
}
开发者ID:xuchengdong,项目名称:cas4.1.9,代码行数:19,代码来源:PrincipalFromRequestRemoteUserNonInteractiveCredentialsActionTests.java
示例17: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new PrincipalFromRequestUserPrincipalNonInteractiveCredentialsAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
new PrincipalBearingCredentialsAuthenticationHandler(),
new PrincipalBearingPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
}
开发者ID:xuchengdong,项目名称:cas4.1.9,代码行数:21,代码来源:PrincipalFromRequestUserPrincipalNonInteractiveCredentialsActionTests.java
示例18: setUp
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
this.action = new X509CertificateCredentialsNonInteractiveAction();
final Map<String, UniqueTicketIdGenerator> idGenerators = new HashMap<>();
idGenerators.put(SimpleWebApplicationServiceImpl.class.getName(), new DefaultUniqueTicketIdGenerator());
final X509CredentialsAuthenticationHandler handler = new X509CredentialsAuthenticationHandler();
handler.setTrustedIssuerDnPattern("CN=\\w+,DC=jasig,DC=org");
final AuthenticationManager authenticationManager = new PolicyBasedAuthenticationManager(
Collections.<AuthenticationHandler, PrincipalResolver>singletonMap(
handler, new X509SerialNumberPrincipalResolver()));
final CentralAuthenticationServiceImpl centralAuthenticationService = new CentralAuthenticationServiceImpl(
new DefaultTicketRegistry(), authenticationManager, new DefaultUniqueTicketIdGenerator(),
idGenerators, new NeverExpiresExpirationPolicy(), new NeverExpiresExpirationPolicy(),
mock(ServicesManager.class), mock(LogoutManager.class));
this.action.setCentralAuthenticationService(centralAuthenticationService);
this.action.afterPropertiesSet();
}
开发者ID:xuchengdong,项目名称:cas4.1.9,代码行数:23,代码来源:X509CertificateCredentialsNonInteractiveActionTests.java
示例19: resolvePrincipal
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
protected Principal resolvePrincipal(
final String handlerName, final PrincipalResolver resolver, final Credential credential) {
if (resolver.supports(credential)) {
try {
final Principal p = resolver.resolve(credential);
logger.debug("{} resolved {} from {}", resolver, p, credential);
return p;
} catch (final Exception e) {
logger.error("{} failed to resolve principal from {}", resolver, credential, e);
}
} else {
logger.warn(
"{} is configured to use {} but it does not support {}, which suggests a configuration problem.",
handlerName,
resolver,
credential);
}
return null;
}
开发者ID:kevin3061,项目名称:cas-4.0.1,代码行数:20,代码来源:PolicyBasedAuthenticationManager.java
示例20: authenticateAndResolvePrincipal
import org.jasig.cas.authentication.principal.PrincipalResolver; //导入依赖的package包/类
/**
* Authenticate and resolve principal.
*
* @param builder the builder
* @param credential the credential
* @param resolver the resolver
* @param handler the handler
* @throws GeneralSecurityException the general security exception
* @throws PreventedException the prevented exception
*/
private void authenticateAndResolvePrincipal(final AuthenticationBuilder builder, final Credential credential,
final PrincipalResolver resolver, final AuthenticationHandler handler)
throws GeneralSecurityException, PreventedException {
Principal principal;
final HandlerResult result = handler.authenticate(credential);
builder.addSuccess(handler.getName(), result);
logger.info("{} successfully authenticated {}", handler.getName(), credential);
if (resolver == null) {
principal = result.getPrincipal();
logger.debug(
"No resolver configured for {}. Falling back to handler principal {}",
handler.getName(),
principal);
} else {
principal = resolvePrincipal(handler.getName(), resolver, credential);
if (principal == null) {
logger.warn("Principal resolution handled by {} produced a null principal. "
+ "This is likely due to misconfiguration or missing attributes; CAS will attempt to use the principal "
+ "produced by the authentication handler, if any.", resolver.getClass().getSimpleName());
principal = result.getPrincipal();
}
}
// Must avoid null principal since AuthenticationBuilder/ImmutableAuthentication
// require principal to be non-null
if (principal != null) {
builder.setPrincipal(principal);
}
logger.debug("Final principal resolved for this authentication event is {}", principal);
}
开发者ID:hsj-xiaokang,项目名称:springboot-shiro-cas-mybatis,代码行数:43,代码来源:PolicyBasedAuthenticationManager.java
注:本文中的org.jasig.cas.authentication.principal.PrincipalResolver类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论