使用在Apache上运行的Shibboleth身份验证以及在后端运行Tomcat7时,Apache通过mod_proxy_ajp发送所有内容时遇到了一个奇怪的问题。Shibboleth的参数也是如此。
在文档中明确声明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();
但是,无论我尝试什么,都不会出现Shibboleth属性。
经过两个小时的尝试,找出我做错了什么。我试图使用名称检索属性。
req.getAttribute("uid");
并且出于某种原因。即使"uid"
getAttributeNames()中未列出;
它闻起来像是一个错误,或者AJP与Spring或JSF之间的通讯时间不正确。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句