본문으로 건너뛰기

MFA 구성하기

Logto에서 MFA 설정 구성하기

Logto는 다양한 보안 요구 사항을 충족할 수 있도록 유연한 MFA 구성 옵션을 제공합니다. 모든 사용자에게 글로벌 수준에서 MFA를 구성하거나, 다중 테넌트 애플리케이션의 경우 조직별로 활성화할 수 있습니다.

글로벌 MFA 구성

사용자의 Logto 로그인 플로우에서 MFA를 활성화하려면 다음 단계를 따르세요:

  1. 다음으로 이동하세요: 콘솔 > 다단계 인증 (MFA).
  2. 사용자에게 지원할 인증 요소를 활성화하세요.
    1. 주요 인증 요소:
      • 패스키 (WebAuthn): 웹 제품에서 디바이스 생체 인증 또는 보안 키 등을 지원하는 경우에 적합한 고보안 옵션으로, 강력한 보호를 보장합니다.
      • 인증 앱 OTP: 가장 일반적이고 널리 사용되는 방법입니다. Google Authenticator 또는 Authy와 같은 인증 앱에서 생성된 시간 기반 일회용 비밀번호(TOTP)를 사용합니다.
      • SMS 인증: 사용자의 등록된 휴대폰 번호로 SMS를 통해 일회용 인증 코드를 전송하는 편리한 방법으로, 별도의 앱 없이 모바일 기반 인증을 선호하는 사용자에게 이상적입니다.
      • 이메일 인증: 사용자의 등록된 이메일 주소로 일회용 인증 코드를 전달하는 널리 접근 가능한 방법으로, 모든 플랫폼과 디바이스의 사용자에게 적합합니다.
    2. 백업 인증 요소:
      • 백업 코드: 사용자가 위의 주요 인증 요소 중 어느 것도 인증할 수 없는 경우를 위한 백업 옵션입니다. 이 옵션을 활성화하면 사용자의 접근 성공률이 높아집니다.
  3. 드롭다운에서 MFA 필수 정책을 선택하세요. 이 정책은 사용자가 로그인 중 MFA를 완료해야 하는 시점을 제어합니다:
    • 선택적 MFA: 사용자가 자신의 계정 보안을 위해 MFA를 활성화할지 직접 결정할 수 있습니다. 사용자는 로그인 중 MFA 설정을 건너뛸 수 있으며, 나중에 셀프 서비스 계정 설정 페이지를 통해 설정할 수 있습니다. 사용자 계정 설정 페이지 구현에 대해 자세히 알아보기.
    • 적응형 MFA: 로그인 시도가 비정상적으로 보일 때만 MFA를 적용하여, 위험이 낮은 로그인은 원활하게 유지하고 의심스러운 로그인에는 추가 인증을 적용합니다. 이 모드는 기존 MFA 설정(최소 한 개의 MFA 요소가 활성화되어야 함)에 따라 동작하며, 최종 사용자 로그인 플로우에 적용되고, 디바이스 지문이나 기타 민감한 개인정보에 의존하지 않습니다.
    • 필수 MFA: 모든 사용자가 매번 로그인 시 MFA를 완료해야 합니다. MFA를 설정하지 않은 사용자는 계속 진행하기 전에 반드시 설정을 완료해야 합니다.
    • 선택적 MFA 또는 적응형 MFA를 선택한 경우, MFA 설정 프롬프트 정책을 구성하세요:
      • 사용자에게 MFA 설정을 요청하지 않음: 로그인 중 사용자에게 MFA 설정을 요청하지 않습니다.
      • 등록 중 사용자에게 MFA 설정 요청: 신규 사용자는 등록 중 MFA 설정을 요청받고, 기존 사용자는 다음 로그인 시 프롬프트를 받습니다. 사용자는 이 단계를 건너뛸 수 있으며, 다시 나타나지 않습니다.
      • 등록 후 로그인 시 사용자에게 MFA 설정 요청: 신규 사용자는 등록 후 두 번째 로그인 시 MFA 설정을 요청받고, 기존 사용자는 다음 로그인 시 프롬프트를 받습니다. 사용자는 이 단계를 건너뛸 수 있으며, 다시 나타나지 않습니다.

MFA가 선택적이고 Logto가 사용자에게 프롬프트를 표시하기로 결정한 경우, 플로우는 먼저 2단계 인증 활성화라는 제목의 MFA 활성화 확인 페이지를 보여줍니다. 이 페이지에서 사용자는 2단계 인증 활성화를 선택하여 MFA 바인딩을 계속하거나, 프롬프트를 건너뛰고 MFA를 활성화하지 않은 채 현재 로그인 / 회원가입 플로우를 마칠 수 있습니다.

:

사용자가 MFA 등록을 건너뛴 후 다시 프롬프트를 표시해야 하는 경우, 해당 사용자의 건너뛰기 상태를 재설정하여 다음 로그인 시 설정 화면이 나타나도록 하세요. 관리자는 Management API (PATCH /api/users/{userId}/logto-configs)를 사용할 수 있고, 셀프 서비스 플로우를 구축하는 개발자는 Account API (PATCH /api/my-account/logto-configs)를 호출할 수 있습니다. Management API 참조 · Account API 참조

MFA 설정 (정책)

조직별 MFA 구성

조직을 지원하는 다중 테넌트 아키텍처 제품의 경우, 대부분 모든 사용자에게 MFA를 필수로 할 필요가 없습니다. 대신, 조직별로 MFA를 활성화하여 각 고객의 요구에 맞게 요구 사항을 맞춤화할 수 있습니다. 시작하려면 조직 구성원에게 MFA 요구하기를 참조하세요.

다단계 인증 섹션에서 조직이 MFA를 활성화한 후 사용자에게 MFA 설정 프롬프트를 **다음 로그인 시 MFA 설정 요청(건너뛰기 불가)**로 설정하세요. MFA가 필수인 조직의 모든 구성원은 다음 로그인 시 반드시 MFA 설정을 완료해야 하며, 이 프롬프트는 건너뛸 수 없습니다.

MFA 사용자 플로우

MFA 설정 플로우

MFA가 활성화되면, 사용자는 로그인 및 회원가입 중 MFA 설정을 요청받을 수 있습니다. MFA 필수 정책에서 선택적 MFA가 선택된 경우에만 사용자가 이 설정 과정을 건너뛸 수 있습니다.

  1. 로그인 또는 회원가입 페이지 방문: 사용자가 로그인 또는 회원가입 페이지로 이동합니다.
  2. 로그인 또는 회원가입 완료: 사용자가 로그인 또는 회원가입 플로우 내에서 아이덴티티 인증 과정을 완료합니다.
    • MFA가 선택적이고 프롬프트 정책이 활성화된 경우, Logto는 MFA 요소 바인딩이 시작되기 전에 2단계 인증 활성화 페이지를 먼저 표시할 수 있습니다.
    • 사용자는 MFA가 선택적인 경우 이 페이지를 건너뛸 수 있으며, 2단계 인증 활성화를 클릭하여 계속할 수도 있습니다.
  3. MFA 주요 인증 요소 설정: 사용자는 주요 MFA 요소(패스키, 인증 앱 OTP, SMS 코드, 이메일 코드 중 하나)를 설정하라는 프롬프트를 받습니다.
    • 여러 주요 인증 요소가 활성화된 경우, 사용자는 원하는 옵션을 선택할 수 있습니다.
    • 주요 인증 요소가 회원가입 식별자와 동일한 경우(예: SMS 또는 이메일), 사전 인증이 완료되어 인증 단계를 건너뛰고 바로 다음 단계(예: "다른 2단계 인증 추가" 또는 "백업 요소 저장")로 진행할 수 있습니다.
    • MFA 필수 정책에서 선택적 MFA가 선택된 경우, "건너뛰기" 버튼을 선택하여 이 단계를 건너뛸 수 있습니다.
  4. MFA 백업 요소 설정: 백업 코드가 활성화된 경우, 사용자는 주요 인증 요소를 성공적으로 설정한 후 백업 코드를 저장하라는 프롬프트를 받습니다. 자동 생성된 백업 코드는 사용자에게 표시되며, 다운로드 및 안전하게 보관할 수 있습니다. 사용자는 MFA 설정 과정을 완료하려면 백업 코드를 수동으로 확인해야 합니다.
MFA 설정 플로우

MFA 인증 플로우

MFA를 설정한 사용자는 로그인 시 구성된 MFA 요소를 사용하여 본인 인증을 요청받게 됩니다. 인증 요소는 Logto의 MFA 구성 및 사용자 설정에 따라 달라집니다.

사용자가 패스키 로그인으로 로그인하는 경우, Logto는 별도의 MFA 인증 단계를 건너뜁니다. 이는 로그인에 사용된 패스키 자체가 WebAuthn MFA 요소이기 때문입니다.

  • 사용자가 한 가지 요소만 설정한 경우, 해당 요소로 바로 인증합니다.
  • 사용자가 2FA를 위해 여러 요소를 설정한 경우, 시스템은 다음 우선순위 규칙에 따라 인증 옵션을 제시합니다:
    • 패스키 우선: 사용자가 패스키를 설정한 경우, 기본 인증 방법으로 제시됩니다.
    • 마지막 사용 선호: 패스키가 없는 경우, 사용자가 마지막으로 성공적으로 사용한 인증 방법이 우선시됩니다.
    • 선택 목록: 위의 우선순위가 모두 적용되지 않는 경우, 2단계 인증 페이지에 사용자가 바인딩한 모든 인증 방법이 표시되어 선택할 수 있습니다.
    • 사용자는 언제든 "다른 인증 방법 시도"를 클릭하여 인증 옵션을 전환할 수 있습니다.
  • 활성화된 모든 주요 인증 요소를 사용할 수 없고 백업 코드가 활성화된 경우, 일회용 백업 코드를 사용하여 본인 인증을 할 수 있습니다.
MFA 인증 플로우

MFA 관리

로그인/회원가입 시 최초 설정 외에도, 사용자는 셀프 서비스 계정 센터를 통해 MFA 설정을 관리할 수 있습니다. 이를 통해 사용자는 필요에 따라 MFA 요소를 바인딩하거나 해제할 수 있습니다.

계정 센터 구축하기

Logto의 Account API를 사용하여 포괄적인 계정 센터를 구축할 수 있습니다. 이를 통해 사용자는 다음을 할 수 있습니다:

  • 새 MFA 요소 바인딩: 추가 인증 앱, 패스키 추가 또는 백업 코드 재생성
  • 기존 MFA 요소 해제: 더 이상 사용하지 않는 MFA 방법 제거
  • 현재 MFA 상태 확인: 현재 설정된 MFA 요소 확인

로그인 후 MFA 설정 프롬프트

초기 등록 시 MFA가 필수가 아닌 애플리케이션의 경우, MFA 설정을 유도하는 지능형 프롬프트를 구현할 수 있습니다:

  • 조건부 프롬프트: 사용자 행동 또는 계정 가치에 따라 MFA 설정 권장 메시지 표시
  • 보안 대시보드: MFA 활성화 시 보안 점수가 향상되는 대시보드 제공
  • 점진적 온보딩: MFA 설정을 점진적 보안 강화 플로우의 일부로 제시

이러한 패턴 구현에 대해 Account API에서 자세히 알아보세요.

콘솔에서 사용자 MFA 관리하기

콘솔 > 사용자 관리에서 관리자는 사용자 MFA 설정을 효과적으로 관리할 수 있습니다:

  • 사용자 MFA 상태 확인: 각 사용자에 대해 활성화된 MFA 요소 확인
  • 사용자 MFA 제거: 사용자의 모든 MFA 요소 삭제(재설정), 이후 사용자는 MFA를 다시 설정해야 합니다.

자주 묻는 질문

관리자가 사용자의 기존 MFA 요소를 제거하면 어떻게 되나요?

관리자가 사용자의 모든 주요 MFA 요소(패스키, 인증 앱 OTP, SMS, 이메일)를 제거하면, 사용자의 다음 로그인 시 다음과 같은 시나리오가 발생합니다:

시나리오 1: MFA 요소가 전혀 남아있지 않은 경우

  • MFA 요소(백업 코드 포함)가 전혀 없고, MFA 정책에서 MFA가 필수인 경우, 사용자는 MFA 인증 없이 로그인할 수 있으며 즉시 MFA 설정을 다시 요청받게 됩니다.

시나리오 2: 백업 코드가 남아있는 경우

  • 백업 코드가 남아있는 경우, 사용자는 로그인 시 먼저 백업 코드로 인증해야 합니다.
  • 백업 코드 인증에 성공하면, 새로운 주요 MFA 요소를 설정하라는 프롬프트가 표시됩니다.
  • 사용자가 이 설정을 건너뛸 수 있는지는 구성된 MFA 정책에 따라 다릅니다.
  • 이 방식은 주요 인증 요소가 모두 없는 상황에서 사용자가 계정에 접근하지 못하는 것을 방지합니다.