Documentation
¶
Index ¶
- func NewDefaultCredentialStoreFactory() *build.Factory
- type CredentialParams
- func NewCredentialParams(values map[string]string) *CredentialParams
- func NewCredentialParamsFromConfig(config *config.ConfigParams) *CredentialParams
- func NewCredentialParamsFromMaps(maps ...map[string]string) *CredentialParams
- func NewCredentialParamsFromString(line string) *CredentialParams
- func NewCredentialParamsFromTuples(tuples ...interface{}) *CredentialParams
- func NewCredentialParamsFromTuplesArray(tuples []interface{}) *CredentialParams
- func NewCredentialParamsFromValue(value interface{}) *CredentialParams
- func NewEmptyCredentialParams() *CredentialParams
- func NewManyCredentialParamsFromConfig(config *config.ConfigParams) []*CredentialParams
- func (c *CredentialParams) AccessId() string
- func (c *CredentialParams) AccessKey() string
- func (c *CredentialParams) Password() string
- func (c *CredentialParams) SetAccessId(value string)
- func (c *CredentialParams) SetAccessKey(value string)
- func (c *CredentialParams) SetPassword(value string)
- func (c *CredentialParams) SetStoreKey(value string)
- func (c *CredentialParams) SetUsername(value string)
- func (c *CredentialParams) StoreKey() string
- func (c *CredentialParams) UseCredentialStore() bool
- func (c *CredentialParams) Username() string
- type CredentialResolver
- func (c *CredentialResolver) Add(credential *CredentialParams)
- func (c *CredentialResolver) Configure(config *config.ConfigParams)
- func (c *CredentialResolver) GetAll() []*CredentialParams
- func (c *CredentialResolver) Lookup(correlationId string) (*CredentialParams, error)
- func (c *CredentialResolver) SetReferences(references refer.IReferences)
- type ICredentialStore
- type MemoryCredentialStore
- func (c *MemoryCredentialStore) Configure(config *config.ConfigParams)
- func (c *MemoryCredentialStore) Lookup(correlationId string, key string) (result *CredentialParams, err error)
- func (c *MemoryCredentialStore) ReadCredentials(config *config.ConfigParams)
- func (c *MemoryCredentialStore) Store(correlationId string, key string, credential *CredentialParams) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewDefaultCredentialStoreFactory ¶
Create a new instance of the factory. Returns *build.Factory
Types ¶
type CredentialParams ¶
type CredentialParams struct {
config.ConfigParams
}
Contains credentials to authenticate against external services. They are used together with connection parameters, but usually stored in a separate store, protected from unauthorized access.
Configuration parameters
store_key: key to retrieve parameters from credential store username: user name user: alternative to username password: user password pass: alternative to password access_id: application access id client_id: alternative to access_id access_key: application secret key client_key: alternative to access_key secret_key: alternative to access_key
In addition to standard parameters CredentialParams may contain any number of custom parameters
see ConfigParams
see ConnectionParams
see CredentialResolver
see ICredentialStore
Example
credential := NewCredentialParamsFromTuples( "user", "jdoe", "pass", "pass123", "pin", "321" ); username := credential.Username(); // Result: "jdoe" password := credential.Password(); // Result: "pass123"
func NewCredentialParams ¶
func NewCredentialParams(values map[string]string) *CredentialParams
Creates a new credential parameters and fills it with values. Parameters:
- values map[string]string an object to be converted into key-value pairs to initialize these credentials.
Returns *CredentialParams
func NewCredentialParamsFromConfig ¶
func NewCredentialParamsFromConfig(config *config.ConfigParams) *CredentialParams
Retrieves a single CredentialParams from configuration parameters from "credential" section. If "credentials" section is present instead, then is returns only the first credential element. Parameters:
- config *config.ConfigParams ConfigParams, containing a section named "credential(s)".
Returns []*CredentialParams the generated CredentialParams object.
func NewCredentialParamsFromMaps ¶
func NewCredentialParamsFromMaps(maps ...map[string]string) *CredentialParams
Static method for creating a CredentialParams using the maps passed as parameters. Parameters:
- maps ...map[string]string the maps passed to this method to create a StringValueMap with.
Returns *CredentialParams the CredentialParams created.
func NewCredentialParamsFromString ¶
func NewCredentialParamsFromString(line string) *CredentialParams
Creates a new CredentialParams object filled with key-value pairs serialized as a string. Parameters:
- line string a string with serialized key-value pairs as "key1=value1;key2=value2;..." Example: "Key1=123;Key2=ABC;Key3=2016-09-16T00:00:00.00Z"
Returns *CredentialParams a new CredentialParams object.
func NewCredentialParamsFromTuples ¶
func NewCredentialParamsFromTuples(tuples ...interface{}) *CredentialParams
Creates a new CredentialParams object filled with provided key-value pairs called tuples. Tuples parameters contain a sequence of key1, value1, key2, value2, ... pairs. Parameters:
- tuples ...interface{} the tuples to fill a new CredentialParams object.
Returns *CredentialParams a new CredentialParams object.
func NewCredentialParamsFromTuplesArray ¶
func NewCredentialParamsFromTuplesArray(tuples []interface{}) *CredentialParams
Static method for creating a CredentialParams from an array of tuples. Parameters:
- tuples []interface{} the key-value tuples array to initialize the new StringValueMap with.
Returns CredentialParams the CredentialParams created and filled by the 'tuples' array provided.
func NewCredentialParamsFromValue ¶
func NewCredentialParamsFromValue(value interface{}) *CredentialParams
Method that creates a ConfigParams object based on the values that are stored in the 'value' object's properties. Parameters:
- value interface{} configuration parameters in the form of an object with properties.
Returns *ConfigParams generated ConfigParams.
func NewEmptyCredentialParams ¶
func NewEmptyCredentialParams() *CredentialParams
Creates a new credential parameters and fills it with values. Returns *CredentialParams
func NewManyCredentialParamsFromConfig ¶
func NewManyCredentialParamsFromConfig(config *config.ConfigParams) []*CredentialParams
Retrieves all CredentialParams from configuration parameters from "credentials" section. If "credential" section is present instead, than it returns a list with only one CredentialParams. Parameters:
- config *config.ConfigParams a configuration parameters to retrieve credentials
Returns []*CredentialParams a list of retrieved CredentialParams
func (*CredentialParams) AccessId ¶
func (c *CredentialParams) AccessId() string
Gets the application access id. The value can be stored in parameters "access_id" pr "client_id" Returns string the application access id.
func (*CredentialParams) AccessKey ¶
func (c *CredentialParams) AccessKey() string
Gets the application secret key. The value can be stored in parameters "access_key", "client_key" or "secret_key". Returns string the application secret key.
func (*CredentialParams) Password ¶
func (c *CredentialParams) Password() string
Get the user password. The value can be stored in parameters "password" or "pass". Returns string the user password.
func (*CredentialParams) SetAccessId ¶
func (c *CredentialParams) SetAccessId(value string)
Sets the application access id. Parameters:
- value: string a new application access id.
func (*CredentialParams) SetAccessKey ¶
func (c *CredentialParams) SetAccessKey(value string)
Sets the application secret key. Parameters
- value string a new application secret key.
func (*CredentialParams) SetPassword ¶
func (c *CredentialParams) SetPassword(value string)
Sets the user password. Parameters:
- value string a new user password.
func (*CredentialParams) SetStoreKey ¶
func (c *CredentialParams) SetStoreKey(value string)
Sets the key to retrieve these parameters from CredentialStore. Parameters:
- value string a new key to retrieve credentials.
func (*CredentialParams) SetUsername ¶
func (c *CredentialParams) SetUsername(value string)
Sets the user name. Parameters:
- value string a new user name.
func (*CredentialParams) StoreKey ¶
func (c *CredentialParams) StoreKey() string
Gets the key to retrieve these credentials from CredentialStore. If this key is null, than all parameters are already present. Returns string the store key to retrieve credentials.
func (*CredentialParams) UseCredentialStore ¶
func (c *CredentialParams) UseCredentialStore() bool
Checks if these credential parameters shall be retrieved from CredentialStore. The credential parameters are redirected to CredentialStore when store_key parameter is set. Returns bool true if credentials shall be retrieved from CredentialStore
func (*CredentialParams) Username ¶
func (c *CredentialParams) Username() string
Gets the user name. The value can be stored in parameters "username" or "user". Returns string the user name.
type CredentialResolver ¶
type CredentialResolver struct {
// contains filtered or unexported fields
}
Helper class to retrieve component credentials.
If credentials are configured to be retrieved from ICredentialStore, it automatically locates ICredentialStore in component references and retrieve credentials from there using store_key parameter.
Configuration parameters
credential: store_key: (optional) a key to retrieve the credentials from ICredentialStore ... other credential parameters credentials: alternative to credential [credential params 1]: first credential parameters ... credential parameters for key 1 ... [credential params N]: Nth credential parameters ... credential parameters for key N
References *:credential-store:*:*:1.0 (optional) Credential stores to resolve credentials see CredentialParams
see ICredentialStore
Example
config := NewConfigParamsFromTuples( "credential.user", "jdoe", "credential.pass", "pass123" ); credentialResolver := NewCredentialResolver(); credentialResolver.Configure(config); credentialResolver.SetReferences(references); credentialResolver.Lookup("123", (err, credential) => { // Now use credential... });
func NewCredentialResolver ¶
func NewCredentialResolver(config *config.ConfigParams, references refer.IReferences) *CredentialResolver
Creates a new instance of credentials resolver. Parameters:
- config *config.ConfigParams component configuration parameters
- references refer.IReferences component references
Returns *CredentialResolver
func NewEmptyCredentialResolver ¶
func NewEmptyCredentialResolver() *CredentialResolver
Creates a new instance of credentials resolver. Returns *CredentialResolver
func (*CredentialResolver) Add ¶
func (c *CredentialResolver) Add(credential *CredentialParams)
Adds a new credential to component credentials Parameters:
- credential *CredentialParams new credential parameters to be added
func (*CredentialResolver) Configure ¶
func (c *CredentialResolver) Configure(config *config.ConfigParams)
Configures component by passing configuration parameters. Parameters:
- config *config.ConfigParams configuration parameters to be set.
func (*CredentialResolver) GetAll ¶
func (c *CredentialResolver) GetAll() []*CredentialParams
Gets all credentials configured in component configuration. Redirect to CredentialStores is not done at this point. If you need fully fleshed credential use lookup method instead. Returns []*CredentialParams a list with credential parameters
func (*CredentialResolver) Lookup ¶
func (c *CredentialResolver) Lookup(correlationId string) (*CredentialParams, error)
Looks up component credential parameters. If credentials are configured to be retrieved from Credential store it finds a ICredentialStore and lookups credentials there. Parameters:
- correlationId string
(optional) transaction id to trace execution through call chain. Returns *CredentialParams? error
func (*CredentialResolver) SetReferences ¶
func (c *CredentialResolver) SetReferences(references refer.IReferences)
Sets references to dependent components. Parameters:
- references refer.IReferences references to locate the component dependencies.
type ICredentialStore ¶
type ICredentialStore interface { // Stores credential parameters into the store. Store(correlationId string, key string, credential *CredentialParams) error // Lookups credential parameters by its key. Lookup(correlationId string, key string) (*CredentialParams, error) }
Interface for credential stores which are used to store and lookup credentials to authenticate against external services.
type MemoryCredentialStore ¶
type MemoryCredentialStore struct {
// contains filtered or unexported fields
}
Credential store that keeps credentials in memory.
Configuration parameters
[credential key 1]: ... credential parameters for key 1 [credential key 2]: ... credential parameters for key N ...
see ICredentialStore
see CredentialParams
Example
config := NewConfigParamsFromTuples( "key1.user", "jdoe", "key1.pass", "pass123", "key2.user", "bsmith", "key2.pass", "mypass" ); credentialStore := NewEmptyMemoryCredentialStore(); credentialStore.ReadCredentials(config); res, err := credentialStore.Lookup("123", "key1");
func NewEmptyMemoryCredentialStore ¶
func NewEmptyMemoryCredentialStore() *MemoryCredentialStore
Creates a new instance of the credential store. Returns *MemoryCredentialStore
func NewMemoryCredentialStore ¶
func NewMemoryCredentialStore(config *config.ConfigParams) *MemoryCredentialStore
Creates a new instance of the credential store. Parameters:
- config *config.ConfigParams configuration with credential parameters.
Returns *MemoryCredentialStore
func (*MemoryCredentialStore) Configure ¶
func (c *MemoryCredentialStore) Configure(config *config.ConfigParams)
Configures component by passing configuration parameters. Parameters:
- config *config.ConfigParams
configuration parameters to be set.
func (*MemoryCredentialStore) Lookup ¶
func (c *MemoryCredentialStore) Lookup(correlationId string, key string) (result *CredentialParams, err error)
Lookups credential parameters by its key. Parameters:
- correlationId string transaction id to trace execution through call chain.
- key string a key to uniquely identify the credential parameters.
Return result *CredentialParams, err error result of lookup and error message
func (*MemoryCredentialStore) ReadCredentials ¶
func (c *MemoryCredentialStore) ReadCredentials(config *config.ConfigParams)
Reads credentials from configuration parameters. Each section represents an individual CredentialParams Parameters:
- config *config.ConfigParams configuration parameters to be read
func (*MemoryCredentialStore) Store ¶
func (c *MemoryCredentialStore) Store(correlationId string, key string, credential *CredentialParams) error
Stores credential parameters into the store. Parameters:
- correlationId string transaction id to trace execution through call chain.
- key string a key to uniquely identify the credential parameters.
- credential *CredentialParams a credential parameters to be stored.
Return error