Skydda distributionen av Azure MCP Server

Azure MCP Server ansluter AI-agenter till Azure tjänster, kör verktyg åt dig och koordinatorer åtkomst till dina Azure resurser via de token som auktoriserar varje anrop. Eftersom den Azure MCP-servern finns mellan dina agenter och dina molnresurser måste du skydda själva Azure MCP-servern, de token som auktoriserar åtkomst och verktygsindata och utdata som flödar genom dina agenter.

Den här artikeln innehåller vägledning om hur du bäst skyddar din Azure MCP Server-distribution.

Autentisering och auktorisering

DEN Azure MCP-servern använder Microsoft Entra ID via Azure identitetsbiblioteket för att autentisera anropare. MCP-auktoriseringsspecifikationen kräver OAuth 2.1, så behandla Azure MCP-servern som en OAuth 2.1-resursserver. Klienter måste använda PKCE (proof key for Code Exchange) när de utför auktoriseringskodflöden. Använd följande metoder:

  • Verifiera varje auktoriseringstoken. Kontrollera utfärdaren, målgruppen och förfallodatum för varje inkommande auktoriseringstoken innan du tillåter körning av verktyg. Lita inte på token som saknar nödvändiga anspråk eller som har utfärdats för en annan resurs.

  • Bind auktoriseringstoken till sin avsedda målgrupp. Använd målgruppsbundna token så att en token som utfärdats för en tjänst inte kan spelas upp mot en annan.

  • Framtvinga strikt omdirigerings-URI-matchning och medgivande per klient. För auktoriseringskodflöden tillåter du endast förregistrerade, exakta omdirigerings-URI:er och kräver medgivande per klient, så att en avlyssnad auktoriseringskod inte kan lösas in av en annan klient.

  • Tillämpa RBAC enligt principen om minsta behörighet. Bevilja varje anropare endast de Azure RBAC-roller som krävs för uppgiften. den Azure MCP-servern återspeglar dina Azure prenumerationsbehörigheter – anropare som har bred prenumerationsåtkomst kan anropa en bred uppsättning verktyg. Begränsa rolltilldelningar så mycket som möjligt. Aktivera endast de verktyg som varje anropare behöver, eftersom varje verktyg som kan nås lägger till din attackyta.

  • Använd helst arbetsbelastningsidentiteter. I agentiska scenarier använder du hanterade identiteter eller arbetsbelastningsidentiteter i stället för långvariga hemligheter eller delade autentiseringsuppgifter. När statiska autentiseringsuppgifter är oundvikliga – till exempel API-nycklar för tjänster från tredje part som inte stöder arbetsbelastningsidentitet – lagrar du dem i Azure Key Vault och refererar till dem från distributionskonfigurationen. Lagra aldrig autentiseringsuppgifter i källkods- eller oformaterade konfigurationsfiler och rotera dem enligt ett regelbundet schema.

  • Undvik mönstret med förvirrad mellanhand. Begränsa Azure MCP-serverns egna Azure identitet och behörigheter till det minimum som krävs för att fungera. Låt inte servern fungera som en ställföreträdare som ger sina breda behörigheter till en lägre privilegierad anropare: separera serverns körningsidentitet från anroparens auktorisering och framtvinga behörighetskontroller per anropare i stället för att enbart förlita sig på serverns egna autentiseringsuppgifter.

Fjärr- Azure MCP-serverskydd

När du distribuerar Azure MCP Server som en fjärrserver med egen värd bör du överväga att placera den bakom Azure API Management (APIM) som en tvingande gateway:

  • Placera Azure MCP-servern bakom en tvingande gateway. APIM kan verifiera Entra ID token innan begäranden når din Azure MCP-server, vilket tar bort behovet av att din programkod inspekterar token.

  • Tillämpa gatewayprinciper för hastighetsbegränsning och granskning. Använd APIM-principer för att begränsa hur ofta anropare kan göra begäranden, begränsa tillåtna verktygssökvägar och logga varje begäran i granskningssyfte.

  • Centralisera åtkomstkontrollen vid en enda stryppunkt. En gateway tillhandahåller en central kontrollpunkt för åtkomstkontroll och observerbarhet över flera bakomliggande MCP-verktyg.

Skydda slutpunkten som Azure MCP Server-klienter ansluter till. En ersatt eller förfalskad URL kan ta emot begäranden om verktygskörning och exponera autentiseringsuppgifter eller Azure resursdata. Så här minskar du risken:

  • Anslut endast till betrodda Azure MCP Server-slutpunkter. Använd endast slutpunkter som du har etablerat eller som ditt team exponerar via APIM. Härled inte Azure MCP Server-URL:en från indata från användaren eller oautentiserade identifieringssvar.

  • Verifiera Azure MCP-serverns TLS-certifikat. Se till att ändpunkten matchar den förväntade värden. När du använder APIM dirigerar du klienter via gatewayen så att backslutpunkten inte kan omdirigeras tyst.

  • Stäng vid certifikatfel. Behandla ett overifierat eller okänt Azure MCP Server-certifikat som ett anslutningsfel, inte en varning om att kringgå.

Information om alternativ för egen värdhantering finns i Distribuera en egenvärdbaserad Azure MCP Server.

Härdning av lokal driftsättning

En lokal Azure MCP Server körs i utvecklarmiljön för utvecklingsanvändning. Eftersom det kan fungera med din Azure identitet kan du granska vad ditt inloggade konto kan komma åt innan du ansluter en agent till Azure resurser:

  • Granska dina Azure behörigheter. Kontrollera Azure RBAC-roller som tilldelats ditt utvecklarkonto och ta bort breda prenumerations- eller hanteringsgruppsbehörigheter som inte behövs för uppgiften.

  • Begränsa lokal åtkomst. Kör den lokala Azure MCP-servern från en betrodd arbetsstation eller container och exponera inte den lokala slutpunkten för ej betrodda nätverk eller andra användare på datorn.

  • Håll den lokala servern aktuell. Använd de senaste Azure MCP Server-paketen och korrigerade beroenden, särskilt innan du testar mot Azure-resurser som inte är i produktion.

  • Lokal körning i sandboxmiljö. Kör den lokala Azure MCP-servern i en container eller sandbox-miljö med begränsad filsystem- och nätverksåtkomst, och håll verktygskedjan korrigerad, för att begränsa kommandoinmatningen och sökvägens bläddringspåverkan när verktygen skapar underprocesser.

Använd inte en lokal Azure MCP-server för att hantera produktionsdata eller autentiseringsuppgifter för produktion.

Verktygsförgiftning och snabbinmatning

MCP-verktygsbeskrivningar och verktygssvar är indata till agentens kontext. Om verktygsmetadata eller verktygsutdata är skadliga kan det påverka en agent som har åtkomst till Azure MCP Server-verktyg och Azure behörigheter bakom dem.

Minska den här risken för Azure MCP Server-distributioner:

  • Välj den officiella Azure MCP Server från Microsoft. Använd förstapartsservern Azure MCP Server för Azure-tjänster i stället för en icke verifierad server som tillhandahåller liknande Azure-verktyg. Behandla schemaändringar för verktyg som beroendeändringar som kräver granskning.

  • Lita på verktygskontexten, men verifiera den. Behandla verktygsbeskrivningar och svar som ej betrodda indata till agenten. Granska verktygsdefinitioner före produktionsanvändning och verifiera eller sanera data som verktygssvaren skickar tillbaka till agentkontexten.

  • Verktygsdefinitioner för ändringskontroll. Granska och lås kända, tillförlitliga verktygsscheman och beskrivningar, och kräv ett nytt godkännande innan uppdaterade verktygsmetadata träder i kraft, så att en server inte i det tysta kan ändra beteende efter godkännandet (ett "rug pull" i leveranskedjan).

  • Använd Azure säkerhetskontroller där de passar din arkitektur. Utvärdera kontrollerna i Microsoft säkerhetskontroller för att inspektera agentkontexten, identifiera känsliga dataflöden och övervaka Azure AI-arbetsbelastningar. Kontrollera varje integreringssökväg innan du förlitar dig på den i produktion.

McP-serverförtroende från tredje part

Många utvecklarmiljöer kör flera MCP-servrar samtidigt. För arbete med Azure bör du föredra den officiella Azure MCP Servern, som underhålls av Microsoft, framför alternativ från communityn för Azure-tjänster.

Om du lägger till en MCP-server från tredje part bredvid Azure MCP Server:

  • Verifiera utgivaren och sökvägen för uppdatering. Använd servrar från betrodda utgivare med en offentlig säkerhetskontakt. Granska ändringsloggar och paketuppdateringar innan du tillåter tredjepartsservern i en agentmiljö som också kan nå Azure MCP Server-verktyg.

  • Håll autentiseringskontexter åtskilda. Låt inte en ej verifierad server få tillgång till de autentiseringsuppgifter, det filsystem eller den nätverksåtkomst som används av Azure MCP Server. Kör ej betrodda servrar med minst behörighet i en isolerad miljö.

  • Granska verktyg i hela agentkontexten. En skadlig server kan använda sina verktygsbeskrivningar för att påverka agentbeteendet mot andra betrodda servrar i samma kontext, inklusive Azure MCP Server. Granska verktygsbeskrivningarna för varje server som du konfigurerar, inte bara Azure verktyg.

Styrning och övervakning

Spåra vilka Azure MCP Server-instanser som körs i din miljö och övervaka deras aktivitet:

  • Inventeringsgodkända servrar. Upprätthålla en känd baslinje för registrerade Azure MCP Server-slutpunkter, till exempel med Azure API Center, så att du kan identifiera oregistrerade "skuggservrar" som ligger utanför styrningen.

  • Övervaka aktivitet och behåll bevis. Korrelera Azure MCP Server-aktivitet i Microsoft Sentinel och behålla Microsoft Purview granskningsloggar så att du kan undersöka misstänkta verktygsanrop.

Microsoft säkerhetskontroller

Använd följande Microsoft säkerhetstjänster för att lägga till skydd på djupet för Azure MCP Server-arbetsbelastningar. Tillämpligheten för varje kontroll för din specifika distribution beror på din arkitektur. Utvärdera varje kontroll i kontexten för din egen miljö:

  • Granska agentkontexten med Prompt Shields. Använd Azure AI Innehållsäkerhet Prompt Shields för att inspektera innehåll som kommer in i agentens kontext – inklusive verktygsbeskrivningar och verktygsutdata – och identifiera potentiella försök till snabbinmatning. Överväg att integrera Prompt Shields i din agentpipeline när du använder dynamiskt inlästa verktygsmetadata. Mer information finns i Prompt Shields.

  • Identifiera känsliga dataflöden med Purview DLP. Om din arbetsbelastning uttryckligen är integrerad med Microsoft Purview använder du Purview Data Loss Prevention-principer för att identifiera och flagga känsliga data i dataflöden som är associerade med dina agenter. Täckning av godtyckliga parametrar för verktygsanrop sker inte automatiskt – det beror på din distributionsarkitektur och vilka Purview-anslutningsprogram din arbetslast använder. Utvärdera om din specifika integreringssökväg stöder de kontroller du behöver innan du förlitar dig på DLP för agentarbetsbelastningar. Mer information finns i Microsoft Purview-dokumentationen.

  • Övervaka AI-arbetsbelastningar med Defender för molnet. Använd Microsoft Defender för molnet AI-hotskydd för hotidentifiering vid körning för AI-arbetsbelastningar, inklusive aviseringar om misstänkt aktivitet i API-anrop till Azure OpenAI och Azure AI Model Inference service. Täckningen utökas inte automatiskt till godtyckliga MCP-verktygsutdata – den gäller för Azure AI-tjänstskiktet i din arkitektur. Mer information finns i AI-skydd mot hot.

Note

Kontrollerna som anges tidigare är allmänna Azure säkerhetstjänster. Kontrollera att varje kontrolls integreringssökväg stöds för din specifika Azure MCP Server-distributionsarkitektur innan du aktiverar den i produktion.