59c60b68fb
This module contains some constants and helper functions which may be used in neutron, neutron staduim and neutron 3rd party projects. Also already existing module _policy with policy engine implementation for internal use of neutron-lib for moved to the new neutron_lib.policy module and is now named neutron_lib.policy._engine Partially Implements: blueprint neutron-policy-in-code Change-Id: Ie581788f78f6d83ae470981830df9e90a7cb72e8
30 lines
1.1 KiB
Python
30 lines
1.1 KiB
Python
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
|
|
def policy_and(*args):
|
|
return ' and '.join(args)
|
|
|
|
|
|
def policy_or(*args):
|
|
return ' or '.join(args)
|
|
|
|
|
|
RULE_ADMIN_OR_OWNER = 'rule:admin_or_owner'
|
|
RULE_ADMIN_ONLY = 'rule:admin_only'
|
|
RULE_ANY = 'rule:regular_user'
|
|
RULE_ADVSVC = 'rule:context_is_advsvc'
|
|
RULE_ADMIN_OR_NET_OWNER = 'rule:admin_or_network_owner'
|
|
RULE_ADMIN_OR_NET_OWNER_OR_ADVSVC = policy_or(RULE_ADMIN_OR_NET_OWNER,
|
|
RULE_ADVSVC)
|
|
RULE_ADMIN_OR_PARENT_OWNER = 'rule:admin_or_ext_parent_owner'
|