Virtual Machines Endorsement Policy
As a result of the January 2011 SPG meeting, there is an item to work on a generalisation of the HEPiX Virtual Machines Endorsement Policy document.
The original HEPiX policy is available at https://edms.cern.ch/document/1080777
New draft text
Issues and discussion
Old (HEPiX) policy text
Policy on the Endorsement of Virtual Machine Images
This document describes the security-related policy requirements for the generation and endorsement of trusted virtual machine (VM) images for use on the Grid.
The aim is to enable Grid Sites to trust and instantiate endorsed VM images that have been generated elsewhere.
The virtualisation model addressed here is the use of virtual Grid worker nodes that act in a similar way to real worker nodes. Virtualisation provides an efficient way of managing different configurations of worker node, e.g. the operating system used, and importantly different pre-configured application environments for the VOs. The model addressed here, therefore, simply provides a different way of running authorized VO work, transparent to the end user, exactly the same as if the user payload was running on a real worker node. There should be no need to place more restrictions on virtual worker nodes running endorsed images as defined by this policy, than on real worker nodes in terms of access to trusted local services at the site.
This policy does not compel Sites to instantiate images endorsed in accordance with this policy nor limit the rights of a Site to decide to instantiate a VM image generated by any other non-compliant procedures, should they so desire. The Site is still bound by all applicable Grid security policies and is required to consider the security implications of such an action on other Grid participants.
The following terms are defined.
- VM base image: A VM image, including a complete operating system and all general
middleware, libraries, compilers, programmes and utilities. All kernel and root-level configurations, including any that may be VO-specific, are included here.
- VO environment: The VO-specific middleware, application software, libraries, utilities, data
and configuration which may be necessary to provide the appropriate environment for use by members of a VO. No kernel modifications or root-level configurations are included here.
- VM complete image: The VM image resulting from the combination of the VM base image and
the VO environment (if any).
- Globally Unique Identifier: A unique identifier for a VM complete image.
- Endorser: An individual who confirms that a particular VM complete image has been produced
according to the requirements of this policy and states that the image can be trusted.
An Endorser should be one of a limited number of authorised and trusted individuals appointed either by a VO or a Site. The appointing VO or Site must assume responsibility for the actions of the Endorser and must ensure that he/she is aware of the requirements of this policy.
Policy Requirements on the Endorser
By acting as an Endorser you agree to the conditions laid down in this document and other referenced documents, which may be revised from time to time. 1. You are held responsible by the Grid and by the Sites for checking and confirming that a VM complete image has been produced according to the requirements of this policy and that there is no known reason, security-related or otherwise, why it should not be trusted. 2. You recognise that VM base images, VO environments and VM complete images, must be generated according to current best practice, the details of which may be documented elsewhere by the Grid. These include but are not limited to:
- any image generation tool used must be fully patched and up to date;
- all operating system security patches must be applied to all images and be up to date;
- images are assumed to be world-readable and as such must not contain any confidential
- there should be no installed accounts, host/service certificates, ssh keys or user
credentials of any form in an image;
- images must be configured such that they do not prevent Sites from meeting the finegrained
monitoring and control requirements defined in the Grid Security Traceability and Logging policy to allow for security incident response;
- the image must not prevent Sites from implementing local authorisation and/or policy
decisions, e.g. blocking the running of Grid work for a particular user. 3. You must disclose to the Grid or to any Site on request the procedures and practices you use for checking and endorsing images. 4. You must provide and maintain an up to date digitally signed list of your currently endorsed images together with the metadata relating to each VM image, as defined in the VM Image Catalogue document. 5. You must keep an auditable history of every image endorsed including the Globally Unique Identifier, date/time of generation and full list of OS/packages/versions in both the VM Base Image and VO Environment. This must be made available to sites on demand. 6. You must remove images from the approved list whenever a problem is found, e.g. a new security update is required. This removal must also be recorded locally in your auditable history. 7. You are responsible for handling all problems related to the inclusion of any licensed software in a VM image. You shall ensure that any software included in a VM image which is used for its intended purposes, complies with applicable license conditions and you shall hold the Site running the image free and harmless from any liability with respect thereto. 8. You must assist the Grid in security incident response and must have a security vulnerability assessment process in place. 9. You recognise that the Grid, the Sites, and/or the VOs reserve the right to block any endorsed image or terminate any instance of a virtual machine and associated user workload for administrative, operational or security reasons. 10. You recognise that if a Site runs an image which no longer appears on your list of endorsed images, that you are not responsible for any consequences of this beyond the time of your removal of the image from the list