Mikrofrontendarkitektur med Module Federation · Lektion

Bästa praxis för säker federation

Lär er och tillämpa branschens bästa praxis för att bygga säkra och robusta Micro Frontend-system.

Lektion 3 av 411 steg

Bästa praxis för säker federation är en gratis lektion i Mikrofrontendarkitektur med Module Federation på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Mikrofrontendarkitektur med Module Federation, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Mikrofrontendarkitektur med Module Federation innehåller totalt 4 lektioner.

Säker federation: Bästa praxis

Välkommen! I den här lektionen går vi igenom branschens bästa praxis för att bygga säkra och motståndskraftiga mikrofrontendssystem (MFE).

Även om MFE:er ger stor flexibilitet medför de också nya säkerhetsaspekter. Genom att tillämpa dessa metoder hjälper ni till att skydda era applikationer och användare.

Minsta privilegium för MFE:er

Principen om minsta privilegium (PoLP) innebär att varje MFE, tjänst eller användare endast ska ha de minsta behörigheter som krävs för att utföra sin funktion.

  • Begränsa API-åtkomst: Säkerställ att MFE:er endast anropar de API:er de verkligen behöver.
  • Avgränsade behörigheter: Tilldela specifika behörigheter i stället för breda.
  • Användarroller: Knyt MFE-åtkomst till detaljerade användarroller.

Detta minimerar skadan om en MFE komprometteras.

Tillämpa CSP för säkerhet

Content Security Policy (CSP) är en kraftfull säkerhetsstandard som hjälper till att förhindra Cross-Site Scripting (XSS) och dataattacker.

Definiera strikta CSP-regler för federerade applikationer:

  • Vitlistning av källor: Ange betrodda källor för skript, formatmallar, bilder och så vidare.
  • Inline-kod: Undvik inline-skript och inline-formatmallar.
  • Rapporteringsläge: Börja med Content-Security-Policy-Report-Only för att övervaka överträdelser innan reglerna verkställs.

Detta säkerställer att endast godkänt innehåll läses in.

Hantera CORS på ett säkert sätt

Cross-Origin Resource Sharing (CORS) är en säkerhetsfunktion i webbläsare som begränsar webbsidor från att skicka begäranden till en annan domän än den som levererade webbsidan.

I MFE:er behöver ni ofta dela resurser mellan olika ursprung. Konfigurera CORS noggrant:

  • Specifika ursprung: Tillåt endast kända och betrodda ursprung att få åtkomst till era MFE-resurser.
  • HTTP-metoder: Begränsa vilka HTTP-metoder som tillåts, till exempel GET och POST.
  • Autentiseringsuppgifter: Var försiktig med Access-Control-Allow-Credentials.

Validera all indata

Alla data som kommer in i era mikrof fronter, oavsett om de kommer från användarindata, API-svar eller andra MFE:er, måste valideras noggrant.

  • Validering på serversidan: Validera alltid på servern, eftersom validering på klientsidan kan kringgås.
  • Sanera data: Rensa data för att ta bort skadliga tecken eller skript.
  • Schema-validering: Använd definierade scheman för förväntade datastrukturer.

Detta förhindrar injektionsattacker som SQL-injektion och XSS.

Säkra era beroenden

Mikrofrontendteknik är ofta beroende av många tredjepartsbibliotek och delade moduler. Sårbarheter i dessa beroenden kan äventyra hela applikationen.

  • Regelbundna uppdateringar: Håll alla beroenden, inklusive fjärrmoduler, uppdaterade till de senaste säkra versionerna.
  • Sårbarhetsskanning: Använd verktyg, till exempel Dependabot och Snyk, för att söka efter kända sårbarheter.
  • Minimera beroenden: Inkludera endast det som behövs för att minska angreppsytan.

Hantera hemligheter säkert

Känslig information som API-nycklar, databasautentiseringsuppgifter eller token för tredjepartstjänster får aldrig hårdkodas eller checkas in i versionshanteringen.

  • Miljövariabler: Använd miljövariabler för konfiguration.
  • Hantering av hemligheter: Använd särskilda verktyg för hantering av hemligheter, till exempel AWS Secrets Manager och HashiCorp Vault, i produktion.
  • Inga hemligheter på klientsidan: Exponera aldrig känsliga hemligheter för MFE:n på klientsidan.

Körningsisolering och sandboxning

För att begränsa effekten av en komprometterad MFE bör ni implementera körningsisolering. Det innebär att varje MFE begränsas så att den inte direkt kan påverka andra.

  • Iframes: Har historiskt använts för stark isolering, men medför extra kommunikationskostnader.
  • Web Workers: Kan köra skript i en separat global kontext, vilket begränsar åtkomsten till DOM.
  • Containerisering: Genom att distribuera MFE:er i separata containrar, till exempel Docker, får ni isolering på operativsystemnivå.

Detta förhindrar problem med en alltför stor påverkan.

Automatiserade säkerhetskontroller

Integrera säkerhetskontroller genom hela utvecklingslivscykeln, särskilt i era pipelines för Continuous Integration/Continuous Deployment (CI/CD).

  • Static Application Security Testing (SAST): Analysera koden för sårbarheter före driftsättning.
  • Dynamic Application Security Testing (DAST): Testa körande applikationer med avseende på sårbarheter.
  • Beroendeskannrar: Kontrollera automatiskt om bibliotek är sårbara.

Proaktiv skanning upptäcker problem tidigt.

Quiz om bästa praxis

Det är dags att snabbt kontrollera vad vi har lärt oss om att säkra mikrofrontendarkitekturer.

Sammanfattning: Säker federation

Bra jobbat! Vi har gått igenom viktiga bästa praxis för att bygga säkra mikrofrontendssystem.

Kom ihåg att tillämpa principen om minsta privilegium, verkställa CSP och CORS, validera indata, hantera beroenden, hantera hemligheter säkert, isolera MFE:er vid körning och automatisera säkerhetskontroller.

Genom att följa dessa riktlinjer kan ni bygga motståndskraftiga och tillförlitliga federerade applikationer.

Gratis att börja

Lär dig JavaScript med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”Bästa praxis för säker federation” gratis?

Ja – hela texten till ”Bästa praxis för säker federation” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Mikrofrontendarkitektur med Module Federation, kan Ni uppgradera till CoddyKit PRO. Kursen i Mikrofrontendarkitektur med Module Federation innehåller totalt 4 lektioner.

Vad lär jag mig i ”Bästa praxis för säker federation”?

Lär er och tillämpa branschens bästa praxis för att bygga säkra och robusta Micro Frontend-system. Ni övar på Mikrofrontendarkitektur med Module Federation med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Mikrofrontendarkitektur med Module Federation?

Du behöver inga förkunskaper. Utbildningen i Mikrofrontendarkitektur med Module Federation på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.

Hur lång tid tar lektionen ”Bästa praxis för säker federation”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Mikrofrontendarkitektur med Module Federation-lektionen?

Ja. Varje Mikrofrontendarkitektur med Module Federation-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Autentisering och auktorisering
  2. Säkerhetsrisker mellan applikationer
  3. Bästa praxis för säker federation
  4. Säkra remotes i Module Federation
← Tillbaka till Mikrofrontendarkitektur med Module Federation