Blog

Så säkrar du MCP-arkitekturer för produktion i enterprise-miljöer

JUN 2, 2026

Jag har sett Model Context Protocol (MCP) möjliggöra fantastiska agentiska arbetsflöden, men det finns en obekväm sanning som jag alltid berättar för mina kunder: att bygga den tekniska arkitekturen är den enkla delen. Klyftan mellan ”det fungerar perfekt i min demo” och ”företagets säkerhetsteam godkänner det för produktion” är där de flesta MCP-projekt dör.

Eficode is the leading DevOps company in Europe, driving and building the future of software development across 10 countries, with 500+ experts in DevOps and sustainable software development. Our Eficode ROOT managed DevOps platform provides centralized access control and real-time visibility of project status, quality, and performance that integrates with 50+ of your preferred tools, including the Atlassian Stack and open-source systems like Jenkins and Kubernetes.

För att få dina AI-agenter ur sandlådan och i produktion behöver du redan från dag ett utforma lösningen för säkerhet, styrning och företagsverksamhetens verklighet. Här är en pragmatisk guide till de säkerhetsaspekter och beprövade metoder jag använder för MCP-utveckling i stora organisationer.

1. Hantering av OAuth-token i tillståndslösa arkitekturer

MCP-servern fungerar perfekt i demon. Sedan skalar din container automatiskt ned till noll över natten, och allt slutar fungera.

Kärnproblemet är att OAuth-token löper ut. Om din "tillståndslösa" arkitektur förlorar token så fort en container stängs ned måste användaren autentisera sig på nytt varje morgon, utan refresh tokens. Din säkerhetsavdelning kommer inte att godkänna ett system med den här nivån av friktion.

Här är fyra sätt att lösa detta, rangordnade efter hur jobbiga de är att implementera:

  • Separat tokenlagring (liten insats): Lagra refresh tokens utanför containern i en secrets manager eller ett lättviktigt persistenslager. När containern startar hämtar den smidigt en ny token.

  • Separera läs- och skrivåtkomst (medelstor insats): De flesta MCP-användningsfall är i hög grad läsorienterade. Använd en långlivad service account-token för skrivskyddade åtgärder och kräv OAuth på användarnivå endast för skrivåtgärder.

  • Håll containern igång (hög kostnad, liten insats): Inaktivera helt enkelt automatisk nedskalning till noll. Det är dyrt, men kan vara rätt val om säkerhetsteamet blockerar beständig tokenlagring.

  • 90 dagars förnyelsefönster (den bästa balansen): Konfigurera systemet så att refresh token förblir giltig om användarna interagerar med det minst en gång var 90:e dag. Containern kan stängas ned varje natt, men autentiseringen består så länge systemet används regelbundet.

2. Gränser för dataåtkomst: sandlådemönstret

Låt aldrig din AI-agent hämta sin egen data.

Om en agent har direkt åtkomst till datakällor i produktion ärver den behörigheterna från sitt service account. I de flesta organisationer har service accounts betydligt mer åtkomst än någon enskild användare bör ha. I början av 2026 granskade jag en kundmiljö där en "skrivskyddad" AI-assistent hade ärvt ett äldre service account som fortfarande hade behörigheten DROP TABLE i tre produktionsdatabaser. Agenten förstår inte IAM-gränser eller dataklassificering, utan frågar gärna efter allt den kan nå.

Detta leder ofta till att agenten upptäcker känsliga data och visar dem i ett promptsvar. Implementera Sandbox Pattern för att förhindra detta:

  1. En separat process hämtar data med kundens faktiska behörigheter, inte agentens.

  2. Datan läses in i en sandlådemiljö.

  3. Agenten arbetar uteslutande i den sandlådan.

  4. Agenten kan rent tekniskt inte kringgå IAM-regler eftersom den aldrig har kontakt med källsystemen.

Se din AI-agent som en opålitlig praktikant med goda avsikter. Ge den exakt den data den behöver, på användarens behörighetsnivå, och inget mer.

3. Behörighetsmodeller och Human-in-the-Loop

Team ger ofta agenter bred åtkomst eftersom det tar tid att bygga korrekta behörighetsgränser. Det skapar tre olika typer av fel: att odokumenterade API-kontrakt bryts, att data förstörs genom hänsynslös optimering och att kaskadfel i systemen utlöses.

För att minska dessa risker ska du tillämpa följande tre principer:

Avgränsade token, inte autentiseringsuppgifter

Varje interaktion mellan en agent och produktionsmiljön måste gå via specialbyggda API:er med minsta nödvändiga behörighet. Agenter ska aldrig ha administratörsnycklar, autentiseringsuppgifter för driftsättning eller token som kan utföra destruktiva åtgärder.

Obligatoriska godkännanden från människor

Allt som inte enkelt kan ångras kräver godkännande från en människa. Databasändringar, driftsättningar i produktion och extern kommunikation behöver en faktisk granskning av någon som har den affärskontext som AI saknar.

Dokumentera begränsningar i koden

AI optimerar för det mål den får, utifrån den kontext den kan läsa. Om det finns ett API-kontrakt, ett beroende eller en affärsregel måste det finnas i kodbasen. Kommentarer, konfigurationsfiler och arkitekturbeslut är synliga för agenten. PDF:er som ligger begravda i SharePoint är det inte.

4. Operativa skyddsräcken för AI-arbetsflöden

Dynamiska AI-arbetsflöden är utmärkta för prototyper, men de skapar oförutsägbarhet i produktion. Tillämpa dessa fyra operativa regler:

  • Låt inte AI hoppa över de tråkiga delarna: AI optimerar för att bli klar och hoppar över långsamma steg som kodskanning eller säkerhetskontroller. Bygg in kvalitetsgrindar i pipelinen så att de inte går att förhandla bort.

  • Ge aldrig skrivbehörighet till kritiska system: Om en agent behöver utföra en riskfylld åtgärd måste den begära godkännande via en human-in-the-loop-grind genom avgränsade API:er.

  • Kontext är en bristvara: AI vet inte vad den inte vet. Varje odokumenterad begränsning är en tickande bomb.

  • Standardisera dynamiska arbetsflöden: När en AI har upptäckt ett framgångsrikt dynamiskt arbetsflöde ska du låsa det. Omvandla det till en deterministisk, repeterbar pipeline, precis som jag rekommenderar team att göra med vår standard för DevSecOps.

5. Säkerhet i leveranskedjan: hotet från slopsquatting

AI-kodassistenter hallucinerar ofta paketnamn. Angripare har insett detta och registrerar dessa falska namn i offentliga register. Det kallas "slopsquatting" och är mycket förutsägbart eftersom AI-modeller tenderar att upprepat hallucinera samma falska paket.

Attackkedjan ser ut så här:

  1. En AI-assistent föreslår ett paket som inte finns i ett kodexempel.

  2. En angripare identifierar denna vanliga hallucination och registrerar det skadliga paketet på npm eller PyPI (vilket har setts i de senaste attackerna mot leveranskedjan som dokumenteras i Sonatype's 2026 State of the Software Supply Chain Report).

  3. En utvecklare följer AI:ns förslag och installerar paketet.

  4. CI/CD-pipelinen kör den skadliga koden med full åtkomst till buildmiljön.

För att minska risken bör du låsa dina beroenden strikt med hashverifiering, granska alla paket som AI föreslår före installation och använda tillåtelselistor i dina CI/CD-pipelines så att endast förhandsgodkända bibliotek tillåts.

6. Styrning av tokens och åtkomst

Oavsett om du arbetar med GitHub-integrationer eller MCP-servrar kräver programmatisk åtkomst strikt styrning. Alla företag behöver dessa fyra grundläggande dokument för att undvika ändlös incidenthantering:

  • Riktlinjer för PAT- och SSH-åtkomst: Definiera vilken autentiseringsmetod som ska användas, begränsningar av behörigheter och policyer för utgångsdatum.

  • Migreringsväg till Apps: Beskriv hur ni går från äldre Personal Access Tokens till Apps med detaljerat avgränsade behörigheter.

  • Incidenthanteringsplan: Beskriv de exakta stegen för upptäckt, eskalering och åtgärd vid komprometterade tokens eller hemligheter.

  • Beslutsträd för API-åtkomst: Koppla specifika användningsfall till godkända åtkomstmetoder och säkerhetsavvägningar.

7. Kontexthantering i stor skala

Kontextfiler (som AGENTS.md) fungerar utmärkt för små team med ett enda repository. I stor skala, med hundratals repositories, faller det här arbetssättet samman.

Historisk kunskap finns i wikis, domänlogik finns i människors huvuden och arkitekturbeslut är utspridda. Du kan inte underhålla 200 decentraliserade markdownfiler när mönster förändras över tid. Kontextfiler per repository ger omedelbart värde, men ditt kontextlager på organisationsnivå måste vara centraliserat och kunna sökas dynamiskt över flera plattformar.

8. Dataresidens jämfört med datasuveränitet

När enterprise architects frågar om ”suverän AI” för MCP-distributioner måste du reda ut terminologin innan du utformar en lösning.

  • Dataresidens: Dina data stannar i en specifik geografisk region i en molnleverantörs infrastruktur. Detta uppfyller GDPR och täcker 95 % av företagens behov.

  • Datasuveränitet: Du kontrollerar hela stacken. Ingen utländsk part kan genom domstolsföreläggande kräva åtkomst.

Använd detta beslutsramverk för MCP-hosting:

Tier

Option

When to Use

1

SaaS

Default choice. Fastest time to value.

2

Cloud vendor

When compliance explicitly requires data residency.

3

True on-prem

Strictly for defense, intelligence, or binding legal requirements.

Nivå

Alternativ

När det ska användas

1

SaaS

Standardvalet. Snabbast väg till värde.

2

Molnleverantör

När compliance uttryckligen kräver dataresidens.

3

Äkta on-prem

Endast för försvar, underrättelseverksamhet eller bindande juridiska krav.

Om du inte kan hänvisa till en specifik lag eller avtalsklausul som kräver nivå 3 bygger du sannolikt för omfattande.

Sammanfattning: säkerhetschecklistan för MCP

Att få ett MCP-projekt till produktion innebär att klara säkerhetsgranskningen. Använd den här checklistan som utgångspunkt:

Focus area

Core Best Practice

Authentication

Separate token storage; plan for expiry; split read/write access.

Data access

Use the sandbox pattern; fetch data with user privileges outside the agent.

Permissions

Issue scoped tokens only; mandate human-in-the-loop for write actions.

Workflows

Hard-code security scans; freeze dynamic AI paths into standard pipelines.

Supply chain

Verify hashes; audit AI package suggestions; enforce CI/CD allowlists.

Governance

Define PAT policies, incident response plans, and API decision trees.

Context

Document constraints in code; centralize organizational knowledge.

Hosting

Default to SaaS; escalate to sovereign only when legally required.

Fokusområde

Viktig beprövad metod

Autentisering

Separat tokenlagring; planera för utgångstid; separera läs- och skrivåtkomst.

Dataåtkomst

Använd sandbox-mönstret; hämta data med användarbehörighet utanför agenten.

Behörigheter

Utfärda endast tokens med begränsad omfattning; kräv mänsklig medverkan för skrivåtgärder.

Arbetsflöden

Hårdkoda säkerhetsskanningar; frys dynamiska AI-vägar i standardiserade pipelines.

Leveranskedja

Verifiera hashar; granska AI:s paketförslag; tillämpa allowlists för CI/CD.

Styrning

Definiera policyer för PAT, planer för incidenthantering och beslutsträd för API:er.

Kontext

Dokumentera begränsningar i koden; centralisera organisationens kunskap.

Drift

Välj SaaS som standard; eskalera till suveräna alternativ endast när lagen kräver det.

Subscribe to our newsletter