Een versleutelingssleutel opgeven voor een aanvraag voor Blob Storage

Clients die aanvragen indienen voor Azure Blob Storage, kunnen een AES-256-versleutelingssleutel bieden om die blob te versleutelen op een schrijfbewerking. Volgende aanvragen voor lezen of schrijven naar de blob moeten dezelfde sleutel bevatten. Het opnemen van de versleutelingssleutel in de aanvraag biedt gedetailleerde controle over versleutelingsinstellingen voor blobopslagbewerkingen. Door de klant geleverde sleutels kunnen worden opgeslagen in Azure Key Vault of in een ander sleutelarchief.

Lees- en schrijfbewerkingen versleutelen

Wanneer een clienttoepassing een versleutelingssleutel op de aanvraag biedt, voert Azure Storage op transparante wijze versleuteling en ontsleuteling uit tijdens het lezen en schrijven van blobgegevens. Azure Storage schrijft een SHA-256-hash van de versleutelingssleutel naast de inhoud van de blob. De hash wordt gebruikt om te controleren of alle volgende bewerkingen voor de blob dezelfde versleutelingssleutel gebruiken.

Azure Storage slaat de versleutelingssleutel die de client met de aanvraag verzendt, niet op of beheert deze. De sleutel wordt veilig verwijderd zodra het versleutelings- of ontsleutelingsporces is voltooid.

Wanneer een client een blob maakt of bijwerken met behulp van een door de klant verstrekte sleutel in de aanvraag, moeten volgende lees- en schrijfaanvragen voor die blob ook de sleutel opgeven. Als de sleutel niet is opgegeven in een aanvraag voor een blob die al is versleuteld met een door de klant geleverde sleutel, mislukt de aanvraag met foutcode 409 (Conflict).

Als de clienttoepassing een versleutelingssleutel op de aanvraag verzendt en het opslagaccount ook wordt versleuteld met een door Microsoft beheerde sleutel of een door de klant beheerde sleutel, gebruikt Azure Storage de sleutel die is opgegeven in de aanvraag voor versleuteling en ontsleuteling.

Als u de versleutelingssleutel als onderdeel van de aanvraag wilt verzenden, moet een client een beveiligde verbinding met Azure Storage tot stand brengen met behulp van HTTPS.

Elke blob-momentopname of blobversie kan een eigen versleutelingssleutel hebben.

Objectreplicatie wordt niet ondersteund voor blobs in het bronaccount die zijn versleuteld met een door de klant geleverde sleutel.

Aanvraagheaders voor het opgeven van door de klant verstrekte sleutels

Voor REST-aanroepen kunnen clients de volgende headers gebruiken om gegevens van versleutelingssleutels veilig door te geven aan een aanvraag bij Blob Storage:

Koptekst van aanvraag Omschrijving
x-ms-encryption-key Vereist voor zowel schrijf- als leesaanvragen. Een met Base64 gecodeerde AES-256-versleutelingssleutelwaarde.
x-ms-encryption-key-sha256 Vereist voor zowel schrijf- als leesaanvragen. De Base64-gecodeerde SHA256 van de versleutelingssleutel.
x-ms-encryption-algorithm Vereist voor schrijfaanvragen, optioneel voor leesaanvragen. Hiermee geeft u het algoritme op dat moet worden gebruikt bij het versleutelen van gegevens met behulp van de opgegeven sleutel. De waarde van deze header moet zijn AES256.

Het opgeven van versleutelingssleutels op de aanvraag is optioneel. Als u echter een van de bovenstaande headers opgeeft voor een schrijfbewerking, moet u deze allemaal opgeven.

Blob Storage-bewerkingen die door de klant geleverde sleutels ondersteunen

De volgende Blob Storage-bewerkingen ondersteunen het verzenden van door de klant verstrekte versleutelingssleutels op een aanvraag:

Door de klant geleverde sleutels draaien

Als u een versleutelingssleutel wilt draaien die is gebruikt om een blob te versleutelen, downloadt u de blob en laadt u deze opnieuw met de nieuwe versleutelingssleutel.

Belangrijk

Azure Portal kan niet worden gebruikt om te lezen van of te schrijven naar een container of blob die is versleuteld met een sleutel die is opgegeven in de aanvraag.

Zorg ervoor dat u de versleutelingssleutel beveiligt die u opgeeft op een aanvraag voor Blob-opslag in een beveiligd sleutelarchief, zoals Azure Key Vault. Als u een schrijfbewerking probeert uit te voeren op een container of blob zonder de versleutelingssleutel, mislukt de bewerking en verliest u de toegang tot het object.

Functieondersteuning

Ondersteuning voor deze functie kan worden beïnvloed door het inschakelen van Data Lake Storage Gen2, het NFS-protocol (Network File System) 3.0 of het SSH File Transfer Protocol (SFTP). Als u een van deze mogelijkheden hebt ingeschakeld, raadpleegt u de ondersteuning voor Blob Storage-functies in Azure Storage-accounts om ondersteuning voor deze functie te beoordelen.

Volgende stappen