본문으로 건너뛰기

2FA 플러그인

📋 작성 예정

이 문서는 플러그인 구현 후 상세 내용이 추가됩니다.

2단계 인증(Two-Factor Authentication) 플러그인입니다.

개요

TwoFactorAuth 플러그인은 TOTP 기반 2단계 인증을 제공합니다. Google Authenticator, Authy 등 표준 TOTP 앱과 호환됩니다.

항목
티어L0 (독립)
가격Free
상태📋 개발 예정
Core 의존성>= 1.1.0

예정 기능

TOTP 인증

  • QR 코드 생성: 초기 설정용 QR 코드
  • TOTP 검증: 6자리 코드 검증
  • Google Authenticator 호환: RFC 6238 표준 준수

백업 코드

  • 일회용 백업 코드: 10개 생성
  • 안전한 저장: 암호화 저장
  • 재생성 기능: 관리자 화면에서 재생성

강제 적용

  • Level별 강제: 특정 Level에 2FA 필수
  • Tenant별 설정: Tenant마다 다른 정책
  • 유예 기간: 활성화 후 N일간 유예

복구 프로세스

  • 이메일 복구: 인증된 이메일로 복구 링크
  • 관리자 초기화: 상위 관리자가 2FA 해제

예상 사용법

설치

# Plugin Store에서 설치 (예정)
php artisan plugin:install two-factor-auth

# 마이그레이션
php artisan migrate

활성화

// config/core.php
'plugins' => [
'enabled' => ['two-factor-auth'],
],

설정

// config/two-factor-auth.php
return [
'enabled' => true,

// 강제 적용 Level (0=Platform Admin만, 2=Tenant Admin까지)
'required_levels' => [0, 1, 2],

// 유예 기간 (일)
'grace_period_days' => 7,

// 백업 코드 개수
'backup_codes_count' => 10,
];

코드 예시

// 2FA 활성화 확인
if ($user->hasTwoFactorEnabled()) {
// 코드 검증 필요
}

// QR 코드 URL 생성
$qrUrl = $twoFactorService->getQrCodeUrl($user);

// 코드 검증
$valid = $twoFactorService->verify($user, $code);

관련 문서