Class AuthPolicy
- java.lang.Object
-
- org.apache.commons.httpclient.auth.AuthPolicy
-
public abstract class AuthPolicy extends java.lang.Object
Authentication policy class. The Authentication policy provides corresponding authentication scheme interfrace for a given type of authorization challenge.The following specifications are provided:
- Basic: Basic authentication scheme as defined in RFC2617 (considered inherently insecure, but most widely supported)
- Digest: Digest authentication scheme as defined in RFC2617
- NTLM: The NTLM scheme is a proprietary Microsoft Windows Authentication protocol (considered to be the most secure among currently supported authentication schemes)
- Since:
- 3.0
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
AUTH_SCHEME_PRIORITY
The key used to look up the list of IDs of supportedauthentication schemes
in their order of preference.static java.lang.String
BASIC
Basic authentication scheme as defined in RFC2617 (considered inherently insecure, but most widely supported)static java.lang.String
DIGEST
Digest authentication scheme as defined in RFC2617.static java.lang.String
NTLM
The NTLM scheme is a proprietary Microsoft Windows Authentication protocol (considered to be the most secure among currently supported authentication schemes).
-
Constructor Summary
Constructors Constructor Description AuthPolicy()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static AuthScheme
getAuthScheme(java.lang.String id)
Gets theauthentication scheme
with the given ID.static java.util.List
getDefaultAuthPrefs()
Returns a list containing all registeredauthentication schemes
in their default order.static void
registerAuthScheme(java.lang.String id, java.lang.Class clazz)
Registers a class implementing anauthentication scheme
with the given identifier.static void
unregisterAuthScheme(java.lang.String id)
Unregisters the class implementing anauthentication scheme
with the given ID.
-
-
-
Field Detail
-
AUTH_SCHEME_PRIORITY
public static final java.lang.String AUTH_SCHEME_PRIORITY
The key used to look up the list of IDs of supportedauthentication schemes
in their order of preference. The scheme IDs are stored in aCollection
asString
s.If several schemes are returned in the WWW-Authenticate or Proxy-Authenticate header, this parameter defines which
authentication schemes
takes precedence over others. The first item in the collection represents the most preferredauthentication scheme
, the last item represents the ID of the least preferred one.- See Also:
DefaultHttpParams
, Constant Field Values
-
NTLM
public static final java.lang.String NTLM
The NTLM scheme is a proprietary Microsoft Windows Authentication protocol (considered to be the most secure among currently supported authentication schemes).- See Also:
- Constant Field Values
-
DIGEST
public static final java.lang.String DIGEST
Digest authentication scheme as defined in RFC2617.- See Also:
- Constant Field Values
-
BASIC
public static final java.lang.String BASIC
Basic authentication scheme as defined in RFC2617 (considered inherently insecure, but most widely supported)- See Also:
- Constant Field Values
-
-
Method Detail
-
registerAuthScheme
public static void registerAuthScheme(java.lang.String id, java.lang.Class clazz)
Registers a class implementing anauthentication scheme
with the given identifier. If a class with the given ID already exists it will be overridden. This ID is the same one used to retrieve theauthentication scheme
fromgetAuthScheme(String)
.Please note that custom authentication preferences, if used, need to be updated accordingly for the new
authentication scheme
to take effect.- Parameters:
id
- the identifier for this schemeclazz
- the class to register- See Also:
getAuthScheme(String)
,AUTH_SCHEME_PRIORITY
-
unregisterAuthScheme
public static void unregisterAuthScheme(java.lang.String id)
Unregisters the class implementing anauthentication scheme
with the given ID.- Parameters:
id
- the ID of the class to unregister
-
getAuthScheme
public static AuthScheme getAuthScheme(java.lang.String id) throws java.lang.IllegalStateException
Gets theauthentication scheme
with the given ID.- Parameters:
id
- theauthentication scheme
ID- Returns:
authentication scheme
- Throws:
java.lang.IllegalStateException
- if a scheme with the ID cannot be found
-
getDefaultAuthPrefs
public static java.util.List getDefaultAuthPrefs()
Returns a list containing all registeredauthentication schemes
in their default order.- Returns:
authentication scheme
-
-