Apereo CAS 6.0.x将登录表单字段传递给已解析的属性

时间:2020-03-09 10:12:42

标签: field cas principal

我需要在CAS 6.0.X登录屏幕(语言选择器)中添加一个字段,该字段不用于对用户进行身份验证,但登录后需要它。 我该怎么做才能将添加到表单中的该字段传递给传递给“主要”对象中客户端应用程序的数据。

1 个答案:

答案 0 :(得分:0)

最后,我达到了我所需要的。我们已经覆盖了jdbc支持模块以添加检查,并且在其中放置了以下代码来帮助我检索请求的参数。

HttpServletRequest request = ((ServletRequestAttributes) 
RequestContextHolder.currentRequestAttributes()).getRequest();
String[] fields = fieldsToPrincipal.split(",");
for(String field : fields2Principal) 
{
    dbFields.put( field.trim() , request.getParameter( field.trim() ) );
}

fieldsToPrincipal这是一串表单字段名称,我想通过“主要”映射属性将应用程序发送给该应用程序。

现在在属性文件中,我有2个属性,在其中报告字段名称。告诉您将为委托人检索哪些字段的默认属性,以及我指示哪些字段来自表单的自定义属性的默认属性

cas.authn.jdbc.query [0] .principalAttributeList:USERID,USERNAME,LANGUAGE_SELECTED cas.custom.properties.jdbc.loginfields.to.principal = LANGUAGE_SELECTED

相关问题