private HandleRepositoryFactory hrf;
private long ticketExp;
+ private String username=null;
private HandleServiceSAML hsSAML;
private String rep;
private static Logger log = Logger.getLogger(HandleServlet.class.getName());;
getInitParams();
log.info("HS: Loading init params");
- System.err.println("HS: initializing");
try {
edu.internet2.middleware.eduPerson.Init.init();
- InputStream is = sctx.getResourceAsStream
- (getInitParameter("KSpath"));
+ InputStream is = sctx.getResourceAsStream(getInitParameter("KSpath"));
hsSAML = new HandleServiceSAML( getInitParameter("domain"),
getInitParameter("AAurl"),
getInitParameter("HSname"),
}
ticketExp = Long.parseLong(ticket);
+ username=getInitParameter("username");
+
if ( getInitParameter("domain") == null ||
getInitParameter("domain").equals("")) {
throw new ServletException("Cannot find host domain in init parameters");
req.setAttribute("shire", req.getParameter("shire"));
req.setAttribute("target", req.getParameter("target"));
- he = new HandleEntry(req.getRemoteUser(), req.getAuthType(), ticketExp);
+ he = new HandleEntry(
+ (username==null || username.equalsIgnoreCase("REMOTE_USER")) ? req.getRemoteUser() : req.getHeader(username),
+ req.getAuthType(),
+ ticketExp );
log.info("Issued Handle (" + he.getHandle() + ") to (" + he.getUsername() + ")");
hrf.insertHandleEntry( he );