Table Of Contents

Previous topic

identity Package

Next topic

ldap Package

This Page

backends Package

kvs Module

class keystone.identity.backends.kvs.Identity(db=None)

Bases: keystone.common.kvs.Base, keystone.identity.core.Driver

add_role_to_user_and_tenant(user_id, tenant_id, role_id)
add_user_to_tenant(tenant_id, user_id)
authenticate(user_id=None, tenant_id=None, password=None)

Authenticate based on a user, tenant and password.

Expects the user object to have a password field and the tenant to be in the list of tenants on the user.

create_metadata(user_id, tenant_id, metadata)
create_role(role_id, role)
create_tenant(tenant_id, tenant)
create_user(user_id, user)
delete_metadata(user_id, tenant_id)
delete_role(role_id)
delete_tenant(tenant_id)
delete_user(user_id)
get_metadata(user_id, tenant_id)
get_role(role_id)
get_roles_for_user_and_tenant(user_id, tenant_id)
get_tenant(tenant_id)
get_tenant_by_name(tenant_name)
get_tenant_users(tenant_id)
get_tenants()
get_tenants_for_user(user_id)
get_user(user_id)
get_user_by_name(user_name)
list_roles()
list_users()
remove_role_from_user_and_tenant(user_id, tenant_id, role_id)
remove_user_from_tenant(tenant_id, user_id)
update_metadata(user_id, tenant_id, metadata)
update_role(role_id, role)
update_tenant(tenant_id, tenant)
update_user(user_id, user)

pam Module

keystone.identity.backends.pam.PAM_authenticate(username, password)
class keystone.identity.backends.pam.PamIdentity

Bases: keystone.identity.core.Driver

Very basic identity based on PAM.

Tenant is always the same as User, root user has admin role.

add_role_to_user_and_tenant(user_id, tenant_id, role_id)
add_user_to_tenant(tenant_id, user_id)
authenticate(user_id, tenant_id, password)
create_metadata(user_id, tenant_id, metadata)
create_role(role_id, role)
create_tenant(tenant_id, tenant)
create_user(user_id, user)
delete_metadata(user_id, tenant_id, metadata)
delete_role(role_id)
delete_tenant(tenant_id, tenant)
delete_user(user_id)
get_all_tenants()
get_metadata(user_id, tenant_id)
get_role(role_id)
get_roles_for_user_and_tenant(user_id, tenant_id)
get_tenant(tenant_id)
get_tenant_by_name(tenant_name)
get_tenants_for_user(user_id)
get_user(user_id)
get_user_by_name(user_name)
list_roles()
list_users()
remove_role_from_user_and_tenant(user_id, tenant_id, role_id)
remove_user_from_tenant(tenant_id, user_id)
update_metadata(user_id, tenant_id, metadata)
update_role(role_id, role)
update_tenant(tenant_id, tenant)
update_user(user_id, user)

sql Module

class keystone.identity.backends.sql.Identity

Bases: keystone.common.sql.core.Base, keystone.identity.core.Driver

add_role_to_user_and_tenant(user_id, tenant_id, role_id)
add_user_to_tenant(tenant_id, user_id)
authenticate(user_id=None, tenant_id=None, password=None)

Authenticate based on a user, tenant and password.

Expects the user object to have a password field and the tenant to be in the list of tenants on the user.

create_metadata(*args, **kwargs)
create_role(*args, **kwargs)
create_tenant(*args, **kwargs)
create_user(*args, **kwargs)
db_sync()
delete_metadata(user_id, tenant_id)
delete_role(role_id)
delete_tenant(tenant_id)
delete_user(user_id)
get_metadata(user_id, tenant_id)
get_role(role_id)
get_roles_for_user_and_tenant(user_id, tenant_id)
get_tenant(tenant_id)
get_tenant_by_name(tenant_name)
get_tenant_users(tenant_id)
get_tenants()
get_tenants_for_user(user_id)
get_user(user_id)
get_user_by_name(user_name)
list_roles()
list_users()
remove_role_from_user_and_tenant(user_id, tenant_id, role_id)
remove_user_from_tenant(tenant_id, user_id)
update_metadata(*args, **kwargs)
update_role(*args, **kwargs)
update_tenant(*args, **kwargs)
update_user(*args, **kwargs)
class keystone.identity.backends.sql.Metadata(**kwargs)

Bases: sqlalchemy.ext.declarative.Base, keystone.common.sql.core.DictBase

data
tenant_id
user_id
class keystone.identity.backends.sql.Role(**kwargs)

Bases: sqlalchemy.ext.declarative.Base, keystone.common.sql.core.DictBase

id
name
class keystone.identity.backends.sql.Tenant(**kwargs)

Bases: sqlalchemy.ext.declarative.Base, keystone.common.sql.core.DictBase

extra
classmethod from_dict(tenant_dict)
id
name
to_dict()
class keystone.identity.backends.sql.User(**kwargs)

Bases: sqlalchemy.ext.declarative.Base, keystone.common.sql.core.DictBase

extra
classmethod from_dict(user_dict)
id
name
to_dict()
class keystone.identity.backends.sql.UserTenantMembership(**kwargs)

Bases: sqlalchemy.ext.declarative.Base, keystone.common.sql.core.DictBase

Tenant membership join table.

tenant_id
user_id
keystone.identity.backends.sql.handle_conflicts(type='object')

Converts IntegrityError into HTTP 409 Conflict.