Säkerhet för Azure AI-tjänster

Säkerhet bör betraktas som en topprioritering i utvecklingen av alla program, och med tillväxten av program med artificiell intelligens är säkerheten ännu viktigare. Den här artikeln beskriver olika säkerhetsfunktioner som är tillgängliga för Azure AI-tjänster. Varje funktion åtgärdar ett specifikt ansvar, så att flera funktioner kan användas i samma arbetsflöde.

En omfattande lista över säkerhetsrekommendationer för Azure-tjänster finns i artikeln säkerhetsbaslinje för Azure AI-tjänster.

Säkerhetsfunktioner

Funktion beskrivning
Transport Layer Security (TLS) Alla Azure AI-tjänstslutpunkter som exponeras via HTTP tillämpar TLS 1.2-protokollet. Med ett framtvingat säkerhetsprotokoll bör konsumenter som försöker anropa en Azure AI-tjänstslutpunkt följa dessa riktlinjer:
  • Klientoperativsystemet (OS) måste ha stöd för TLS 1.2.
  • Språket (och plattformen) som används för att göra HTTP-anropet måste ange TLS 1.2 som en del av begäran. Beroende på språk och plattform görs det implicit eller explicit att ange TLS.
  • För .NET-användare bör du överväga metodtipsen för Transport Layer Security
Autentiseringsalternativ Autentisering handlar om att verifiera en användares identitet. Auktorisering är däremot specifikationen av åtkomsträttigheter och behörigheter för resurser för en viss identitet. En identitet är en samling med information om ett huvudnamn och ett huvudnamn kan vara antingen en enskild användare eller en tjänst.

Som standard autentiserar du dina egna anrop till Azure AI-tjänster med hjälp av de prenumerationsnycklar som tillhandahålls. Detta är den enklaste metoden men inte den säkraste. Den säkraste autentiseringsmetoden är att använda hanterade roller i Microsoft Entra-ID. Mer information om detta och andra autentiseringsalternativ finns i Autentisera begäranden till Azure AI-tjänster.
Nyckelrotation Varje Azure AI-tjänstresurs har två API-nycklar för att aktivera hemlig rotation. Detta är en säkerhetsåtgärd som gör att du regelbundet kan ändra de nycklar som kan komma åt din tjänst och skydda tjänstens sekretess om en nyckel läcker ut. Mer information om detta och andra autentiseringsalternativ finns i Rotera nycklar.
Miljövariabler Miljövariabler är namn/värde-par som lagras i en specifik utvecklingsmiljö. Du kan lagra dina autentiseringsuppgifter på det här sättet som ett säkrare alternativ till att använda hårdkodade värden i koden. Men om din miljö komprometteras komprometteras även miljövariablerna, så det här är inte den säkraste metoden.

Anvisningar om hur du använder miljövariabler i koden finns i guiden Miljövariabler.
Kundhanterade nycklar (CMK) Den här funktionen gäller för tjänster som lagrar kunddata i vila (längre än 48 timmar). Även om dessa data redan är dubbelkrypterade på Azure-servrar kan användarna få extra säkerhet genom att lägga till ytterligare ett krypteringslager med nycklar som de hanterar själva. Du kan länka din tjänst till Azure Key Vault och hantera dina datakrypteringsnycklar där.

Endast vissa tjänster kan använda CMK. leta efter din tjänst på sidan Kundhanterade nycklar .
Virtuella nätverk Med virtuella nätverk kan du ange vilka slutpunkter som kan göra API-anrop till resursen. Azure-tjänsten avvisar API-anrop från enheter utanför nätverket. Du kan ange en formelbaserad definition av det tillåtna nätverket, eller så kan du definiera en fullständig lista över slutpunkter som ska tillåtas. Det här är ett annat säkerhetslager som kan användas i kombination med andra.
Dataförlustskydd Med funktionen för dataförlustskydd kan en administratör bestämma vilka typer av URI:er som deras Azure-resurs kan ta som indata (för de API-anrop som tar URI:er som indata). Detta kan göras för att förhindra eventuell exfiltrering av känsliga företagsdata: Om ett företag lagrar känslig information (till exempel en kunds privata data) i URL-parametrar kan en dålig aktör i företaget skicka känsliga URL:er till en Azure-tjänst som visar dessa data utanför företaget. Med dataförlustskydd kan du konfigurera tjänsten så att den avvisar vissa URI-formulär vid ankomsten.
Customer Lockbox Funktionen Customer Lockbox tillhandahåller ett gränssnitt där kunder kan granska och godkänna eller avvisa dataåtkomstbegäranden. Den används i fall där en Microsoft-tekniker behöver komma åt kunddata under en supportbegäran. Information om hur Customer Lockbox-begäranden initieras, spåras och lagras för senare granskningar och granskningar finns i guiden Kundlåsbox.

Customer Lockbox är tillgängligt för följande tjänster:
  • Azure OpenAI
  • Translator
  • Språkförståelse för konversationer
  • Klassificering av anpassad text
  • Anpassad namngiven entitetsigenkänning
  • Arbetsflöde för orkestrering
ByOS (Bring Your Own Storage) Speech-tjänsten har för närvarande inte stöd för Customer Lockbox. Du kan dock ordna så att dina tjänstspecifika data lagras i din egen lagringsresurs med hjälp av BYOS (bring-your-own-storage). MED BYOS kan du uppnå liknande datakontroller som Customer Lockbox. Tänk på att Speech Service-data finns kvar och bearbetas i Azure-regionen där Speech-resursen skapades. Detta gäller för vilande data och data under överföring. För anpassningsfunktioner som Custom Speech och Custom Voice överförs, lagras och bearbetas alla kunddata i samma region där Speech Service-resursen och BYOS-resursen (om den används) finns.

Om du vill använda BYOS med Speech följer du guiden Talkryptering av data i vila .

Microsoft använder inte kunddata för att förbättra sina Speech-modeller. Om slutpunktsloggning är inaktiverad och inga anpassningar används lagras dessutom inga kunddata av Speech.

Nästa steg