Hantera åtkomstnycklar för lagringskonto

När du skapar ett lagringskonto genererar Azure två 512-bitars lagringskontoåtkomstnycklar för det kontot. Dessa nycklar kan användas för att auktorisera åtkomst till data i ditt lagringskonto via auktorisering av delad nyckel eller via SAS-token som är signerade med den delade nyckeln.

Microsoft rekommenderar att du använder Azure Key Vault för att hantera dina åtkomstnycklar och att du regelbundet roterar och återskapar dina nycklar. Med Azure Key Vault är det enkelt att rotera dina nycklar utan avbrott i dina program. Du kan också rotera dina nycklar manuellt.

Skydda dina åtkomstnycklar

Åtkomstnycklar för lagringskonto ger fullständig åtkomst till konfigurationen av ett lagringskonto samt data. Var alltid noga med att skydda dina åtkomstnycklar. Använd Azure Key Vault för att hantera och rotera dina nycklar på ett säkert sätt. Åtkomst till den delade nyckeln ger en användare fullständig åtkomst till ett lagringskontos konfiguration och dess data. Åtkomsten till delade nycklar bör begränsas noggrant och övervakas. Använd SAS-token med begränsad åtkomstomfång i scenarier där Microsoft Entra ID-baserad auktorisering inte kan användas. Undvik hårdkodade åtkomstnycklar eller spara dem var som helst i oformaterad text som är tillgänglig för andra. Rotera dina nycklar om du tror att de har komprometterats.

Viktigt!

Microsoft rekommenderar att du använder Microsoft Entra-ID för att auktorisera begäranden mot blob-, kö- och tabelldata om möjligt, i stället för att använda kontonycklarna (auktorisering av delad nyckel). Auktorisering med Microsoft Entra ID ger överlägsen säkerhet och enkel användning via auktorisering av delad nyckel. Mer information om hur du använder Microsoft Entra-auktorisering från dina program finns i Autentisera .NET-program med Azure-tjänster. För SMB Azure-filresurser rekommenderar Microsoft att du använder ad DS-integrering (lokal Active Directory Domain Services) eller Microsoft Entra Kerberos-autentisering.

Om du vill hindra användare från att komma åt data i ditt lagringskonto med delad nyckel kan du inte tillåta auktorisering av delad nyckel för lagringskontot. Detaljerad åtkomst till data med minsta möjliga behörighet rekommenderas som bästa praxis för säkerhet. Microsoft Entra ID-baserad auktorisering bör användas för scenarier som stöder OAuth. Kerberos eller SMTP ska användas för Azure Files via SMB. För Azure Files via REST kan SAS-token användas. Åtkomst med delad nyckel ska inaktiveras om det inte krävs för att förhindra oavsiktlig användning. Mer information finns i Förhindra auktorisering av delad nyckel för ett Azure Storage-konto.

För att skydda ett Azure Storage-konto med principer för villkorsstyrd åtkomst i Microsoft Entra måste du inte tillåta auktorisering av delad nyckel för lagringskontot.

Om du har inaktiverat åtkomst till delad nyckel och du ser auktorisering av delad nyckel rapporterad i diagnostikloggarna anger detta att betrodd åtkomst används för att komma åt lagring. Mer information finns i Betrodd åtkomst för resurser som registrerats i din prenumeration.

Visa kontoåtkomstnycklar

Du kan visa och kopiera dina kontoåtkomstnycklar med Azure-portalen, PowerShell eller Azure CLI. Azure-portalen innehåller också en anslutningssträng för ditt lagringskonto som du kan kopiera.

Så här visar och kopierar du åtkomstnycklarna för lagringskontot eller anslutningssträng från Azure-portalen:

  1. Gå till ditt lagringskonto i Azure-portalen.

  2. Under Säkerhet + nätverk väljer du Åtkomstnycklar. Åtkomstnycklarna för kontot visas, samt den fullständiga anslutningssträngen för varje nyckel.

  3. Välj Visa nycklar för att visa dina åtkomstnycklar och anslutningssträng och aktivera knappar för att kopiera värdena.

  4. Under key1 letar du upp nyckelvärdet . Välj knappen Kopiera för att kopiera kontonyckeln.

  5. Alternativt kan du kopiera hela anslutningssträng. Under key1 letar du reda på värdet för Anslut ionssträngen. Välj knappen Kopiera för att kopiera anslutningssträng.

    Screenshot showing how to view access keys in the Azure portal

Du kan använda någon av de två nycklarna för att komma åt Azure Storage, men i allmänhet är det bra att använda den första nyckeln och reservera användningen av den andra nyckeln för när du roterar nycklar.

Om du vill visa eller läsa ett kontos åtkomstnycklar måste användaren antingen vara tjänstadministratör eller tilldelas en Azure-roll som innehåller åtgärden Microsoft.Storage/storageAccounts/listkeys/action. Vissa inbyggda Azure-roller som inkluderar den här åtgärden är rollrollerna Ägare, Deltagare och Lagringskontonyckeloperatör . Mer information om tjänstadministratörsrollen finns i Azure-roller , Microsoft Entra-roller och klassiska administratörsroller för prenumerationer. Detaljerad information om inbyggda roller för Azure Storage finns i avsnittet Lagring i inbyggda Azure-roller för Azure RBAC.

Använda Azure Key Vault för att hantera dina åtkomstnycklar

Microsoft rekommenderar att du använder Azure Key Vault för att hantera och rotera dina åtkomstnycklar. Ditt program kan på ett säkert sätt komma åt dina nycklar i Key Vault, så att du kan undvika att lagra dem med programkoden. Mer information om hur du använder Key Vault för nyckelhantering finns i följande artiklar:

Rotera åtkomstnycklar manuellt

Microsoft rekommenderar att du roterar dina åtkomstnycklar regelbundet för att skydda ditt lagringskonto. Om möjligt använder du Azure Key Vault för att hantera dina åtkomstnycklar. Om du inte använder Key Vault måste du rotera nycklarna manuellt.

Två åtkomstnycklar tilldelas så att du kan rotera dina nycklar. Att ha två nycklar säkerställer att programmet har åtkomst till Azure Storage under hela processen.

Varning

Återskapa dina åtkomstnycklar kan påverka alla program eller Azure-tjänster som är beroende av lagringskontonyckeln. Klienter som använder kontonyckeln för att komma åt lagringskontot måste uppdateras för att använda den nya nyckeln, inklusive medietjänster, moln-, skrivbords- och mobilprogram och grafiska användargränssnittsprogram för Azure Storage, till exempel Azure Storage Explorer.

Om du roterar eller återskapar åtkomstnycklar återkallas dessutom signaturer för delad åtkomst (SAS) som genereras baserat på den nyckeln. Efter åtkomstnyckelrotationen måste du återskapa konto- och tjänst-SAS-token för att undvika avbrott i program. Observera att SAS-token för användardelegering skyddas med Microsoft Entra-autentiseringsuppgifter och inte påverkas av nyckelrotation.

Om du planerar att rotera åtkomstnycklar manuellt rekommenderar Microsoft att du anger en nyckel förfalloprincip. Mer information finns i Skapa en nyckel förfalloprincip.

När du har skapat nyckelförfalloprincipen kan du använda Azure Policy för att övervaka om ett lagringskontos nycklar har roterats inom det rekommenderade intervallet. Mer information finns i Söka efter principöverträdelser för nyckelförfallodatum.

Så här roterar du åtkomstnycklarna för lagringskontot i Azure-portalen:

  1. Uppdatera anslutningssträng i programkoden för att referera till den sekundära åtkomstnyckeln för lagringskontot.
  2. Gå till ditt lagringskonto i Azure-portalen.
  3. Under Säkerhet + nätverk väljer du Åtkomstnycklar.
  4. Om du vill återskapa den primära åtkomstnyckeln för ditt lagringskonto väljer du knappen Återskapa bredvid den primära åtkomstnyckeln.
  5. Uppdatera anslutningssträngarna i koden så att de refererar till den nya primärnyckeln.
  6. Återskapa den sekundära åtkomstnyckeln på samma sätt.

Varning

Microsoft rekommenderar att du bara använder en av nycklarna i alla dina program samtidigt. Om du använder Nyckel 1 på vissa ställen och Nyckel 2 i andra kan du inte rotera dina nycklar utan att något program förlorar åtkomst.

Om du vill rotera ett kontos åtkomstnycklar måste användaren antingen vara tjänstadministratör eller tilldelas en Azure-roll som innehåller åtgärden Microsoft.Storage/storageAccounts/regeneratekey/action. Vissa inbyggda Azure-roller som inkluderar den här åtgärden är rollrollerna Ägare, Deltagare och Lagringskontonyckeloperatör . Mer information om tjänstadministratörsrollen finns i Azure-roller , Microsoft Entra-roller och klassiska administratörsroller för prenumerationer. Detaljerad information om inbyggda Azure-roller för Azure Storage finns i avsnittet Lagring i inbyggda Azure-roller för Azure RBAC.

Skapa en nyckel förfalloprincip

Med en nyckel förfalloprincip kan du ange en påminnelse om rotationen av kontoåtkomstnycklarna. Påminnelsen visas om det angivna intervallet har förflutit och nycklarna ännu inte har roterats. När du har skapat en nyckel förfalloprincip kan du övervaka dina lagringskonton för efterlevnad för att säkerställa att kontoåtkomstnycklarna roteras regelbundet.

Kommentar

Innan du kan skapa en nyckel förfalloprincip kan du behöva rotera var och en av dina kontoåtkomstnycklar minst en gång.

Så här skapar du en nyckel förfalloprincip i Azure-portalen:

  1. Gå till ditt lagringskonto i Azure-portalen.
  2. Under Säkerhet + nätverk väljer du Åtkomstnycklar. Åtkomstnycklarna för kontot visas, samt den fullständiga anslutningssträngen för varje nyckel.
  3. Välj knappen Ange rotationspåminnelse. Om knappen Ange rotationspåminnelse är nedtonad måste du rotera var och en av dina nycklar. Följ stegen som beskrivs i Rotera åtkomstnycklar manuellt för att rotera nycklarna.
  4. I Ange en påminnelse om att rotera åtkomstnycklar markerar du kryssrutan Aktivera påminnelser om nyckelrotation och anger en frekvens för påminnelsen.
  5. Välj Spara.

Screenshot showing how to create a key expiration policy in the Azure portal

Sök efter principöverträdelser för nyckelförfallodatum

Du kan övervaka dina lagringskonton med Azure Policy för att säkerställa att kontoåtkomstnycklarna har roterats inom den rekommenderade perioden. Azure Storage tillhandahåller en inbyggd princip för att säkerställa att lagringskontots åtkomstnycklar inte har upphört att gälla. Mer information om den inbyggda principen finns i Lagringskontonycklar bör inte upphöra att gälla i Lista över inbyggda principdefinitioner.

Tilldela den inbyggda principen för ett resursomfång

Följ de här stegen för att tilldela den inbyggda principen till rätt omfång i Azure-portalen:

  1. I Azure-portalen söker du efter Princip för att visa Instrumentpanelen för Azure Policy.

  2. I avsnittet Redigering väljer du Tilldelningar.

  3. Välj Tilldela princip.

  4. På fliken Grundinställningarsidan Tilldela princip anger du omfånget för principtilldelningen i avsnittet Omfång . Välj knappen Mer för att välja prenumerationen och den valfria resursgruppen.

  5. I fältet Principdefinition väljer du knappen Mer och anger lagringskontonycklar i fältet Sök . Välj principdefinitionen med namnet Lagringskontonycklar ska inte ha upphört att gälla.

    Screenshot showing how to select the built-in policy to monitor key rotation intervals for your storage accounts

  6. Välj Granska + skapa för att tilldela principdefinitionen till det angivna omfånget.

    Screenshot showing how to create the policy assignment

Övervaka efterlevnaden av nyckelns förfalloprincip

Följ dessa steg för att övervaka dina lagringskonton för efterlevnad av nyckelförfalloprincipen:

  1. Leta upp den inbyggda principdefinitionen för det omfång som du angav i principtilldelningen på Instrumentpanelen för Azure Policy. Du kan söka efter Lagringskontonycklar bör inte ha upphört att gälla i sökrutan för att filtrera efter den inbyggda principen.

  2. Välj principnamnet med önskat omfång.

  3. På sidan Principtilldelning för den inbyggda principen väljer du Visa efterlevnad. Alla lagringskonton i den angivna prenumerationen och resursgruppen som inte uppfyller principkraven visas i efterlevnadsrapporten.

    Screenshot showing how to view the compliance report for the key expiration built-in policy

Om du vill att ett lagringskonto ska vara kompatibelt roterar du kontoåtkomstnycklarna.

Nästa steg