从AJP连接器请求检索Shibboleth属性的java
我在Apache上运行Shibboleth身份验证时遇到了一个奇怪的问题,在后端运行Tomcat7时,Apache通过mod_proxy_ajp发送所有内容。Shibboleth的参数也是如此
在documentation中明确指出,AJP只发送前缀为attributePrefix="AJP_"
的属性,开发人员不应采用快捷方式并通过HTTP头启用发送auth属性:https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPSpoofChecking
我尝试使用
HttpServletRequest req = (HttpServletRequest) FacesContext.getCurrentInstance()
.getExternalContext().getRequest();
Enumeration<String> e = req.getAttributeNames();
但无论我怎么做,都不会出现任何狗屁属性
# 1 楼答案
经过两个小时的努力找出我做错了什么。我尝试使用按名称检索属性
出于某种原因,这是可行的。即使
"uid"
没有列在getAttributeNames()中它闻起来像是一个bug,或者AJP和Spring或JSF之间的通信时间错误