284ac43f7a
This adds scope_type and new defaults roles in extensions API policies. These policies are for extensions API which are kept only for backward compatibility of v2.0 but nova does not have extensions concept now and return only hard-coded info. So these policies are not made granular. Partial implement blueprint policy-defaults-refresh-deprecated-apis Change-Id: I062e556feb5cc85d179fed9b675e4ab33ca3365a
46 lines
1.3 KiB
Python
46 lines
1.3 KiB
Python
# Copyright 2016 Cloudbase Solutions Srl
|
|
# All Rights Reserved.
|
|
#
|
|
# 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.
|
|
|
|
from oslo_policy import policy
|
|
|
|
from nova.policies import base
|
|
|
|
|
|
BASE_POLICY_NAME = 'os_compute_api:extensions'
|
|
|
|
|
|
extensions_policies = [
|
|
policy.DocumentedRuleDefault(
|
|
name=BASE_POLICY_NAME,
|
|
check_str=base.RULE_ANY,
|
|
description="List available extensions and show information "
|
|
"for an extension by alias",
|
|
operations=[
|
|
{
|
|
'method': 'GET',
|
|
'path': '/extensions'
|
|
},
|
|
{
|
|
'method': 'GET',
|
|
'path': '/extensions/{alias}'
|
|
}
|
|
],
|
|
scope_types=['system', 'project']),
|
|
]
|
|
|
|
|
|
def list_rules():
|
|
return extensions_policies
|