def check_encryption_provider(db, volume, context): """Check that this is a LUKS encryption provider. :returns: encryption dict """ encryption = db.volume_encryption_metadata_get(context, volume.id) if 'provider' not in encryption: message = _("Invalid encryption spec.") raise exception.VolumeDriverException(message=message) provider = encryption['provider'] if provider in encryptors.LEGACY_PROVIDER_CLASS_TO_FORMAT_MAP: provider = encryptors.LEGACY_PROVIDER_CLASS_TO_FORMAT_MAP[provider] encryption['provider'] = provider if provider != encryptors.LUKS: message = _("Provider %s not supported.") % provider raise exception.VolumeDriverException(message=message) if 'cipher' not in encryption or 'key_size' not in encryption: msg = _('encryption spec must contain "cipher" and ' '"key_size"') raise exception.VolumeDriverException(message=msg) return encryption
def index(self, req, volume_id): """Returns the encryption metadata for a given volume.""" context = req.environ['cinder.context'] volume = objects.Volume.get_by_id(context, volume_id) context.authorize(policy.ENCRYPTION_METADATA_POLICY, target_obj=volume) return db.volume_encryption_metadata_get(context, volume_id)
def check_encryption_provider(db, volume, context): """Check that this is a LUKS encryption provider. :returns: encryption dict """ encryption = db.volume_encryption_metadata_get(context, volume.id) provider = encryption['provider'] if provider in encryptors.LEGACY_PROVIDER_CLASS_TO_FORMAT_MAP: provider = encryptors.LEGACY_PROVIDER_CLASS_TO_FORMAT_MAP[provider] if provider != encryptors.LUKS: message = _("Provider %s not supported.") % provider raise exception.VolumeDriverException(message=message) if 'cipher' not in encryption or 'key_size' not in encryption: msg = _('encryption spec must contain "cipher" and ' '"key_size"') raise exception.VolumeDriverException(message=msg) return encryption
def _get_volume_encryption_metadata(self, context, volume_id): return db.volume_encryption_metadata_get(context, volume_id)
def index(self, req, volume_id): """Returns the encryption metadata for a given volume.""" context = req.environ['cinder.context'] authorize(context) return db.volume_encryption_metadata_get(context, volume_id)
def _get_volume_encryption_metadata(self, context, volume_id): return db.volume_encryption_metadata_get(context, volume_id)
def index(self, req, volume_id): """Returns the encryption metadata for a given volume.""" context = req.environ['cinder.context'] volume = objects.Volume.get_by_id(context, volume_id) context.authorize(policy.ENCRYPTION_METADATA_POLICY, target_obj=volume) return db.volume_encryption_metadata_get(context, volume_id)
def index(self, req, volume_id): """Returns the encryption metadata for a given volume.""" context = req.environ['cinder.context'] context.authorize(policy.ENCRYPTION_METADATA_POLICY) return db.volume_encryption_metadata_get(context, volume_id)