keycloak~自定义认证流设置固定redirect_uri
redirect_uri
在keycloak进行认证成功之后,会重定向到这个目标页面,一般为用户的来源页,即你在登录之前访问的页面;自定义认证流
是指对keycloak中的brower和direct grant两个认证方式的过程添加自定义策略,如在用户登录成功时,检查它的密码强度,如果不符合要求,就跳到一个说明页面,告诉用户,让他去重设更安全的密码。
认证流程中的自定义过程
在自定义过程中添加redirect_uri
@Override
public void action(AuthenticationFlowContext context) {
MultivaluedMap<String, String> formData = context.getHttpRequest().getDecodedFormParameters();
if (formData.containsKey("submitType") && formData.get("submitType").get(0).equals("1")) {
String modifyPasswordPage = mainSite + "/usercenter";
// 自定义redirect_uri地址
context.getAuthenticationSession().setRedirectUri(modifyPasswordPage);
context.success();
return;
}
// 走默认的redirect_uri
context.success();
}
上面代码中,只是对getAuthenticationSession()对象的setRedirectUri()方法
进行了调用,就完成了对redirect_uri的自定义,还是非常容易的。