nova/nova
Matt Riedemann 7bcd581c78 Add policy rule to block image-backed servers with 0 root disk flavor
This adds a new policy rule which defaults to behave in a
backward compatible way, but will allow operators to enforce
that servers created with a zero disk flavor must also be
volume-backed servers.

Allowing users to upload their own images and create image-backed
servers on local disk with zero root disk size flavors can be
potentially hazardous if the size of the image is unexpectedly
large, since it can consume the local disk (or shared storage pool).

It should be noted that disabling the new policy rule will
result in a non-backward compatible API behavior change and no
microversion is being introduced for this because enforcement via
a new microversion would not close the security gap on any previous
microversions.

Related compute API reference and user documentation is updated
to mention the policy rule along with a release note since
this is tied to a security bug, which will be backported to stable
branches.

Conflicts:
      nova/policies/servers.py
      nova/tests/unit/test_policy.py

NOTE(mriedem): The conflict is due to not having change
Iedd3fea0e86648fae364f075915555dcb2c4f199 in Queens for trusted
certs.

Change-Id: Id67e1285a0522474844de130c9263e11868f67fb
Closes-Bug: #1739646
(cherry picked from commit 763fd62464)
2018-06-18 13:51:41 -04:00
..
CA
api Add policy rule to block image-backed servers with 0 root disk flavor 2018-06-18 13:51:41 -04:00
cells Add instance action record for snapshot instances 2017-12-11 17:46:38 +08:00
cmd Metadata-API fails to retrieve avz for instances created before Pike 2018-05-30 17:40:25 -04:00
common
compute Add policy rule to block image-backed servers with 0 root disk flavor 2018-06-18 13:51:41 -04:00
conductor [placement] Add sending global request ID in get 2018-03-26 06:24:09 +00:00
conf Change consecutive build failure limit to a weigher 2018-06-07 07:17:51 -07:00
console Fix accumulated nits 2018-01-16 14:54:04 +00:00
consoleauth Merge "Remove translation of log messages" 2017-08-10 11:39:03 +00:00
db Merge "Add index(instance_uuid, updated_at) on instance_actions table" 2018-02-08 15:23:14 +00:00
hacking trivial: Rename 'policy_check' -> 'policy' 2017-10-25 17:56:40 +01:00
image Workaround glanceclient bug when CONF.glance.api_servers not set 2018-02-08 09:06:48 -05:00
ipv6
keymgr Remove deprecated keymgr code 2017-09-11 15:48:30 -04:00
locale Imported Translations from Zanata 2018-03-01 06:16:22 +00:00
network Handle PortNotFoundClient exception when getting ports 2018-05-09 12:30:38 +00:00
notifications Handle EndpointNotFound when building image_ref_url in notifications 2018-03-21 15:52:18 +00:00
objects Ensure resource class cache when listing usages 2018-06-08 19:28:41 +01:00
pci Address nits in I46d483f9de6776db1b025f925890624e5e682ada 2018-01-02 15:57:50 +00:00
policies Add policy rule to block image-backed servers with 0 root disk flavor 2018-06-18 13:51:41 -04:00
privsep Update plugs Contrail methods to work with privsep 2018-02-21 15:48:04 -05:00
scheduler [Stable Only] Initialise failed_builds in IronicNodeState 2018-06-14 05:41:14 +00:00
servicegroup iso8601.is8601.Utc No Longer Exists 2017-08-29 19:26:55 -04:00
tests Add policy rule to block image-backed servers with 0 root disk flavor 2018-06-18 13:51:41 -04:00
virt libvirt: Skip fetching the virtual size of block devices 2018-05-31 10:49:19 +01:00
vnc
volume Use ksa session for cinder microversion check 2018-03-29 21:55:40 +00:00
__init__.py
availability_zones.py
baserpc.py
block_device.py Add uuid column to BlockDeviceMapping 2017-12-17 14:28:35 +00:00
cache_utils.py
config.py
context.py Allow cinderv2 endpoints within the request context catalog 2018-06-05 10:04:06 +01:00
crypto.py
debugger.py
exception.py Add policy rule to block image-backed servers with 0 root disk flavor 2018-06-18 13:51:41 -04:00
exception_wrapper.py rename binary to source in versioned notifications 2017-07-25 17:36:04 +02:00
filters.py
hooks.py
i18n.py correct referenced url in comments 2018-01-18 09:16:37 +08:00
loadables.py
manager.py
policy.py Add policy granularity to the Flavors API 2017-07-19 15:56:47 -04:00
profiler.py
quota.py Follow up on removing old-style quotas code 2017-12-08 22:11:24 +00:00
rpc.py Remove dead code of api.fault notification sending 2017-10-09 17:29:40 +02:00
safe_utils.py Allow wrapping of closures 2017-07-20 10:07:52 +01:00
service.py Enhance doc for nova services 2017-08-31 08:30:48 +08:00
service_auth.py Fix NoneType error when [service_user] is misconfigured 2017-11-28 12:22:30 -06:00
test.py Change consecutive build failure limit to a weigher 2018-06-07 07:17:51 -07:00
utils.py Merge "Handle TZ change in iso8601 >=0.1.12" 2018-01-31 00:36:50 +00:00
version.py
weights.py
wsgi.py