我的工作区中有两组不同的人。
那些正式员工的ID将以s
开头,后跟一个数字序列。例如s123456789
。
那些非正规员工的ID将全数显示。例如81234567
。
常规人员将针对LDAP服务器进行身份验证。非正规人员将通过RESTful api进行身份验证。
我想添加一个实现上述策略的服务。
它将首先检查ID是否以s
开头,然后使用LDAP进行身份验证。
如果没有,请使用rest api进行身份验证。
查阅CAS官方文档后,我认为只有自定义身份验证处理程序才能实现此目的。 但是我如何开始使用cas-overlay-template?有方向吗?
答案 0 :(得分:0)
要设计自定义身份验证处理程序,可以将总体任务分类如下:
public class MyAuthenticationHandler extends AbstractUsernamePasswordAuthenticationHandler {
}
public class MyAuthenticationEventExecutionPlanConfiguration
implements AuthenticationEventExecutionPlanConfigurer {
@Autowired
private CasConfigurationProperties casProperties;
@Bean
public AuthenticationHandler myAuthenticationHandler() {
var handler = new MyAuthenticationHandler();
return h;
}
@Override
public void configureAuthenticationExecutionPlan(final AuthenticationEventExecutionPlan plan) {
plan.registerAuthenticationHandler(myAuthenticationHandler());
}
}
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.example.cas.MyAuthenticationEventExecutionPlanConfiguration
有关注释和详细信息,请参见this link。