Dela via


Hantera åtkomstnycklar för lagringskonto

I den här artikeln får du lära dig hur du visar, hanterar och roterar åtkomstnycklar för lagringskonton. När du skapar ett lagringskonto genererar Azure två 512-bitars lagringskontoåtkomstnycklar för 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.

Viktigt!

För optimal säkerhet rekommenderar Microsoft att du använder Microsoft Entra-ID med hanterade identiteter för att auktorisera begäranden mot blob-, kö- och tabelldata när det är möjligt. Auktorisering med Microsoft Entra-ID och hanterade identiteter ger överlägsen säkerhet och enkel användning via auktorisering av delad nyckel. Mer information om hanterade identiteter finns i Vad är hanterade identiteter för Azure-resurser. Ett exempel på hur du aktiverar och använder en hanterad identitet för ett .NET-program finns i Autentisera Azure-värdbaserade appar till Azure-resurser med .NET.

För resurser som finns utanför Azure, till exempel lokala program, kan du använda hanterade identiteter via Azure Arc. Appar som körs på Azure Arc-aktiverade servrar kan till exempel använda hanterade identiteter för att ansluta till Azure-tjänster. Mer information finns i Autentisera mot Azure-resurser med Azure Arc-aktiverade servrar.

För scenarier där signaturer för delad åtkomst (SAS) används rekommenderar Microsoft att du använder en SAS för användardelegering. En SAS för användardelegering skyddas med Microsoft Entra-autentiseringsuppgifter i stället för kontonyckeln. Mer information om signaturer för delad åtkomst finns i Bevilja begränsad åtkomst till data med signaturer för delad åtkomst. Ett exempel på hur du skapar och använder en SAS för användardelegering med .NET finns i Skapa en SAS för användardelegering för en blob med .NET.

Skydda dina åtkomstnycklar

Åtkomstnycklar för lagringskonto ger fullständig åtkomst till lagringskontodata och möjligheten att generera SAS-token. 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 data. Åtkomsten till delade nycklar bör begränsas noggrant och övervakas. Använd SAS-token för användardelegering med begränsad åtkomstomfattning 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!

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 med hanterade identiteter 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 Microsoft Entra-klientorganisation.

Visa kontoåtkomstnycklar

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

Så här visar och kopierar du lagringskontots åtkomstnycklar eller anslutningssträng från Azure Portal:

  1. I Azure Portal går du till ditt lagringskonto.

  2. På resursmenyn 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 upp värdet Anslutningssträng . Välj knappen Kopiera för att kopiera anslutningssträng.

    Skärmbild som visar hur du visar åtkomstnycklar i 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 Portal:

  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 Portal.
  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 Portal:

  1. I Azure Portal går du till ditt lagringskonto.
  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.

Skärmbild som visar hur du skapar en nyckel förfalloprincip i 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 dessa steg för att tilldela den inbyggda principen till rätt omfång i Azure Portal:

  1. I Azure Portal 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.

    Skärmbild som visar hur du väljer den inbyggda principen för att övervaka nyckelrotationsintervall för dina lagringskonton

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

    Skärmbild som visar hur du skapar principtilldelningen

Ö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.

    Skärmbild som visar hur du visar efterlevnadsrapporten för den inbyggda principen för nyckelförfallodatum

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

Nästa steg