Utilities for Federation Extension.
Bases: object
An abstraction around the remote matches.
Each match is treated internally as a list.
Bases: object
A class to process assertions and mapping rules.
Transform assertion to a dictionary.
The dictionary contains mapping of user name and group ids based on mapping rules.
This function will iterate through the mapping rules to find assertions that are valid.
assertion_data (dict) – an assertion containing values from an IdP
Example assertion_data:
{
'Email': 'testacct@example.com',
'UserName': 'testacct',
'FirstName': 'Test',
'LastName': 'Account',
'orgPersonType': 'Tester'
}
dictionary with user and group_ids
The expected return structure is:
{
'name': 'foobar',
'group_ids': ['abc123', 'def456'],
'group_names': [
{
'name': 'group_name_1',
'domain': {
'name': 'domain1'
}
},
{
'name': 'group_name_1_1',
'domain': {
'name': 'domain1'
}
},
{
'name': 'group_name_2',
'domain': {
'id': 'xyz132'
}
}
]
}
Bases: object
User mapping type.
Transform groups identified by name/domain to their ids.
Function accepts list of groups identified by a name and domain giving a list of group ids in return. A message is logged if the group doesn’t exist in the backend.
Example of group_names parameter:
[
{
"name": "group_name",
"domain": {
"id": "domain_id"
},
},
{
"name": "group_name_2",
"domain": {
"name": "domain_name"
}
}
]
group_names (list) – list of group identified by name and its domain.
mapping_id (str) – id of the mapping used for mapping assertion into local credentials
identity_api – identity_api object
resource_api – resource manager object
generator object with group ids
The IdP providing the assertion should be registered for the mapping.
Iterate over group ids and make sure they are present in the backend.
This call is not transactional. :param group_ids: IDs of the groups to be checked :type group_ids: list of str
mapping_id (str) – id of the mapping used for this operation
identity_api (identity.Manager) – Identity Manager object used for communication with backend
keystone.exception.MappedGroupNotFound – If the group returned by mapping was not found in the backend.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.