본문으로 건너뛰기

핵심 서비스

소개

핵심 서비스는 Logto의 중요한 업무를 위한 모놀리식 서비스입니다. 소스 코드는 @logto/core에 있습니다.

노트:

핵심 서비스SDK core는 두 개의 별도 개념입니다. 차이점은 SDK 규칙을 참조하세요.

간단히 말해, 핵심 서비스는 네 개의 주요 모듈로 나뉩니다:

이름설명마운트 경로
OIDC Provider하나의 OpenID Provider./oidc
Logto APIManagement API, Experience API 및 Account API./api
프론트엔드 프록시프론트엔드 프로젝트를 위한 HTTP 프록시 또는 정적 파일 제공.

자세한 내용은 프론트엔드 프록시를 참조하세요.

OIDC를 포함한 백엔드 API는 core 패키지 내에서 구축되며, 프론트엔드 프록시는 Logto 모노레포의 해당 형제 패키지에 의존합니다.

OIDC Provider

Logto는 놀라운 인증된 OpenID Connect 구현체인 node-oidc-provider를 내부적으로 사용합니다. 이 제공자는 /oidc에 마운트되어 있으며, 관련 구성 및 파일은 packages/core/src/oidc에서 확인할 수 있습니다.

OIDC Userinfo Endpoint/oidc/me에 사용 가능하고 마운트되어 있습니다.

정보:

OIDC API를 직접 호출하려면, 헤더에 Content-Type: application/x-www-form-urlencoded를 설정해야 합니다.

활성화된 OpenID 기능

Logto API

Management API

Management API는 Logto 데이터를 관리하고 업데이트하는 API 세트입니다. admin 역할을 가진 사용자만 접근할 수 있습니다.

자세한 내용은 API 참조를 참조하세요.

API에 프로그래밍 방식으로 접근하려면, Management API와 상호작용하기를 참조하세요.

Experience API

Experience API는 사용자 정의 로그인 인터페이스 상호작용을 지원하는 전용 엔드포인트 세트입니다.

이 API는 개발자가 로그인, 회원가입, 비밀번호 재설정, 소셜 계정 연결 및 다단계 인증 (MFA)과 같은 핵심 인증 기능을 구현할 수 있도록 합니다. 이러한 기능을 구현하려면, 사용자 정의 UI가 Experience API와 상호작용해야 합니다.

사용자 흐름 및 구현 세부 사항을 더 잘 이해하려면:

Account API

Account API는 최종 사용자가 Management API를 거치지 않고 직접 API에 접근할 수 있도록 하는 포괄적인 API 세트입니다. 주요 내용은 다음과 같습니다:

  • 직접 접근: Account API는 최종 사용자가 Management API의 중계를 필요로 하지 않고 자신의 계정 프로필에 직접 접근하고 관리할 수 있도록 합니다.
  • 사용자 프로필 및 아이덴티티 관리: 사용자는 이메일, 전화번호, 비밀번호와 같은 아이덴티티 정보를 업데이트하고 소셜 연결을 관리할 수 있는 기능을 포함하여 자신의 프로필 및 보안 설정을 완전히 관리할 수 있습니다. MFA 및 SSO 지원은 곧 제공될 예정입니다.
  • 글로벌 접근 제어: 관리자는 접근 설정에 대해 완전하고 글로벌한 제어 권한을 가지며, 각 필드를 사용자 정의할 수 있습니다.
  • 원활한 인가: 인가가 그 어느 때보다 쉬워졌습니다! 단순히 client.getAccessToken()을 사용하여 OP (Logto)를 위한 불투명 액세스 토큰을 얻고, 이를 Bearer <access_token>으로 Authorization 헤더에 첨부하세요.

Logto Account API를 사용하면 Logto와 완전히 통합된 프로필 페이지와 같은 사용자 정의 계정 관리 시스템을 구축할 수 있습니다.

Account API에 의한 계정 설정을 확인하여 Account API를 활용하여 자체 계정 설정 페이지를 구축하는 방법을 배우세요.

자세한 API 문서는 Account API 참조를 참조하세요.

프론트엔드 프록시

프론트엔드 프록시는 환경 관련 방식으로 프론트엔드 프로젝트를 제공하는 미들웨어 함수입니다:

  • 개발 환경에서는 프론트엔드 개발 서버로 HTTP 요청을 프록시합니다.
  • 프로덕션 환경에서는 정적 프론트엔드 파일을 직접 제공합니다.

Logto에는 세 개의 프론트엔드 프록시가 있습니다:

이름프론트엔드 패키지마운트 경로
관리 콘솔 프록시/packages/console/console
데모 앱 프록시/packages/demo-app/demo-app
UI (로그인 경험) 프록시/packages/ui/
노트:

UI 프록시가 루트 경로를 사용하는 것을 알 수 있습니다. 다른 프록시와 달리, UI 프록시는 다른 프록시가 일치하지 않을 때만 작동하는 폴백 프록시입니다.