Hoe kan ik MFA verplichten voor bevoorrechte toegang (SOC 2)?
het heygrc team
Het beperken van wie toegang heeft tot gevoelige functies is waar SOC 2 CC6.1 (logische toegangcontroles) om draait, en voor bevoorrechte acties is een geldige sessie meestal niet voldoende op zich. Vraag een tweede factor aan op het moment van de bevoorrechte actie, weiger standaard als deze ontbreekt en registreer de controle, zodat het bereiken van een admin-pad meer vereist dan een gestolen of achtergebleven sessie.
Bepaal de bevoorrechte paden
Bepaal welke acties als bevoorrecht gelden: administratieve eindpunten, wijzigingen in rollen en rechten, bulktoegang tot of export van gegevens, en wijzigingen in beveiligingsinstellingen. Dit zijn de paden waar een gecompromitteerde sessie de meeste schade kan aanrichten, en waar een tweede factor zijn waarde bewijst.
Vereis de tweede factor bij de actie, weiger standaard
Controleer of een tweede factor (of een recente step-up) is voldaan voordat de bevoorrechte actie wordt uitgevoerd, niet alleen bij de initiële inlogpoging, en weiger standaard als deze ontbreekt in plaats van door te laten. De controle moet plaatsvinden op het serverpad dat de actie uitvoert, zodat deze niet kan worden omzeild door het eindpunt direct aan te roepen.
export async function setRole(session, target, role) {+ if (!session.mfaVerified) return deny("step-up required") await db.roles.set(target, role) return ok()}De bevoorrechte rolwijziging vereist nu een geverifieerde tweede factor en weigert standaard zonder deze, wat de logische toegangcontrole waar CC6.1 om draait, versterkt.