Metodtips för att skydda PaaS-webb- och mobilprogram med hjälp av Azure Storage
I den här artikeln diskuterar vi en samling metodtips för Azure Storage-säkerhet för att skydda paaS-webb- och mobilprogram (plattform som en tjänst). Dessa metodtips härleds från vår erfarenhet av Azure och upplevelserna hos kunder som dig själv.
Azure gör det möjligt att distribuera och använda lagring på ett sätt som inte är enkelt att uppnå lokalt. Med Azure Storage kan du nå höga nivåer av skalbarhet och tillgänglighet med relativt lite arbete. Azure Storage är inte bara grunden för Virtuella Windows- och Linux-datorer i Azure, det kan också ha stöd för stora distribuerade program.
Azure Storage tillhandahåller följande fyra tjänster: Blob Storage, Table Storage, Queue Storage och File Storage. Mer information finns i Introduktion till Microsoft Azure Storage.
I den här artikeln beskrivs följande metodtips:
- Signaturer för delad åtkomst (SAS)
- Rollbaserad åtkomstkontroll i Azure (Azure RBAC)
- Kryptering på klientsidan för data med högt värde
- Kryptering för lagringstjänst
Använda en signatur för delad åtkomst i stället för en lagringskontonyckel
Åtkomstkontroll är kritisk. För att hjälpa dig att styra åtkomsten till Azure Storage genererar Azure två 512-bitars lagringskontonycklar (SAK:er) när du skapar ett lagringskonto. Nivån på nyckelredundans gör det möjligt för dig att undvika avbrott i tjänsten under rutinmässig nyckelrotation.
Lagringsåtkomstnycklar är högprioriterade hemligheter och bör endast vara tillgängliga för personer som ansvarar för åtkomstkontroll för lagring. Om fel personer får åtkomst till dessa nycklar har de fullständig kontroll över lagringen och kan ersätta, ta bort eller lägga till filer i lagringen. Detta omfattar skadlig kod och andra typer av innehåll som potentiellt kan äventyra din organisation eller dina kunder.
Du behöver fortfarande ett sätt att ge åtkomst till objekt i lagring. Om du vill ge mer detaljerad åtkomst kan du dra nytta av signaturen för delad åtkomst (SAS). MED SAS kan du dela specifika objekt i lagringen under ett fördefinierat tidsintervall och med specifika behörigheter. Med en signatur för delad åtkomst kan du definiera:
- Det intervall som SAS är giltigt för, inklusive starttid och förfallotid.
- De behörigheter som beviljas av SAS. En SAS på en blob kan till exempel ge en användare läs- och skrivbehörighet till blobben, men inte ta bort behörigheter.
- En valfri IP-adress eller ett intervall med IP-adresser som Azure Storage accepterar SAS från. Du kan till exempel ange ett intervall med IP-adresser som tillhör din organisation. Detta ger ytterligare ett säkerhetsmått för din SAS.
- Det protokoll som Azure Storage accepterar SAS över. Du kan använda den här valfria parametern för att begränsa åtkomsten till klienter med HTTPS.
MED SAS kan du dela innehåll på det sätt som du vill dela det utan att ge bort dina lagringskontonycklar. Att alltid använda SAS i ditt program är ett säkert sätt att dela dina lagringsresurser utan att äventyra dina lagringskontonycklar.
Mer information om signatur för delad åtkomst finns i Använda signaturer för delad åtkomst.
Använda rollbaserad Azure-åtkomstkontroll
Ett annat sätt att hantera åtkomst är att använda rollbaserad åtkomstkontroll i Azure (Azure RBAC). Med Azure RBAC fokuserar du på att ge anställda de exakta behörigheter de behöver, baserat på behovet av att känna till och minsta möjliga behörighetssäkerhetsprinciper. För många behörigheter kan exponera ett konto för angripare. För få behörigheter innebär att anställda inte kan få sitt arbete gjort effektivt. Azure RBAC hjälper dig att lösa det här problemet genom att erbjuda detaljerad åtkomsthantering för Azure. Åtkomstkontroll är absolut nödvändigt för organisationer som vill tillämpa säkerhetsprinciper för dataåtkomst.
Du kan använda inbyggda Azure-roller i Azure för att tilldela behörigheter till användare. Du kan till exempel använda Lagringskontodeltagare för molnoperatörer som behöver hantera lagringskonton och rollen klassisk lagringskontodeltagare för att hantera klassiska lagringskonton. För molnoperatörer som behöver hantera virtuella datorer men inte det virtuella nätverk eller lagringskonto som de är anslutna till kan du lägga till dem i rollen Virtuell datordeltagare.
Organisationer som inte tillämpar dataåtkomstkontroll med hjälp av funktioner som Azure RBAC kan ge fler privilegier än nödvändigt för sina användare. Fler privilegier än nödvändigt kan leda till dataintrång genom att ge vissa användare åtkomst till data som de inte borde ha i första hand.
Mer information om Azure RBAC finns i:
- Tilldela Azure-roller med hjälp av Azure-portalen
- Inbyggda roller i Azure
- Säkerhetsrekommendationer för Blob Storage
Använda kryptering på klientsidan för data med högt värde
Med kryptering på klientsidan kan du programmatiskt kryptera data under överföring innan du laddar upp till Azure Storage och programmatiskt dekryptera data när du hämtar dem. Kryptering på klientsidan tillhandahåller kryptering av data under överföring, men det ger även kryptering av vilande data. Kryptering på klientsidan är den säkraste metoden för att kryptera dina data, men det kräver att du gör programmatiska ändringar i ditt program och placerar nyckelhanteringsprocesser på plats.
Med kryptering på klientsidan kan du också ha ensam kontroll över dina krypteringsnycklar. Du kan generera och hantera dina egna krypteringsnycklar. Den använder en kuvertteknik där Azure Storage-klientbiblioteket genererar en innehållskrypteringsnyckel (CEK) som sedan omsluts (krypterad) med hjälp av nyckelkrypteringsnyckeln (KEK). KEK identifieras av en nyckelidentifierare och kan vara ett asymmetriskt nyckelpar eller en symmetrisk nyckel och kan hanteras lokalt eller lagras i Azure Key Vault.
Kryptering på klientsidan är inbyggt i Java- och .NET-lagringsklientbiblioteken. Se Kryptering på klientsidan och Azure Key Vault för Microsoft Azure Storage för information om hur du krypterar data i klientprogram och genererar och hanterar dina egna krypteringsnycklar.
Aktivera kryptering av lagringstjänst för vilande data
När Kryptering av lagringstjänst för fillagring är aktiverat krypteras data automatiskt med hjälp av AES-256-kryptering. Microsoft hanterar all kryptering, dekryptering och nyckelhantering. Den här funktionen är tillgänglig för redundanstyperna LRS och GRS.
Nästa steg
I den här artikeln beskrivs en samling metodtips för Säkerhet i Azure Storage för att skydda dina PaaS-webb- och mobilprogram. Mer information om hur du skyddar dina PaaS-distributioner finns i: