Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.httpclient.auth
Class AuthPolicy

    java.lang.Object
      org.apache.commons.httpclient.auth.AuthPolicy

    public abstract class AuthPolicy

extends 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
Version:
  $Revision: 480424 $
Author:
  Oleg Kalnichevski

Field Summary
`static String` | `AUTH_SCHEME_PRIORITY` The key used to look up the list of IDs of supported `authentication schemes` in their order of preference.
`static String` | `BASIC` Basic authentication scheme as defined in RFC2617 (considered inherently insecure, but most widely supported)
`static String` | `DIGEST` Digest authentication scheme as defined in RFC2617.
`protected static Log` | `LOG` Log object.
`static 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
`AuthPolicy()`

Method Summary
`static AuthScheme` | `getAuthScheme(String id)` Gets the `authentication scheme` with the given ID.
`static List` | `getDefaultAuthPrefs()` Returns a list containing all registered `authentication schemes` in their default order.
`static void` | `registerAuthScheme(String id, Class clazz)` Registers a class implementing an `authentication scheme` with the given identifier.
`static void` | `unregisterAuthScheme(String id)` Unregisters the class implementing an `authentication scheme` with the given ID.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### AUTH_SCHEME_PRIORITY

    public static final String AUTH_SCHEME_PRIORITY

  The key used to look up the list of IDs of supported `authentication schemes` in their order of preference. The scheme IDs are stored in a `Collection` as `String`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 preferred `authentication scheme`, the last item represents the ID of the least preferred one.

  See Also:
    `DefaultHttpParams`, Constant Field Values

### NTLM

    public static final 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 String DIGEST

  Digest authentication scheme as defined in RFC2617.

  See Also:
    Constant Field Values

### BASIC

    public static final String BASIC

  Basic authentication scheme as defined in RFC2617 (considered inherently insecure, but most widely supported)

  See Also:
    Constant Field Values

### LOG

    protected static final Log LOG

  Log object.

Constructor Detail

### AuthPolicy

    public AuthPolicy()

Method Detail

### registerAuthScheme

    public static void registerAuthScheme(String id,
                                          Class clazz)

  Registers a class implementing an `authentication 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 the `authentication scheme` from `getAuthScheme(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 scheme
    `clazz` - the class to register
  See Also:
    `getAuthScheme(String)`, `AUTH_SCHEME_PRIORITY`

### unregisterAuthScheme

    public static void unregisterAuthScheme(String id)

  Unregisters the class implementing an `authentication scheme` with the given ID.

  Parameters:
    `id` - the ID of the class to unregister

### getAuthScheme

    public static AuthScheme getAuthScheme(String id)
                                    throws IllegalStateException

  Gets the `authentication scheme` with the given ID.

  Parameters:
    `id` - the `authentication scheme` ID
  Returns:
    `authentication scheme`
  Throws:
    `IllegalStateException` - if a scheme with the ID cannot be found

### getDefaultAuthPrefs

    public static List getDefaultAuthPrefs()

  Returns a list containing all registered `authentication schemes` in their default order.

  Returns:
    `authentication scheme`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.