Share via


Aanbevolen procedures voor het beveiligen van PaaS-webtoepassingen en mobiele toepassingen met behulp van Azure Storage

In dit artikel bespreken we een verzameling best practices voor Azure Storage-beveiliging voor het beveiligen van uw PaaS-webtoepassingen (Platform-as-a-Service) en mobiele toepassingen. Deze best practices zijn afgeleid van onze ervaring met Azure en de ervaringen van klanten zoals uzelf.

Azure maakt het mogelijk om opslag te implementeren en te gebruiken op manieren die on-premises niet eenvoudig haalbaar zijn. Met Azure Storage kunt u met relatief weinig moeite hoge schaalbaarheids- en beschikbaarheidsniveaus bereiken. Niet alleen is Azure Storage de basis voor Virtuele Windows- en Linux Azure-machines, maar het kan ook grote gedistribueerde toepassingen ondersteunen.

Azure Storage biedt de volgende vier services: Blob Storage, Table Storage, Queue Storage en File Storage. Zie Inleiding tot Microsoft Azure Storage voor meer informatie.

In dit artikel worden de volgende aanbevolen procedures behandeld:

  • Shared Access Signatures (SAS)
  • op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC)
  • Versleuteling aan clientzijde voor gegevens met hoge waarde
  • Storage Service Encryption

Een handtekening voor gedeelde toegang gebruiken in plaats van een opslagaccountsleutel

Toegangsbeheer is essentieel. Om u te helpen de toegang tot Azure Storage te beheren, genereert Azure twee 512-bits opslagaccountsleutels (SAK's) wanneer u een opslagaccount maakt. Dankzij het niveau van sleutelredundantie kunt u serviceonderbrekingen voorkomen tijdens routinesleutelrotatie.

Opslagtoegangssleutels zijn geheimen met hoge prioriteit en mogen alleen toegankelijk zijn voor personen die verantwoordelijk zijn voor toegangsbeheer voor opslag. Als de verkeerde personen toegang krijgen tot deze sleutels, hebben ze volledige controle over de opslag en kunnen ze bestanden vervangen, verwijderen of toevoegen aan de opslag. Dit omvat malware en andere soorten inhoud die mogelijk inbreuk kunnen maken op uw organisatie of uw klanten.

U hebt nog steeds een manier nodig om toegang te bieden tot objecten in de opslag. Als u meer gedetailleerde toegang wilt bieden, kunt u profiteren van Shared Access Signature (SAS). Met de SAS kunt u specifieke objecten in de opslag delen voor een vooraf gedefinieerd tijdsinterval en met specifieke machtigingen. Met een handtekening voor gedeelde toegang kunt u het volgende definiëren:

  • Het interval waarvoor de SAS geldig is, inclusief de begintijd en de verlooptijd.
  • De machtigingen die zijn verleend door de SAS. Een SAS op een blob kan bijvoorbeeld lees- en schrijfmachtigingen verlenen aan die blob, maar geen machtigingen voor verwijderen.
  • Een optioneel IP-adres of bereik van IP-adressen waaruit Azure Storage de SAS accepteert. U kunt bijvoorbeeld een bereik opgeven van IP-adressen die deel uitmaken van uw organisatie. Dit biedt een andere beveiligingsmaatregel voor uw SAS.
  • Het protocol waarmee Azure Storage de SAS accepteert. U kunt deze optionele parameter gebruiken om de toegang tot clients te beperken via HTTPS.

Met SAS kunt u inhoud delen zoals u deze wilt delen zonder uw opslagaccountsleutels weg te geven. Het gebruik van SAS in uw toepassing is een veilige manier om uw opslagbronnen te delen zonder dat uw opslagaccountsleutels in gevaar komen.

Zie Handtekeningen voor gedeelde toegang gebruiken voor meer informatie over Shared Access Signatures.

Op rollen gebaseerd toegangsbeheer van Azure gebruiken

Een andere manier om toegang te beheren, is door op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) te gebruiken. Met Azure RBAC richt u zich op het geven van de exacte machtigingen die werknemers nodig hebben, op basis van de noodzaak om beveiligingsprincipes met minimale bevoegdheden te kennen. Te veel machtigingen kunnen een account beschikbaar maken voor aanvallers. Te weinig machtigingen betekent dat werknemers hun werk niet efficiënt kunnen uitvoeren. Azure RBAC helpt dit probleem op te lossen door gedetailleerd toegangsbeheer voor Azure aan te bieden. Toegangsbeheer is essentieel voor organisaties die beveiligingsbeleid willen afdwingen voor gegevenstoegang.

U kunt ingebouwde Azure-rollen in Azure gebruiken om bevoegdheden toe te wijzen aan gebruikers. Gebruik bijvoorbeeld Inzender voor opslagaccounts voor cloudoperators die opslagaccounts en de rol Inzender voor klassieke opslagaccounts moeten beheren om klassieke opslagaccounts te beheren. Voor cloudoperators die VM's moeten beheren, maar niet het virtuele netwerk of opslagaccount waarmee ze zijn verbonden, kunt u ze toevoegen aan de rol Inzender voor virtuele machines.

Organisaties die geen toegangsbeheer voor gegevens afdwingen met behulp van mogelijkheden zoals Azure RBAC, geven mogelijk meer bevoegdheden dan nodig is voor hun gebruikers. Meer bevoegdheden dan nodig kan leiden tot inbreuk op gegevens doordat sommige gebruikers toegang hebben tot gegevens die ze niet in de eerste plaats mogen hebben.

Zie voor meer informatie over Azure RBAC:

Versleuteling aan de clientzijde gebruiken voor gegevens met een hoge waarde

Met versleuteling aan de clientzijde kunt u gegevens die onderweg zijn programmatisch versleutelen voordat u uploadt naar Azure Storage en gegevens programmatisch ontsleutelen bij het ophalen ervan. Versleuteling aan de clientzijde biedt versleuteling van gegevens die onderweg zijn, maar biedt ook versleuteling van data-at-rest. Versleuteling aan de clientzijde is de veiligste methode voor het versleutelen van uw gegevens, maar hiervoor moet u programmatische wijzigingen aanbrengen in uw toepassing en sleutelbeheerprocessen uitvoeren.

Met versleuteling aan de clientzijde hebt u ook de enige controle over uw versleutelingssleutels. U kunt uw eigen versleutelingssleutels genereren en beheren. Er wordt gebruikgemaakt van een enveloptechniek waarbij de Azure Storage-clientbibliotheek een CEK (Content Encryption Key) genereert die vervolgens wordt verpakt (versleuteld) met behulp van de sleutelversleutelingssleutel (KEK). De KEK wordt geïdentificeerd met een sleutel-id en kan een asymmetrisch sleutelpaar of een symmetrische sleutel zijn en lokaal worden beheerd of opgeslagen in Azure Key Vault.

Versleuteling aan de clientzijde is ingebouwd in Java en de .NET Storage-clientbibliotheken. Zie Versleuteling aan de clientzijde en Azure Key Vault voor Microsoft Azure Storage voor informatie over het versleutelen van gegevens in clienttoepassingen en het genereren en beheren van uw eigen versleutelingssleutels.

Storage Service Encryption inschakelen voor data-at-rest

Wanneer Storage Service Encryption voor Bestandsopslag is ingeschakeld, worden de gegevens automatisch versleuteld met behulp van AES-256-versleuteling. Microsoft verwerkt alle versleuteling, ontsleuteling en sleutelbeheer. Deze functie is beschikbaar voor LRS- en GRS-redundantietypen.

Volgende stappen

In dit artikel hebt u kennisgemaakt met een verzameling aanbevolen procedures voor Azure Storage-beveiliging voor het beveiligen van uw PaaS-web- en mobiele toepassingen. Zie voor meer informatie over het beveiligen van uw PaaS-implementaties: