Bases: keystone.common.controller.V2Controller
Authenticate credentials and return a token.
Accept auth as a dict that looks like:
{
"auth":{
"passwordCredentials":{
"username":"test_user",
"password":"mypass"
},
"tenantName":"customer-x"
}
}
In this case, tenant is optional, if not provided the token will be considered “unscoped” and can later be used to get a scoped token.
Alternatively, this call accepts auth with only a token and tenant that will return a token that is scoped to that tenant.
Format a list of endpoints according to Identity API v2.
The v2.0 API wants an endpoint list to look like:
{
'endpoints': [
{
'id': $endpoint_id,
'name': $SERVICE[name],
'type': $SERVICE,
'tenantId': $tenant_id,
'region': $REGION,
}
],
'endpoints_links': [],
}
Bases: object
Common utilities/dependencies for all authentication method classes.
Bases: exceptions.Exception
External authentication is not applicable.
Bases: keystone.token.controllers.BaseAuthenticationMethod
Authenticate using an external authentication method.
Try to authenticate an external user via REMOTE_USER variable.
Parameters: |
|
---|---|
Returns: | A tuple containing the user reference, project identifier, token expiration, bind information, and original audit information. |
Bases: keystone.token.controllers.BaseAuthenticationMethod
Authenticate against a local backend using password credentials.
Try to authenticate against the identity backend.
Parameters: |
|
---|---|
Returns: | A tuple containing the user reference, project identifier, token expiration, bind information, and original audit information. |
Bases: keystone.token.controllers.BaseAuthenticationMethod
Authenticate using an existing token.
Try to authenticate using an already existing token.
Parameters: |
|
---|---|
Returns: | A tuple containing the user reference, project identifier, token expiration, bind information, and original audit information. |
Bases: object
Create V2 token data.
Munge catalogs from internal to output format.
Internal catalogs look like:
{$REGION: {
{$SERVICE: {
$key1: $value1,
...
}
}
}
The legacy api wants them to look like:
[{'name': $SERVICE[name],
'type': $SERVICE,
'endpoints': [{
'tenantId': $tenant_id,
...
'region': $REGION,
}],
'endpoints_links': [],
}]
Convert v3 token data into v2.0 token data.
This method expects a dictionary generated from V3TokenDataHelper.get_token_data() and converts it to look like a v2.0 token dictionary.
Parameters: |
|
---|---|
Returns: | dictionary formatted for v2 tokens |
Raises keystone.exception.Unauthorized: | |
If a specific token type is not supported in v2. |
Given an request return a suitable authentication method.
This is simply a generator to handle matching an authentication request with the appropriate authentication method.
Parameters: | auth – Dictionary containing authentication information from the request. |
---|---|
Returns: | An authentication method class object. |
Token provider interface.
Bases: keystone.common.manager.Manager
Default pivot point for the token provider backend.
See keystone.common.manager.Manager for more details on how this dynamically calls the backend.