사용자 관리
Logto 콘솔을 통한 관리
사용자 탐색 및 검색
Logto 콘솔에서 사용자 관리 기능에 접근하려면, 콘솔 > 사용자 관리로 이동하세요. 그곳에서 모든 사용자의 테이블 뷰를 볼 수 있습니다.
테이블은 세 개의 열로 구성되어 있습니다:
- 사용자: 사용자에 대한 정보, 예를 들어 아바타, 전체 이름, 사용자 이름, 전화번호, 이메일을 표시합니다.
- 애플리케이션에서: 사용자가 처음 등록한 애플리케이션의 이름을 표시합니다.
- 최신 로그인: 사용자의 가장 최근 로그인 타임스탬프를 표시합니다.
name, id, username, primary-phone, primary-email에 대한 키워드 매핑을 지원합니다.
사용자 추가
콘솔을 사용하여 개발자는 최종 사용자에 대한 새 계정을 생성할 수 있습니다. 화면의 오른쪽 상단에 있는 "사용자 추가" 버튼을 클릭하세요.
Logto 콘솔에서 또는 Management API를 통해 사용자를 생성할 때 (UI를 통해 최종 사용자가 자체 등록한 것이 아님), 최소한 하나의 식별자: primary email, primary phone, 또는 username을 제공해야 합니다. name 필드는 선택 사항입니다.
사용자가 생성된 후, Logto는 자동으로 임의의 비밀번호를 생성합니다. 초기 비밀번호는 한 번만 나타나지만, 나중에 비밀번호를 재설정할 수 있습니다. 특정 비밀번호를 설정하려면, 사용자가 생성된 후 Management API patch /api/users/{userId}/password를 사용하여 업데이트하세요.
**입력된 식별자 (이메일 주소 / 전화번호 / 사용자 이름)**와 초기 비밀번호를 한 번의 클릭으로 복사할 수 있어, 새로운 사용자가 로그인하고 시작할 수 있도록 이러한 자격 증명을 쉽게 공유할 수 있습니다.
초대 전용 등록을 구현하려면, 매직 링크로 사용자 초대를 권장합니다. 이를 통해 화이트리스트에 등록된 사용자만 자체 등록하고 자신의 비밀번호를 설정할 수 있습니다.
사용자 프로필 보기 및 업데이트
사용자의 세부 정보를 보려면, 사용자 테이블의 해당 행을 클릭하세요. 그러면 사용자의 프로필 정보를 찾을 수 있는 "사용자 세부 정보" 페이지로 이동합니다. 여기에는 다음이 포함됩니다:
- 인증 관련 데이터:
- 이메일 주소 (primary_email): 편집 가능
- 전화번호 (primary_phone): 편집 가능
- 사용자 이름 (username): 편집 가능
- 비밀번호 (has_password): 임의의 비밀번호를 재생성할 수 있습니다. "사용자 비밀번호 재설정"에 대해 더 알아보세요.
- 다단계 인증 (MFA) (mfa_verification_factor): 이 사용자가 설정한 모든 인증 요소 (예: 패스키, 인증 앱, 백업 코드)를 봅니다. 콘솔에서 요소를 제거할 수 있습니다.
- 패스키: 테넌트에서 패스키 로그인이 활성화된 경우, 사용자 세부 정보 페이지에서 사용자의 로그인 패스키를 보고 필요에 따라 제거할 수 있습니다. 이러한 패스키는 MFA에서 사용되는 동일한 WebAuthn 자격 증명 모델에 의해 지원됩니다.
- 개인 액세스 토큰: 개인 액세스 토큰을 생성, 보기, 이름 변경 및 삭제합니다.
- 연결:
- 소셜 연결 (identities):
- 사용자의 연결된 소셜 계정, 소셜 제공자로부터 동기화된 소셜 ID 및 프로필 세부 정보를 봅니다 (예: 사용자가 Facebook을 통해 로그인한 경우 "Facebook" 항목이 나타납니다).
- 기존 소셜 아이덴티티를 제거할 수 있지만, 사용자를 대신하여 새로운 소셜 계정을 연결할 수는 없습니다.
- 토큰 저장이 활성화된 소셜 커넥터의 경우, 연결 세부 정보 페이지에서 액세스 토큰 및 리프레시 토큰을 보고 관리할 수 있습니다.
- 엔터프라이즈 SSO 연결 (sso_identities):
- 사용자의 연결된 엔터프라이즈 아이덴티티, 엔터프라이즈 아이디 및 엔터프라이즈 아이덴티티 제공자로부터 동기화된 프로필 세부 정보를 봅니다.
- 콘솔에서 엔터프라이즈 SSO 아이덴티티를 추가하거나 제거할 수 없습니다.
- 토큰 저장이 활성화된 OIDC 기반 엔터프라이즈 커넥터의 경우, 연결 세부 정보 페이지에서 토큰을 보고 삭제할 수 있습니다.
- 소셜 연결 (identities):
- 사용자 프로필 데이터: 이름, 아바타 URL, 사용자 정의 데이터 및 포함되지 않은 추가 OpenID Connect 표준 클레임. 모든 프로필 필드는 편집 가능합니다.
- 세션: 세션 ID 및 GEO 위치가 적용되는 경우 장치 정보와 함께 사용자 활성 세션 목록을 봅니다. 세션의 더 많은 세부 정보를 보고 세션 세부 정보 페이지에서 세션을 취소할 수 있습니다.
소셜 연결을 제거하기 전에 사용자가 다른 소셜 연결, 전화번호, 이메일 또는 비밀번호가 있는 사용자 이름과 같은 대체 로그인 방법을 가지고 있는지 확인하는 것이 중요합니다. 사용자가 다른 로그인 방법을 가지고 있지 않으면 소셜 연결이 제거된 후 계정에 다시 접근할 수 없습니다.
사용자 활동 보기
사용자의 최근 활동을 보려면, "사용자 세부 정보" 페이지의 "사용자 로그" 하위 탭으로 이동하세요. 여기에서 사용자의 최근 활동을 표시하는 테이블을 찾을 수 있습니다. 여기에는 수행된 작업, 작업 결과, 관련 애플리케이션 및 사용자가 작업한 시간이 포함됩니다.
테이블 행을 클릭하여 사용자 로그에서 IP 주소, 사용자 에이전트, 원시 데이터 등을 더 자세히 볼 수 있습니다.
사용자 정지
"사용자 세부 정보" 페이지에서 "세 개의 점" -> "사용자 정지" 버튼을 클릭하세요.
사용자가 정지되면, 사용자는 앱에 로그인할 수 없으며 현재 액세스 토큰이 만료된 후 새로운 액세스 토큰을 얻을 수 없습니다. 또한, 이 사용자가 수행한 모든 API 요청은 실패합니다.
이 사용자를 다시 활성화하려면, "세 개의 점" -> "사용자 재활성화" 버튼을 클릭하세요.
사용자 삭제
"사용자 세부 정보" 페이지에서 "세 개의 점" -> "삭제" 버튼을 클릭하세요. 사용자를 삭제하면 되돌릴 수 없습니다.
사용자 비밀번호 재설정
"사용자 세부 정보" 페이지에서 "세 개의 점" -> "비밀번호 재설정" 버튼을 클릭하면, Logto가 자동으로 임의의 비밀번호를 재생성합니다.
비밀번호를 재설정한 후, 이를 복사하여 최종 사용자에게 보내세요. "비밀번호 재설정" 모달이 닫히면 비밀번호를 더 이상 볼 수 없습니다. 이를 유지하는 것을 잊었다면, 다시 재설정할 수 있습니다.
Logto 콘솔에서는 사용자의 특정 비밀번호를 설정할 수 없지만, Management API PATCH /api/users/{userId}/password를 사용하여 비밀번호를 지정할 수 있습니다.
사용자 활성 세션 관리
"사용자 세부 정보" 페이지에서 특정 세션의 "관리" 버튼을 클릭하여 "세션 세부 정보" 페이지로 이동하세요. 여기에서 장치, 위치 및 로그인 시간과 같은 세션에 대한 자세한 정보를 볼 수 있습니다. 이 세션에서 사용자를 로그아웃하려면, 오른쪽 상단 모서리에 있는 "세션 취소" 버튼을 클릭하면 세션이 즉시 취소됩니다.
- 기본적으로 콘솔에서 세션을 취소하면 해당 세션과 관련된 모든 1차 앱 권한도 취소되며, 사용자는 접근을 복원하기 위해 다시 로그인해야 합니다. 1차 앱에 사전 발급된 불투명 액세스 토큰 및 리프레시 토큰도 즉시 취소됩니다.
offline_access스코프가 있는 3차 앱의 경우, 세션을 취소해도 기본적으로 앱 권한이 취소되지 않으며, 사전 발급된 리프레시 토큰은 권한이 만료될 때까지 계속 사용할 수 있습니다.
사용자 승인된 3차 앱 관리
"사용자 세부 정보" 페이지에서 "승인된 3차 앱" 섹션을 사용하여 사용자의 앱 승인 상태를 검토할 수 있습니다. 이 섹션은 사용자 승인 앱 (권한) 관리 API에 의해 지원됩니다.
각 승인된 앱에 대해 콘솔은 다음을 표시합니다:
- 앱 이름
- 앱 ID
- 접근 생성 시간
접근을 제거해야 하는 경우, 취소 작업을 클릭하고 모달에서 확인하세요.
앱 승인을 취소하면 해당 앱에 대한 사용자의 모든 활성 3차 권한이 제거됩니다. 또한, 해당 앱에 대한 사전 발급된 불투명 액세스 토큰 및 리프레시 토큰도 즉시 취소됩니다.
비밀번호 준수 검사
Logto에서 비밀번호 정책을 업데이트한 후, 기존 사용자는 여전히 현재 비밀번호로 로그인할 수 있습니다. 새로 생성된 계정만이 업데이트된 비밀번호 정책을 따라야 합니다.
더 강력한 보안을 위해, POST /api/sign-in-exp/default/check-password API를 사용하여 사용자의 비밀번호가 기본 로그인 경험에서 정의된 현재 정책을 충족하는지 확인할 수 있습니다. 그렇지 않은 경우, Account API를 사용하여 사용자에게 비밀번호를 업데이트하도록 사용자 정의 흐름을 통해 알릴 수 있습니다.
사용자의 역할 관리
사용자 세부 정보 페이지의 "역할" 탭에서 원하는 결과를 얻기 위해 역할을 쉽게 할당하거나 제거할 수 있습니다. 자세한 내용은 역할 기반 접근 제어를 확인하세요.
사용자가 속한 조직 보기
Logto는 조직을 지원하며, 그들의 구성원을 관리할 수 있습니다. 사용자 세부 정보를 쉽게 보고 그들이 속한 조직을 확인할 수 있습니다.
Logto Management API를 통한 관리
Management API는 Logto 백엔드 서비스에 접근할 수 있는 API 모음입니다. 앞서 언급했듯이, 사용자 API는 이 서비스의 중요한 구성 요소이며 다양한 시나리오를 지원할 수 있습니다.
사용자 관련 RESTful API는 /api/users에 마운트되어 있으며, 사용자 활동, 즉 사용자 로그는 /api/logs?userId=:userId에 있습니다.
Management API를 통해 여러 사용 사례에서 사용자를 관리할 수 있습니다. 예를 들어 고급 사용자 검색, 대량 계정 생성, 초대 전용 가입 등이 있습니다.
자주 묻는 질문
특정 사용자에 대한 특정 애플리케이션 접근을 제한하는 방법은 무엇입니까?
Logto의 Omni-sign-in 특성상, 인증 전에 특정 애플리케이션에 대한 사용자 접근을 제한하도록 설계되지 않았습니다. 그러나 여전히 애플리케이션별 사용자 역할과 권한을 설계하여 API 리소스를 보호하고, 사용자 로그인 성공 시 API 접근 시 권한을 검증할 수 있습니다. 자세한 내용은 인가: 역할 기반 접근 제어를 참조하세요.