我有一个 CAS 6.0.1,我扩展了 AbstractJdbcUsernamePasswordAuthenticationHandler 以匹配我的数据库,一切正常。我有一个新要求,即在我的登录页面中基本上添加某种“部门”。我认为我有 2 个选项,要么将其添加为 URL 中的名称/值对,要么作为 POST,除了 j_username 和 j_password 之外,向表单添加一个隐藏字段。但是,无论哪种方式,我如何在我的 AuthenticationHandler 实现中获得该值?
1 回答
慕姐4208626
TA贡献1852条经验 获得超7个赞
如果您只想自由访问 Request 对象,您可以使用:
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
或者使用 CAS 本身:
HttpServletRequest request = HttpRequestUtils.getHttpServletRequestFromRequestAttributes();
这使您可以department
自由地检查参数。如果您希望这些参数实际绑定到credential
传递的对象,其中包含用户名/密码等,那么您需要大量修改 webflow 以将这些字段包含到凭证对象中,更改 webflow 以处理绑定等..我觉得上面的可能暂时看起来比较简单。
添加回答
举报
0/150
提交
取消