diff options
author | ericxiett <eric_xiett@163.com> | 2020-09-11 02:03:47 +0000 |
---|---|---|
committer | Stephen Finucane <stephenfin@redhat.com> | 2021-07-26 09:34:46 +0100 |
commit | 35ec9357a1f249cc1309c92006a5a1f48a8ff025 (patch) | |
tree | e647c0ad325fb817f019166ed123e61c03b0d5c7 | |
parent | 264429032152335855552dfcc9ea23e45b1b655d (diff) | |
download | nova-35ec9357a1f249cc1309c92006a5a1f48a8ff025.tar.gz |
Fix error that cannot overwrite policy rule for 'forced_host'
When configure 'os_compute_api:servers:create:forced_host' to
'rule:admin_or_owner', but still doesn't allow.
In nova/api/openstack/compute/servers.py#L669, the target is
set to '{}' that is not equal None, so then it will not be set
in nova/policy.py#L205.
This patch configures the target param.
Change-Id: I7a563386bd2f5d1930b5eb2cfc00425a19747e24
Closes-Bug: #1894975
(cherry picked from commit fd99a7ca0f56223d878142a58525d9ed64c84ed1)
-rw-r--r-- | nova/api/openstack/compute/servers.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/nova/api/openstack/compute/servers.py b/nova/api/openstack/compute/servers.py index 3b7b7e9057..5acfd10596 100644 --- a/nova/api/openstack/compute/servers.py +++ b/nova/api/openstack/compute/servers.py @@ -660,7 +660,8 @@ class ServersController(wsgi.Controller): except exception.InvalidInput as err: raise exc.HTTPBadRequest(explanation=six.text_type(err)) if host or node: - context.can(server_policies.SERVERS % 'create:forced_host', {}) + context.can(server_policies.SERVERS % 'create:forced_host', + target=target) if api_version_request.is_supported(req, min_version='2.74'): self._process_hosts_for_create(context, target, server_dict, |