nova/nova/api/openstack/compute
Brianna Poulos 8c7ca368b1 Add trusted_image_certificates to REST API
This change adds support for the trusted_image_certificates parameter,
which is used to define a list of trusted certificate IDs that can be
used during image signature verification and certificate validation. The
parameter may contain a list of strings, each string representing the ID
of a trusted certificate. The list is restricted to a maximum of 50 IDs.
The list of certificate IDs will be stored in the trusted_certs field of
the instance InstanceExtra and will be used to verify the validity of
the signing certificate of a signed instance image.

The trusted_image_certificates request parameter can be passed to
the server create and rebuild APIs (if allowed by policy):

* POST /servers
* POST /servers/{server_id}/action (rebuild)

The following policy rules were added to restrict the usage of the
``trusted_image_certificates`` request parameter in the server create
and rebuild APIs:

* os_compute_api:servers:create:trusted_certs
* os_compute_api:servers:rebuild:trusted_certs

The trusted_image_certificates parameter will be in the response
body of the following APIs (not restricted by policy):

* GET /servers/detail
* GET /servers/{server_id}
* PUT /servers/{server_id}
* POST /servers/{server_id}/action (rebuild)

APIImpact

Implements blueprint: nova-validate-certificates
Change-Id: Iedd3fea0e86648fae364f075915555dcb2c4f199
2018-06-13 15:52:59 -04:00
..
schemas Add trusted_image_certificates to REST API 2018-06-13 15:52:59 -04:00
views Add trusted_image_certificates to REST API 2018-06-13 15:52:59 -04:00
__init__.py Use plain routes list for '/servers' endpoint instead of stevedore 2017-04-25 22:38:33 +08:00
admin_actions.py Remove extensions module 2017-12-20 11:35:38 +08:00
admin_password.py Remove extensions module 2017-12-20 11:35:38 +08:00
agents.py Remove extensions module 2017-12-20 11:35:38 +08:00
aggregates.py Remove extensions module 2017-12-20 11:35:38 +08:00
assisted_volume_snapshots.py Remove extensions module 2017-12-20 11:35:38 +08:00
attach_interfaces.py Remove extensions module 2017-12-20 11:35:38 +08:00
availability_zone.py remove ec2 in service and cmd 2018-04-12 13:10:23 +08:00
baremetal_nodes.py Remove extensions module 2017-12-20 11:35:38 +08:00
block_device_mapping.py Remove nova.api.extensions.server.extensions usage 2017-07-06 10:58:33 +08:00
block_device_mapping_v1.py Remove the useless extension block_device_mapping_v1 object 2017-07-25 17:58:46 +00:00
cells.py Remove extensions module 2017-12-20 11:35:38 +08:00
certificates.py Remove extensions module 2017-12-20 11:35:38 +08:00
cloudpipe.py Remove extensions module 2017-12-20 11:35:38 +08:00
config_drive.py Totally freeze the extension_info API 2017-05-08 16:32:48 +08:00
console_auth_tokens.py Remove extensions module 2017-12-20 11:35:38 +08:00
console_output.py Remove extensions module 2017-12-20 11:35:38 +08:00
consoles.py Remove extensions module 2017-12-20 11:35:38 +08:00
create_backup.py Remove extensions module 2017-12-20 11:35:38 +08:00
deferred_delete.py Remove extensions module 2017-12-20 11:35:38 +08:00
evacuate.py Remove extensions module 2017-12-20 11:35:38 +08:00
extended_availability_zone.py Totally freeze the extension_info API 2017-05-08 16:32:48 +08:00
extended_server_attributes.py Totally freeze the extension_info API 2017-05-08 16:32:48 +08:00
extended_status.py Totally freeze the extension_info API 2017-05-08 16:32:48 +08:00
extended_volumes.py Make bdms querying in multi-cell use scatter-gather and ignore down cell 2018-02-07 11:46:32 +01:00
extension_info.py Remove unused LOG variables 2018-02-27 11:19:48 +00:00
fixed_ips.py Remove extensions module 2017-12-20 11:35:38 +08:00
flavor_access.py Remove extensions module 2017-12-20 11:35:38 +08:00
flavor_manage.py Add microversion to support extra_specs in flavor API. 2018-04-11 17:47:57 +08:00
flavors.py Add microversion to support extra_specs in flavor API. 2018-04-11 17:47:57 +08:00
flavors_extraspecs.py Remove extensions module 2017-12-20 11:35:38 +08:00
floating_ip_dns.py Remove extensions module 2017-12-20 11:35:38 +08:00
floating_ip_pools.py Remove extensions module 2017-12-20 11:35:38 +08:00
floating_ips.py Remove extensions module 2017-12-20 11:35:38 +08:00
floating_ips_bulk.py Remove extensions module 2017-12-20 11:35:38 +08:00
fping.py Remove support for /os-fping REST API 2018-05-10 15:26:13 -04:00
helpers.py remove personality extension 2016-06-24 14:44:53 -04:00
hide_server_addresses.py Fix instance lookup in hide_server_addresses extension 2017-10-26 23:42:04 -04:00
hosts.py remove ec2 in service and cmd 2018-04-12 13:10:23 +08:00
hypervisors.py Remove extensions module 2017-12-20 11:35:38 +08:00
image_metadata.py Remove extensions module 2017-12-20 11:35:38 +08:00
image_size.py Use plain routes list for images instead of stevedore 2017-07-12 20:57:33 +08:00
images.py Remove extensions module 2017-12-20 11:35:38 +08:00
instance_actions.py Add host/hostId to instance action events API 2018-04-26 14:17:02 +00:00
instance_usage_audit_log.py remove unnecessary conf imports 2018-03-09 14:30:10 -05:00
ips.py Remove extensions module 2017-12-20 11:35:38 +08:00
keypairs.py Remove extensions module 2017-12-20 11:35:38 +08:00
limits.py Remove extensions module 2017-12-20 11:35:38 +08:00
lock_server.py Remove extensions module 2017-12-20 11:35:38 +08:00
migrate_server.py Return 400 when compute host is not found 2018-02-20 11:29:29 +05:30
migrations.py Ensure the JSON-Schema covers the legacy v2 API 2018-02-01 16:56:07 -05:00
multinic.py Remove extensions module 2017-12-20 11:35:38 +08:00
multiple_create.py Remove multiple create from stevedore 2017-06-19 16:49:34 +01:00
networks.py Remove extensions module 2017-12-20 11:35:38 +08:00
networks_associate.py Remove extensions module 2017-12-20 11:35:38 +08:00
pause_server.py Remove extensions module 2017-12-20 11:35:38 +08:00
quota_classes.py Remove extensions module 2017-12-20 11:35:38 +08:00
quota_sets.py Remove extensions module 2017-12-20 11:35:38 +08:00
remote_consoles.py Remove extensions module 2017-12-20 11:35:38 +08:00
rescue.py Remove extensions module 2017-12-20 11:35:38 +08:00
rest_api_version_history.rst Add trusted_image_certificates to REST API 2018-06-13 15:52:59 -04:00
routes.py remove unnecessary conf imports 2018-03-09 14:30:10 -05:00
scheduler_hints.py Totally freeze the extension_info API 2017-05-08 16:32:48 +08:00
security_group_default_rules.py Remove extensions module 2017-12-20 11:35:38 +08:00
security_groups.py Remove extensions module 2017-12-20 11:35:38 +08:00
server_diagnostics.py Remove extensions module 2017-12-20 11:35:38 +08:00
server_external_events.py Ensure the JSON-Schema covers the legacy v2 API 2018-02-01 16:56:07 -05:00
server_groups.py Remove extensions module 2017-12-20 11:35:38 +08:00
server_metadata.py Remove extensions module 2017-12-20 11:35:38 +08:00
server_migrations.py Add pagination and Changes-since filter support for os-migrations. 2018-01-10 14:02:53 -05:00
server_password.py Remove extensions module 2017-12-20 11:35:38 +08:00
server_tags.py Remove extensions module 2017-12-20 11:35:38 +08:00
server_usage.py Totally freeze the extension_info API 2017-05-08 16:32:48 +08:00
servers.py Add trusted_image_certificates to REST API 2018-06-13 15:52:59 -04:00
services.py Cleanup RP and HM records while deleting a compute service. 2018-04-18 19:25:49 -04:00
shelve.py Remove extensions module 2017-12-20 11:35:38 +08:00
simple_tenant_usage.py Remove extensions module 2017-12-20 11:35:38 +08:00
suspend_server.py Remove extensions module 2017-12-20 11:35:38 +08:00
tenant_networks.py Remove extensions module 2017-12-20 11:35:38 +08:00
used_limits.py Remove extensions module 2017-12-20 11:35:38 +08:00
user_data.py Use plain routes list for user_data instead of stevedore 2017-06-13 14:04:00 +00:00
versions.py Merge ResourceV21 obj into Resource obj 2017-12-21 19:33:35 +08:00
versionsV21.py Remove extensions module 2017-12-20 11:35:38 +08:00
virtual_interfaces.py Remove support for /os-virtual-interfaces REST API 2018-06-06 21:14:39 +00:00
volumes.py Change exception type while deattaching root device 2018-05-25 13:10:01 +02:00
wsgi.py Add pbr-installed wsgi application for metadata api 2017-05-02 16:58:11 +00:00