This class can not be directly instantiated so the constructor is protected. All extending classes must make a call
to super(...)
with the expected parameters.
The service that the Credential Manager is running under. Imperative will set this to the cliName
The display name of this manager. Used in messaging/logging.
The display name of this manager. Used in messaging/logging.
The service that the Credential Manager is running under. Imperative will set this to the cliName
Delete credentials for an account managed by the credential manager.
The account (or profile identifier) associated with credentials
Called by Imperative to delete the credentials of a profile.
A user account (or profile identifier)
This is an optional method that your Credential Manager may choose to implement. If present, it will be called by the CredentialManagerFactory.initialize function to allow your manager to do more initialization after the class has become instantiated.
Also, since asynchronous operations are not well handled in the constructor, this allows your Credential Manager to perform any asynchronous operations needed. Your initialize method just has to return the promise and we'll handle the rest.
A promise of the completion of your initialize function.
Load credentials for an account managed by the credential manager.
The account (or profile identifier) associated with credentials
Set to true if failure to find credentials should be ignored
The username and password associated with the account.
Called by Imperative to load the credentials of a profile.
A user account (or profile identifier)
Set to true if failure to find credentials should be ignored
Save credentials for an account managed by the credential manager.
The account (or profile identifier) associated with credentials
Value to be securely stored
Called by Imperative to save the credentials for a profile.
A user account (or profile identifier)
A base64 encoded username:password string
Generated using TypeDoc
The abstract credential manager defines basic methods that must be implemented by any credential manager provided to Imperative. The abstract class is used by various methods for proper typing information.
All credential managers will be instantiated by CredentialManagerFactory.initialize and are expected to extend the AbstractCredentialManager. This is enforced by requiring your class constructor to follow the implementation rules specified by the ICredentialManagerConstructor.
The constructor signature that the ICredentialManagerConstructor specifies will always be identical to the constructor signature of the AbstractCredentialManager superclass.
Imperative will provide your CLI with a default manager, DefaultCredentialManager. If the default provided is not to your liking, you can provide your own manager as a parameter on Imperative.init at startup. This is done by providing it as part of the IImperativeConfig.overrides object.
{@link IImperativeOverrides.CredentialManager}