package org.jboss.web.tomcat.security;
import java.io.IOException;
import java.security.Principal;
import javax.servlet.ServletException;
import org.apache.catalina.connector.Request;
import org.apache.catalina.connector.Response;
import org.apache.catalina.valves.ValveBase;
public class CustomPrincipalValve
extends ValveBase
{
public void invoke(Request request, Response response)
throws IOException, ServletException
{
Principal user = request.getUserPrincipal();
if( user instanceof JBossGenericPrincipal )
{
JBossGenericPrincipal guser = (JBossGenericPrincipal) user;
Principal realUser = guser.getCallerPrincipal();
request.setUserPrincipal(realUser);
}
getNext().invoke(request, response);
}
}