Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  //
  //  ========================================================================
  //  Copyright (c) 1995-2012 Mort Bay Consulting Pty. Ltd.
  //  ------------------------------------------------------------------------
  //  All rights reserved. This program and the accompanying materials
  //  are made available under the terms of the Eclipse Public License v1.0
  //  and Apache License v2.0 which accompanies this distribution.
  //
  //      The Eclipse Public License is available at
 //      http://www.eclipse.org/legal/epl-v10.html
 //
 //      The Apache License v2.0 is available at
 //      http://www.opensource.org/licenses/apache2.0.php
 //
 //  You may elect to redistribute this code under either of these licenses.
 //  ========================================================================
 //
 
 package org.eclipse.jetty.security.authentication;
 
 
 
 
 public class SpnegoAuthenticator extends LoginAuthenticator
 {
     private static final Logger LOG = Log.getLogger(SpnegoAuthenticator.class);
     
     private String _authMethod = .;
     
     public SpnegoAuthenticator()
     {
     	
     }
    
    
Allow for a custom authMethod value to be set for instances where SPENGO may not be appropriate

Parameters:
authMethod
 
     public SpnegoAuthenticatorString authMethod )
     {
     	 = authMethod;
     }
     
     public String getAuthMethod()
     {
         return ;
     }
 
 
 
     public Authentication validateRequest(ServletRequest requestServletResponse responseboolean mandatorythrows ServerAuthException
     {        
         HttpServletRequest req = (HttpServletRequest)request;
         HttpServletResponse res = (HttpServletResponse)response;
         
         String header = req.getHeader(.);
 
         if (!mandatory)
         {
             return new DeferredAuthentication(this);
         }
         
         // check to see if we have authorization headers required to continue
         if ( header == null )
         {
             try
             {
             	 if (DeferredAuthentication.isDeferred(res))
             	 {
                      return .;
             	 }
             	 
                 .debug("SpengoAuthenticator: sending challenge");
                 res.setHeader(..);
                 res.sendError(.);
                 return .;
             } 
             catch (IOException ioe)
             {
                 throw new ServerAuthException(ioe);
             }       
         }
         else if (header != null && header.startsWith(.))
         {
             String spnegoToken = header.substring(10);
            
            UserIdentity user = login(null,spnegoTokenrequest);
            
            if ( user != null )
            {
                return new UserAuthentication(getAuthMethod(),user);
            }
        }
        
        return .;
    }
    public boolean secureResponse(ServletRequest requestServletResponse responseboolean mandatoryUser validatedUserthrows ServerAuthException
    {
        return true;
    }
New to GrepCode? Check out our FAQ X