// docs / baas security / auth0 hardening
Auth0 öryggisgátlisti: 22 atriði
Auth0 er auðkenni-sem-þjónusta vettvangur með gríðarlegu yfirborði — forrit, API (auðlindarþjónar), leigjendur, aðgerðir, reglur (eldri), tengingar og veitingar. Rangstilling á einum þeirra er auth-bypass. Þessi gátlisti er 22-atriða endurskoðun yfir forrit, callback-/útskráningar-leyfilista, tákn og hressingarsnúning, sérhannaðar aðgerðir, RBAC, frávikagreiningu og áframhaldandi vöktun. Hvert atriði er sannreynanlegt í Auth0 Dashboard á innan við 10 mínútum.
Fyrir samsvarandi gátlista á Clerk, sjáðu Clerk öryggisgátlisti. Fyrir bakgrunn um hvers vegna auðkennislags-rangstillingar eru blindblettir AI-verkfæra, sjáðu Hvers vegna AI-kóðunarverkfæri skilja eftir öryggisgöt.
Forritsgerð og veitingargerðir
Forritsgerðin og virkjuðu veitingargerðirnar eru hæst-áhrifa stillingar í Auth0. Að fá þær rangar opnar árásaflokka sem ekkert magn af framendakóða mun loka.
- Notaðu Application Type = Single Page Application fyrir vafra-eingöngu forrit og Regular Web Application fyrir netþjónarennd forrit. Röng gerð leyfir rangar veitingargerðir — t.d. Regular Web App með SPA-veitingu virkjar PKCE-laust Implicit flæði, sem lekur táknum í gegnum URL-fragmenta.
- Slökktu á Implicit-veitingargerðinni á hverju forriti. Dashboard → Application → Advanced Settings → Grant Types → afhakaðu Implicit. Implicit-flæði skilar táknum í URL-fragmentum, þar sem þau eru skráð í vafrasögu og greiningum. Notaðu Authorization Code með PKCE í staðinn.
- Slökktu á Password-veitingu nema þú hafir skjalfesta þörf. Resource Owner Password Credentials (ROPC)-veiting krefst þess að þú meðhöndlir notendalykilorð sjálfur — sigrar mest af því sem þú keyptir Auth0 fyrir. Slökktu á henni nema þú sért að samþætta eldra kerfi.
- Virkjaðu Authorization Code með PKCE á hverjum opinberum biðlara. Dashboard → Advanced Settings → OAuth → JsonWebToken Signature Algorithm = RS256, OIDC Conformant = virkjað. PKCE er krafist fyrir farsímaforrit og SPA til að koma í veg fyrir kóðafangun.
Callback- og útskráningar-URL leyfilistar
Opin tilvísun á OAuth-callback-slóðinni er táknþjófnaðar-frumstig. Leyfilisti Auth0 er eina vörn þín.
- Stilltu Allowed Callback URLs á nákvæma framleiðslu-callback-slóð þína — engar jokers.
https://yourapp.com/callback, ekkihttps://yourapp.com/*. Joker-callbacks leyfa árásarmönnum að vísa táknum á handahófskenndar undirslóðir á léninu þínu. - Stilltu Allowed Logout URLs á endanlegan lista. Sama regla: aðeins skýrar URL. Opin útskráningarúmvísun leyfir árásarmönnum að búa til veiðisíður sem líta út eins og staða þín eftir útskráningu.
- Stilltu Allowed Web Origins aðeins á framleiðsluuppruna þinn. Notað fyrir hljóðlausa auðkenningu (tákn-endurnýjun í gegnum falinn iframe). Joker-uppruni leyfir árásarsíðum að framkvæma hljóðlausa auðkenningu gegn leigjanda þínum.
- Stilltu Allowed CORS origins fyrir API-endapunkta, ekki forritið. Tenant Settings → Advanced → Allowed CORS origins. Sjálfgildi er tómt (takmarkað); bætið aðeins við skýrum uppruna sem þú stjórnar.
Tákn og hressingarsnúningur
Líftími tákna, hressingarsnúningur og undirritunaralgrími ákveða sprengisvæði hvers tákn-leka.
- Virkjaðu Refresh Token Rotation. Application → Refresh Token Settings → Rotation. Hver hressing gefur út nýtt hressingartákn og ógildir gamla. Sameinað fullkomnum útrunna, hindrar þetta táknþjófnað.
- Stilltu Refresh Token Reuse Interval á 0 (eða eins lágt og endurspilunarþol þitt leyfir). Endurnýtingarbilið leyfir tákninu að vera notuðu tvisvar í sama glugga — slökktu á því nema þú hafir sérstaka ástæðu til að halda því.
- Stilltu Absolute Refresh Token Expiry á 14-30 daga, ekki óendanleika. Application → Refresh Token Expiration → Absolute Expiration. Auth0 sjálfgildi er Inactivity-eingöngu, sem þýðir að óvirk lota getur staðið í ár.
- Stilltu JWT Signature Algorithm á RS256. Application → Advanced → OAuth → JsonWebToken Signature Algorithm. RS256 notar ósamhverfa undirritun svo biðlarinn getur ekki falsað tákn. Notaðu aldrei HS256 fyrir biðlara-snýjandi forrit.
- Staðfestu
aud- ogiss-fullyrðingar á hverri JWT sem API þitt fær. Notaðu opinbera Auth0 SDK á netþjónamegin — það staðfestir þetta sjálfvirkt. Handgert JWT-þátting sleppir venjulega áheyrendastaðfestingu, sem er auth-bypass.
Aðgerðir og sérhannaður kóði
Auth0 Actions (og eldri Rules) keyra netþjónamegin við innskráningu og aðra lífsferilsviðburði. Þær hafa aðgang að öllum beiðnasamhengi. Óöruggur kóði hér er leigjenda-víð veikleiki.
- Skráðu aldrei
event.usereðaevent.transactionsem heilan hlut. Þetta inniheldur netföng, IP-tölur og aðra PII. Notaðu skráningu á reitastigi eingöngu, og aðeins skráðu það sem þú þarft. - Notaðu leyndarmálageymsluna fyrir hvern API-lykil eða vefkróks-URL. Actions → Edit → Secrets. Settu aldrei API-lykil sem strenginnsetningu í aðgerðakóða — kóðinn er sýnilegur fyrir hvern sem hefur Action-ritstjóraaðgang á leigjandanum.
- Staðfestu inntak áður en þú varðveitir þau sem user_metadata eða app_metadata. Sjálfsþjónustuaðgerð sem skrifar
event.body.nameíuser.user_metadata.display_nameer geymd-XSS-vektor ef framendinn þinn birtir þann reit án sleppa.
RBAC og auðlindarþjónar
Ef þú notar Auth0 RBAC, þá er hlutverk-til-heimilda-vörpunin lag heimildar þinnar. Fáðu hana ranga og hver auðkenndur notandi getur slegið á admin-endapunkta.
- Skilgreindu auðlindarþjóna (API) skýrt í Auth0 Dashboard, ekki á flugi. Hvert API hefur einkenni (
audience), umfang og undirritunarstillingar. Án skráðs API eru öll tákn gefin út fyrir óbeina "Auth0 Management API" — rangir áheyrendur. - Stilltu heimildir á hvert API og krefstu þeirra í kóðanum þínum með
scope-fullyrðingunni. Ekki athuga hlutverkaaðild í forritarökfræði; athugaðu umfang í aðgangstákni. Umfang eru OIDC-innfædd heimildaraðferð. - Prófaðu að auðkenndur notandi án nauðsynlegs hlutverks / umfangs geti ekki slegið á réttindastýrða endapunkta. Skráðu þig inn sem venjulegur notandi, reyndu að kalla
POST /api/admin/users/delete. Svar verður að vera403.
Frávikagreining og leigjenda-skrár
Auth0 gefur út hæst-merkjandi viðburði. Stilltu þá til að aðvara teymið þitt, ekki bara að sitja í skrárbuffer.
- Virkjaðu Attack Protection: Bot Detection, Brute Force, Suspicious IP Throttling. Dashboard → Security → Attack Protection. Hver er slökkt sjálfgefið á ókeypis stigum; kveiktu á öllum fyrir framleiðslu.
- Sendu leigjenda-skrár í SIEM eða forritsskrár þínar. Dashboard → Monitoring → Streams. Auth0 geymir skrár í 30 daga á flestum áskriftum; langtímageymsla krefst straums inn í þitt eigin kerfi.
- Aðvara um topp í
fcoa(failed cross-origin auth) ogfp(failed login). Sprenging í þessum í stuttu glugga er skilríkjafylling. Beindu á á-vakt-rás þína.
Næstu skref
Keyrðu FixVibe-skönnun gegn framleiðslu-URL þínum — baas.clerk-auth0-athugunin merkir Auth0-biðlaraleyndir innknúnar í JavaScript og aðra auðkennisveituopinberunarflokka. Fyrir samsvarandi á Clerk, sjáðu Clerk öryggisgátlisti. Fyrir regnhlífaryfirlit yfir BaaS-veitur, lestu BaaS-rangstillingaskanni.
