Merge branch 'ssoAdaptations' into develop

This commit is contained in:
Robin Eklund 2011-07-26 11:18:55 +02:00
commit 1f8425dce7

@ -33,17 +33,49 @@ public class AdminServerEnvironmentSettingsPage extends AbstractAdminSettingsPag
List<KeyValuePair<String>> list = new ArrayList<KeyValuePair<String>>();
list.add(new KeyValuePair<String>("[CALL] getRemoteUser",rawRequest.getRemoteUser()));
list.add(new KeyValuePair<String>("[CALL] getAuthType",rawRequest.getAuthType()));
@SuppressWarnings("rawtypes") Enumeration attributes = rawRequest.getAttributeNames();
while(attributes.hasMoreElements()){
final String key = (String)attributes.nextElement();
final String value = rawRequest.getAttribute(key).toString();
list.add(new KeyValuePair<String>("[ATTR] "+key,value));
addManualAttributes(rawRequest,list);
{
@SuppressWarnings("rawtypes") Enumeration attributes = rawRequest.getAttributeNames();
while(attributes.hasMoreElements()){
final String key = (String)attributes.nextElement();
final String value = rawRequest.getAttribute(key).toString();
list.add(new KeyValuePair<String>("[ATTR] "+key,value));
}
}
Map<String,String> envs = System.getenv();
for(String key : envs.keySet()){
list.add(new KeyValuePair<String>("[ENV] "+key,envs.get(key)));
{
@SuppressWarnings("rawtypes") Enumeration headers = rawRequest.getHeaderNames();
while(headers.hasMoreElements()){
final String key = (String)headers.nextElement();
final String value = rawRequest.getHeader(key);
list.add(new KeyValuePair<String>("[HEAD] "+key,value));
}
}
{
Map<String,String> envs = System.getenv();
for(String key : envs.keySet()){
list.add(new KeyValuePair<String>("[ENV] "+key,envs.get(key)));
}
}
return list;
}
private void addManualAttributes(final HttpServletRequest request, final List<KeyValuePair<String>> list){
final String[] attrs = {"Shib-Application-ID","Shib-Session-ID","Shib-Identity-Provider",
"Shib-Authentication-Instant","Shib-Authentication-Method","Shib-AuthnContext-Class",
"Shib-AuthnContext-Decl","Shib-Identity-Provider","mail","cn","eppn","gidNumber","givenName","sn","uid","memberOf"};
for(final String attr : attrs){
addPrefixedManualAttribute(request,list,"",attr);
addPrefixedManualAttribute(request,list,"AJP_",attr);
addPrefixedManualAttribute(request,list,"AJP-",attr);
}
}
private void addPrefixedManualAttribute(final HttpServletRequest request, final List<KeyValuePair<String>> list, final String prefix, final String attr){
final String scanAttr = prefix+attr;
if(request.getAttribute(scanAttr) != null)
list.add(new KeyValuePair<String>("[M-ATTR] "+scanAttr,request.getAttribute(scanAttr).toString()));
if(request.getHeader(scanAttr) != null)
list.add(new KeyValuePair<String>("[M-HEAD] "+scanAttr,request.getHeader(scanAttr)));
if(System.getenv(scanAttr) != null)
list.add(new KeyValuePair<String>("[M-ENV] "+scanAttr,System.getenv(scanAttr)));
}
}