The Backend Module

Module defining the Django auth backend class for the Keystone API.

class openstack_auth.backend.KeystoneBackend[source]

Django authentication backend for use with django.contrib.auth.

authenticate(request, auth_url=None, **kwargs)[source]

Authenticates a user via the Keystone Identity API.

get_all_permissions(user, obj=None)[source]

Returns a set of permission strings that the user has.

This permission available to the user is derived from the user’s Keystone “roles”.

The permissions are returned as "openstack.{{ role.name }}".

get_group_permissions(user, obj=None)[source]

Returns an empty set since Keystone doesn’t support “groups”.

get_user(user_id)[source]

Returns the current user from the session data.

If authenticated, this return the user object based on the user ID and session data.

Note

This required monkey-patching the contrib.auth middleware to make the request object available to the auth backend class.

has_module_perms(user, app_label)[source]

Returns True if user has any permissions in the given app_label.

Currently this matches for the app_label "openstack".

has_perm(user, perm, obj=None)[source]

Returns True if the given user has the specified permission.