keystone.policy.backends package

keystone.policy.backends package

Submodules

keystone.policy.backends.base module

class keystone.policy.backends.base.PolicyDriverBase[source]

Bases: object

create_policy(policy_id, policy)[source]

Store a policy blob.

Raises:keystone.exception.Conflict – If a duplicate policy exists.
delete_policy(policy_id)[source]

Remove a policy blob.

Raises:keystone.exception.PolicyNotFound – If the policy doesn’t exist.
enforce(context, credentials, action, target)[source]

Verify that a user is authorized to perform action.

For more information on a full implementation of this see: keystone.policy.backends.rules.Policy.enforce

get_policy(policy_id)[source]

Retrieve a specific policy blob.

Raises:keystone.exception.PolicyNotFound – If the policy doesn’t exist.
list_policies()[source]

List all policies.

update_policy(policy_id, policy)[source]

Update a policy blob.

Raises:keystone.exception.PolicyNotFound – If the policy doesn’t exist.

keystone.policy.backends.rules module

Policy engine for keystone.

class keystone.policy.backends.rules.Policy[source]

Bases: keystone.policy.backends.base.PolicyDriverBase

create_policy(policy_id, policy)[source]
delete_policy(policy_id)[source]
enforce(credentials, action, target)[source]
get_policy(policy_id)[source]
list_policies()[source]
update_policy(policy_id, policy)[source]

keystone.policy.backends.sql module

class keystone.policy.backends.sql.Policy[source]

Bases: keystone.policy.backends.rules.Policy

create_policy(*args, **kwargs)[source]
delete_policy(policy_id)[source]
get_policy(policy_id)[source]
list_policies()[source]
update_policy(*args, **kwargs)[source]
class keystone.policy.backends.sql.PolicyModel(*args, **kwargs)[source]

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

attributes = ['id', 'blob', 'type']
blob
extra
id
type

Module contents

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.