public interface AuthConfigProvider
ClientAuthConfig
or ServerAuthConfig
objects.
Authentication context configuration objects serve as sources of
the authentication context objects, that is, ClientAuthContext
or
ServerAuthContext
objects, for a specific message layer
and messaging context.
Authentication context objects encapsulate the initialization,
configuration, and invocation of authentication modules, that is,
ClientAuthModule
or ServerAuthModule
objects, for
a specific message exchange within a specific message layer and
messaging context.
Callers do not directly operate on authentication modules.
Instead, they rely on a ClientAuthContext or ServerAuthContext
to manage the invocation of modules. A caller obtains an instance
of ClientAuthContext or ServerAuthContext by calling the respective
getAuthContext
method on a ClientAuthConfig
or ServerAuthConfig
object obtained from an
AuthConfigProvider.
The following represents a typical sequence of calls for obtaining a client authentication context object, and then using it to secure a request.
Every implementation of this interface must offer a public, two argument constructor with the following signature:
public AuthConfigProviderImpl(Map properties, AuthConfigFactory factory);
where the properties argument may be null, and where all values and
keys occurring in a non-null properties argument must be of type String.
When the factory argument is not null, it indicates that the
provider is to self-register at the factory by calling the following
method on the factory:
public String
registerConfigProvider(AuthConfigProvider provider, String layer,
String appContext, String description);
ClientAuthContext
,
ServerAuthContext
,
AuthConfigFactory
Modifier and Type | Method and Description |
---|---|
ClientAuthConfig |
getClientAuthConfig(String layer,
String appContext,
CallbackHandler handler)
Get an instance of ClientAuthConfig from this provider.
|
ServerAuthConfig |
getServerAuthConfig(String layer,
String appContext,
CallbackHandler handler)
Get an instance of ServerAuthConfig from this provider.
|
void |
refresh()
Causes a dynamic configuration provider to update its internal
state such that any resulting change to its state is reflected in
the corresponding authentication context configuration objects
previously created by the provider within the current process context.
|
ClientAuthConfig getClientAuthConfig(String layer, String appContext, CallbackHandler handler) throws AuthException
The implementation of this method returns a ClientAuthConfig instance that describes the configuration of ClientAuthModules at a given message layer, and for use in an identified application context.
layer
- A String identifying the message layer
for the returned ClientAuthConfig object.
This argument must not be null.appContext
- A String that identifies the messaging context
for the returned ClientAuthConfig object.
This argument must not be null.handler
- A CallbackHandler to be passed to the ClientAuthModules
encapsulated by ClientAuthContext objects derived from the
returned ClientAuthConfig. This argument may be null,
in which case the implementation may assign a default handler
to the configuration.
The CallbackHandler assigned to the configuration must support
the Callback objects required to be supported by the profile
of this specification being followed by the messaging runtime.
The CallbackHandler instance must be initialized with any
application context needed to process the required callbacks
on behalf of the corresponding application.AuthException
- If this provider does not support the
assignment of a default CallbackHandler to the returned
ClientAuthConfig.SecurityException
- If the caller does not have permission
to retrieve the configuration.ServerAuthConfig getServerAuthConfig(String layer, String appContext, CallbackHandler handler) throws AuthException
The implementation of this method returns a ServerAuthConfig instance that describes the configuration of ServerAuthModules at a given message layer, and for a particular application context.
layer
- A String identifying the message layer
for the returned ServerAuthConfig object.
This argument must not be null.appContext
- A String that identifies the messaging context
for the returned ServerAuthConfig object.
This argument must not be null.handler
- A CallbackHandler to be passed to the ServerAuthModules
encapsulated by ServerAuthContext objects derived from the
returned ServerAuthConfig. This argument may be null,
in which case the implementation may assign a default handler
to the configuration.
The CallbackHandler assigned to the configuration must support
the Callback objects required to be supported by the profile
of this specification being followed by the messaging runtime.
The CallbackHandler instance must be initialized with any
application context needed to process the required callbacks
on behalf of the corresponding application.AuthException
- If this provider does not support the
assignment of a default CallbackHandler to the returned
ServerAuthConfig.SecurityException
- If the caller does not have permission
to retrieve the configuration.void refresh()
SecurityException
- If the caller does not have permission
to refresh the provider, or if an error occurred during the
refresh.Copyright © 1996-2017, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.