Add support for functional RBAC tests
Add support to the keystone devstack plugin for setting enforce_scope in the keystone config and setting up tempest to test it. It may be better to move this to tempest proper at some point. See also: https://review.opendev.org/686073 https://review.opendev.org/698397 Change-Id: I1b71135547b7ce03afb5b44fbbab3f52d213a2ae
This commit is contained in:
parent
07d187eb46
commit
5d7c92e204
26
devstack/lib/scope.sh
Normal file
26
devstack/lib/scope.sh
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
# Copyright 2019 SUSE LLC
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
function configure_enforce_scope {
|
||||||
|
iniset $KEYSTONE_CONF oslo_policy enforce_scope true
|
||||||
|
iniset $KEYSTONE_CONF oslo_policy policy_file policy.yaml
|
||||||
|
sudo systemctl restart devstack@keystone
|
||||||
|
oslopolicy-policy-generator --namespace keystone > /etc/keystone/policy.yaml
|
||||||
|
}
|
||||||
|
|
||||||
|
function configure_protection_tests {
|
||||||
|
iniset $TEMPEST_CONFIG identity-feature-enabled enforce_scope true
|
||||||
|
iniset $TEMPEST_CONFIG auth admin_system true
|
||||||
|
iniset $TEMPEST_CONFIG auth admin_project_name ''
|
||||||
|
}
|
@ -15,6 +15,7 @@
|
|||||||
|
|
||||||
KEYSTONE_PLUGIN=$DEST/keystone/devstack
|
KEYSTONE_PLUGIN=$DEST/keystone/devstack
|
||||||
source $KEYSTONE_PLUGIN/lib/federation.sh
|
source $KEYSTONE_PLUGIN/lib/federation.sh
|
||||||
|
source $KEYSTONE_PLUGIN/lib/scope.sh
|
||||||
|
|
||||||
# For more information on Devstack plugins, including a more detailed
|
# For more information on Devstack plugins, including a more detailed
|
||||||
# explanation on when the different steps are executed please see:
|
# explanation on when the different steps are executed please see:
|
||||||
@ -47,6 +48,12 @@ elif [[ "$1" == "stack" && "$2" == "test-config" ]]; then
|
|||||||
if is_service_enabled keystone-saml2-federation; then
|
if is_service_enabled keystone-saml2-federation; then
|
||||||
configure_tests_settings
|
configure_tests_settings
|
||||||
fi
|
fi
|
||||||
|
if [[ "$(trueorfalse False KEYSTONE_ENFORCE_SCOPE)" == "True" ]] ; then
|
||||||
|
# devstack and tempest assume enforce_scope is false, so need to wait
|
||||||
|
# until the final phase to turn it on
|
||||||
|
configure_enforce_scope
|
||||||
|
configure_protection_tests
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$1" == "unstack" ]]; then
|
if [[ "$1" == "unstack" ]]; then
|
||||||
|
Loading…
x
Reference in New Issue
Block a user