MATIH Platform is in active MVP development. Documentation reflects current implementation status.
6. Identity & Access Management
Overview

Multi-Factor Authentication Overview

Production - MfaController, MfaPolicyController, MfaRecoveryController

The MATIH platform supports three MFA methods (TOTP, SMS, Email) plus backup codes. MFA can be enforced through per-tenant policies that apply based on user roles, risk scores, or contextual signals like new devices or IP addresses.


Supported MFA Methods

MethodTypeDescriptionSprint
TOTPTime-based One-Time PasswordRFC 6238 compatible authenticator appsCP-001
SMSSMS VerificationCode sent via Twilio to registered phoneCP-003
EmailEmail VerificationCode sent to user's registered emailSprint 2
Backup CodesOne-time codes10 codes generated during enrollmentCP-005

MFA Status Endpoint

Check the current MFA configuration for the authenticated user:

curl -X GET http://localhost:8081/api/v1/mfa/status \
  -H "Authorization: Bearer <access-token>"

Response

{
  "mfaEnabled": true,
  "totpEnabled": true,
  "smsEnabled": false,
  "emailEnabled": true,
  "remainingBackupCodes": 8,
  "preferredMethod": "TOTP",
  "enrolledMethods": ["TOTP", "EMAIL"]
}

Section Pages

PageDescription
TOTP SetupQR code generation, authenticator app enrollment, verification
SMS VerificationPhone number enrollment, SMS code delivery and verification
Email MFAEmail-based MFA enrollment and verification
Backup CodesGeneration, usage, and regeneration of backup codes
MFA PoliciesPer-tenant enforcement rules, conditional MFA
MFA RecoverySelf-service and admin recovery flows