• 인증
  • 튜토리얼
  • 가입
  • 웹훅

Logto에서 초대 전용 가입 설정하는 방법

초대 전용 가입은 일반적인 사용 사례입니다. 이는 배타성과 보안을 강화하는 동시에 초기 단계 제품의 참여도와 유지율을 잠재적으로 높일 수 있습니다.

Guamian
Guamian
Product & Design

초대 전용 가입은 일반적인 사용 사례입니다. 이는 배타성과 보안을 강화하는 동시에 초기 단계 제품의 참여도와 유지율을 잠재적으로 높일 수 있습니다.

이 블로그에서 초대 전용 가입이 무엇인지, 설정을 위한 요구 사항, 그리고 Logto를 어떻게 유연하게 활용할 수 있는지를 설명하겠습니다.

초대 전용 가입의 일반적인 시나리오

초대 전용 가입은 다음과 같은 시나리오에서 일반적으로 사용됩니다:

  1. 비밀 모드 출시: 선택된 사용자에게 새로운 제품이나 서비스에 대한 조기 접근 권한 부여.
  2. 베타 테스트: 제품을 완전한 출시 전에 사용하고 피드백을 제공할 수 있는 사용자를 제어.
  3. 독점 커뮤니티: 초대를 받은 멤버에게만 접근을 허용하는 경우, 예를 들어 전문가 네트워크, 비공개 포럼, 내부 시스템 등.
  4. 높은 수요의 이벤트: 이벤트, 코스 또는 특별 제안에 대한 제한된 접근 권한 관리.

이러한 시나리오는 배타성을 생성하고 통제된 롤아웃을 보장하는 데 도움을 줍니다.

요구 사항 개요

요구 사항을 간단한 목록으로 나눠보겠습니다:

  1. 가입은 초대된 사용자에게만 제한되어야 합니다. 일반 대중은 가입할 수 없고 로그인만 가능합니다.
  2. 개발자는 초대 이메일을 보낼 목록을 가지고 있어야 합니다.
  3. 사용자는 초대를 받고 앱에 액세스하는 데 사용해야 합니다.
  4. 사용자는 처음 로그인할 때 비밀번호를 재설정해야 합니다.

Logto는 이러한 요구 사항을 충족할 수 있는 유연한 기능을 제공합니다. 설정 방법을 살펴보겠습니다.

방법

초대 전용 가입을 위한 Logto의 주요 기능

Logto에서 초대 전용 가입 프로세스를 구현하려면 다음 기능을 활용할 수 있습니다:

Logto 기능목표
가입 비활성화초대된 사용자에게만 가입 제한
사용자 생성 (Logto 콘솔 및 관리 API)수동 또는 프로그래밍 방식으로 사용자 생성.
WebhookUser.Created 이벤트와 사용자의 이메일 서버를 사용하여 초대 이메일 자동 전송
비밀번호 재설정 흐름사용자가 자신의 비밀번호를 설정할 수 있도록 허용
로그인 힌트사용자가 흐름을 수동으로 트리거할 필요 없이 "비밀번호 재설정" 페이지로 직접 이동.

로그인 환경 설정에서 가입 해제

사용자가 스스로 가입할 수 없고 등록만 가능하므로, 로그인 환경 설정으로 이동하여 로그인 및 가입 탭을 클릭하고 고급 옵션 섹션을 찾습니다. 기본 설정은 활성화되어 있습니다. 이를 비활성화하면 사용자는 로그인 페이지만 볼 수 있습니다.

disable-sign-up.png

관리자는 이메일을 사용하여 사용자 계정을 생성하고 임시 비밀번호를 생성할 수 있습니다

사용자 이메일 목록이 있고 그들을 가입 초대하고자 합니다. Logto는 내장된 초대 기능을 제공하지 않지만 콘솔을 통해 수동으로 사용자 계정을 생성하거나 관리 API를 사용하여 일괄 계정 생성 작업을 처리할 수 있습니다.

수동 사용자 생성

미리 목록에 포함된 사용자가 몇 명 있다면, 관리자 콘솔에서 그들의 계정을 직접 생성할 수 있습니다. 사용자는 이메일을 사용하여 로그인하고 자신의 비밀번호를 설정하기 위해 "비밀번호를 잊으셨나요?" 옵션을 사용할 수 있습니다. manual-user-creation.png

프로그래매틱 초대

이 프로세스를 더 프로그래매틱하게 만들고자 한다면, 사용자 이메일 목록에 초대 및 환영 이메일을 자동으로 보낼 수 있습니다.

Logto 관리 API를 사용하여 여러 사용자 계정을 일괄 생성

machine-to-machine 앱을 설정하고, Logto 관리 API를 활용하여 일괄 사용자 생성 기능을 활성화할 수 있습니다.

Webhook을 사용하여 환영 초대 이메일 자동 전송

webhook-user-create.png

자신의 서버에서 메일 서버 API를 호출하여 환영 이메일을 보낼 수 있습니다. 확인 코드가 필요하지 않으므로, 필요한 모든 정보(예: 사용자의 이름)를 가져와 이메일 내용을 맞춤화할 수 있어야 합니다. 또한, webhook을 사용하면 User.Created 이벤트 발생 시 이메일 서비스가 webhook을 통해 자동으로 트리거되어 이 프로세스를 더욱 자동화할 수 있습니다.

로그인 힌트 기능을 사용하여 비밀번호 재설정 흐름을 자동으로 트리거하여 사용자가 비밀번호를 변경하고 로그인하도록 유도

login-hint.png

login_hint 매개변수, OpenID Connect 사양에 정의된 표준은 사용자의 식별자(예: 이메일 또는 사용자 이름)를 사용하는 로그인 양식을 미리 채우는 데 사용됩니다. Logto에서 이것은 사용자 경험을 향상시키기 위해 다른 로그인 화면 매개변수와 결합될 수 있습니다.

예를 들어, 로그인 양식에 사용자의 이메일 주소 필드를 미리 채울 수 있습니다:

요약

이 가이드는 초대 전용 가입 흐름을 구현하는 데 필요한 주요 Logto 기능을 강조하며 전체적인 방향을 제공합니다. 여러 가지 기능을 영리하게 결합하여 원활한, 엔드 투 엔드 경험을 만들어냅니다.