All Packages Class Hierarchy This Package Previous Next Index
Class com.ibm.as400.access.ProfileTokenImplNative
java.lang.Object
|
+----com.ibm.as400.access.ProfileTokenImplNative
- public class ProfileTokenImplNative
- extends Object
- implements ProfileTokenImpl
The ProfileTokenImplNative class provides an implementation for
behavior delegated by a ProfileTokenCredential object.
-
ProfileTokenImplNative()
-
-
destroy()
- Destroy or clear sensitive information maintained
by the credential implementation.
-
exchangeSeed(byte[])
- Exchange a random seed with the caller.
-
generateToken(String, byte[], int, int)
- Generates and returns a new profile token based on
the provided information.
-
getTimeToExpiration()
- Returns the number of seconds before the
credential is due to expire.
-
getVersion()
- Returns the version number for the implementation.
-
isCurrent()
- Indicates if the credential is still considered valid
for authenticating to associated AS/400 services
or performing related actions.
-
refresh()
- Updates or extends the validity period for the credential.
-
refresh(int, int)
- Updates or extends the validity period for the credential.
-
setCredential(AS400Credential)
- Sets the credential delegating behavior to
the implementation object.
-
swap(boolean)
- Attempts to swap the OS/400 thread identity based on this
credential.
ProfileTokenImplNative
public ProfileTokenImplNative()
destroy
public void destroy() throws DestroyFailedException
- Destroy or clear sensitive information maintained
by the credential implementation.
Subsequent requests may result in a NullPointerException.
This class will also attempt to remove the associated
profile token from the AS/400 system.
- Throws: DestroyFailedException
- If errors occur while destroying or clearing
credential data.
exchangeSeed
public byte[] exchangeSeed(byte seed[])
- Exchange a random seed with the caller.
The exchanged seeds define the addr & mask
for encoded values in subsequent requests.
- Parameters:
- seed
- The caller seed.
- Returns:
- The generated seed.
generateToken
public byte[] generateToken(String uid,
byte pwd[],
int type,
int timeoutInterval) throws RetrieveFailedException
- Generates and returns a new profile token based on
the provided information.
- Parameters:
- uid
- The name of the user profile for which the token
is to be generated.
- pwd
- The user profile password (encoded).
- type
- The type of token.
Possible types are defined as fields on the ProfileTokenCredential class:
- TYPE_SINGLE_USE
- TYPE_MULTIPLE_USE_NON_RENEWABLE
- TYPE_MULTIPLE_USE_RENEWABLE
- timeoutInterval
- The number of seconds to expiration.
- Returns:
- The token bytes.
- Throws: RetrieveFailedException
- If errors occur while generating the token.
getTimeToExpiration
public int getTimeToExpiration() throws RetrieveFailedException
- Returns the number of seconds before the
credential is due to expire.
- Returns:
- The number of seconds before expiration;
zero (0) if already expired.
- Throws: RetrieveFailedException
- If errors occur while retrieving
timeout information.
getVersion
public int getVersion()
- Returns the version number for the implementation.
Used to ensure the implementation is valid for
specific functions.
- Returns:
- The version number.
isCurrent
public boolean isCurrent()
- Indicates if the credential is still considered valid
for authenticating to associated AS/400 services
or performing related actions.
An exception is not thrown on failure to remain
consistent with the Refreshable interface (even
though some credential classes currently avoid the
dependency established by implementing the
interface).
- Returns:
- true if valid; false if not valid or if the
operation fails.
refresh
public void refresh() throws RefreshFailedException
- Updates or extends the validity period for the credential.
- Throws: RefreshFailedException
- If errors occur during refresh.
refresh
public byte[] refresh(int type,
int timeoutInterval) throws RefreshFailedException
- Updates or extends the validity period for the credential.
Generates a new profile token based on the previously
established token with the given type
and timeoutInterval.
This method is provided to handle cases where it is
desirable to allow for a more restrictive type of token
or a different timeout interval when a new token is
generated during the refresh.
- Parameters:
- type
- The type of token.
Possible types are defined as fields on the ProfileTokenCredential class:
- TYPE_SINGLE_USE
- TYPE_MULTIPLE_USE_NON_RENEWABLE
- TYPE_MULTIPLE_USE_RENEWABLE
- timeoutInterval
- The number of seconds before expiration.
- Returns:
- The new token.
- Throws: RefreshFailedException
- If errors occur during refresh.
setCredential
public void setCredential(AS400Credential credential)
- Sets the credential delegating behavior to
the implementation object.
- Parameters:
- credential
- The associated credential.
swap
public AS400Credential swap(boolean genRtnCr) throws SwapFailedException
- Attempts to swap the OS/400 thread identity based on this
credential.
- Parameters:
- genRtnCr
- Indicates whether a return credential should be
generated, even if supported. When appropriate,
not generating a return credential can
improve performance and avoid potential problems
in creating the credential.
- Returns:
- A credential capable of swapping back to
the original identity; classes not supporting
this capability will return null. This value
will also be null if genRtnCr is false.
- Throws: SwapFailedException
- If errors occur while swapping thread identity.
- Throws: SecurityException
- If the caller does not have permission to
modify the OS thread identity.
All Packages Class Hierarchy This Package Previous Next Index