The karbor.policy Module¶
Policy Engine For karbor
-
karbor.policy.check_is_admin(roles, context=None)¶ Whether or not user is admin according to policy setting.
-
karbor.policy.enforce(context, action, target)¶ Verifies that the action is valid on the target in this context.
Parameters: - context – karbor context
- action – string representing the action to be checked
this should be colon separated for clarity.
i.e.
compute:create_instance,compute:attach_volume,volume:attach_volume - target – dictionary representing the target of the action
for target creation this should be a dictionary representing the
location of the target e.g.
{'project_id': context.project_id}
Raises: PolicyNotAuthorized – if verification fails.
-
karbor.policy.enforce_action(context, action)¶ Checks that the action can be done by the given context.
Applies a check to ensure the context’s project_id and user_id can be applied to the given action using the policy enforcement api.
-
karbor.policy.init()¶