Logto 를 사용하는 플러터플로우 커스텀 인증
Logto Flutter SDK 를 사용하여 Flutter 애플리케이션에 커스텀 인증을 구현하는 방법을 배웁니다.
소개
FlutterFlow 는 Flutter 애플리케이션을 시각적으로 구축할 수 있는 로우 코드 플랫폼입니다. 이 플랫폼은 드래그 앤 드롭 인터페이스를 제공하여 앱의 UI 를 디자인하고 해당 Flutter 코드를 생성합니다. 공식 문서 에 따르면 세 가지 다른 인증 통합 옵션을 제공합니다:
- 내장된 Firebase 인증을 통한 인증
- 내장된 Supabase 인증을 통한 인증
- 커스텀 인증
첫 번째와 두 번째 방법은 FlutterFlow 와 Firebase 또는 Supabase 의 무결한 통합을 제공합니다. 프로젝트를 Firebase 또는 Supabase 로 설정하고 FlutterFlow 에서 인증 설정을 구성해야 합니다. 그러나 다른 인증 제공자를 사용하려면 직접 인증 로직을 구현해야 합니다.
커스텀 인증 의 경우, FlutterFlow 은 단일 커스텀 인증 API 에 의존하여 모든 인증 제공자와 통합할 수 있는 방법을 제공합니다.
그러나 클라이언트와 인증 서버 간의 직접적인 사용자 자격 증명 교환은 최신 보안 표준에 따라 권장되지 않습니다. 대신에, OAuth 2.0 또는 OpenID Connect (OIDC) 와 같은 안전한 인증 흐름을 사용하여 사용자를 인증해야 합니다. Auth0, Okta, Logto 와 같은 최신 OAuth 2.0 또는 OIDC 기반의 IdP 를 사용하는 경우 리소스 소유자 비밀번호 자격 증명 (ROPC) 부여 유형은 보안상의 이 유로 권장되지 않거나 금지됩니다. 자세한 내용은 Deprecated ropc grant type 를 참조하세요.
표준 OAuth 2.0 또는 OIDC 인증 흐름은 클라이언트 애플리케이션, 권한 서버, 사용자의 브라우저 간의 여러 단계와 리디렉션을 포함합니다. 이 게시물에서는 Logto Flutter SDK 를 사용하여 FlutterFlow 애플리케이션에 안전한 인증 흐름을 구현하기 위해 CustomAuthManager
클래스를 맞춤화하는 방법을 배워보겠습니다.
사전 준비 사항
- Logto Cloud 계정 또는 자체 호스팅 Logto 인스턴스 (Logto 인스턴스를 생성하는 방법은 ⚡ 시작하기 가이드를 참조하세요)
- FlutterFlow 를 사용하여 생성된 Flutter 애플리케이션
- Logto 콘솔에 Flutter 애플리케이션 등록
- FlutterFlow 에서 커스텀 코드를 관리하기 위한 GitHub 저장소
- Flutter SDK 통합 가이드 확인
Step 1: FlutterFlow 에서 커스텀 코드 관리 기능 활성화
CustomAuthManager
클래스를 맞춤화하려면 FlutterFlow 에서 커스텀 코드 기능을 활성화해야 합니다. Manage Custom Code In GitHub 가이드를 따라 FlutterFlow 프로젝트와 GitHub 을 연결하고 동기화하세요.
작업이 완료되면 GitHub FlutterFlow 저장소에서 세 가지 다른 브랜치를 얻게 됩니다:
main
: Flutter 프로젝트의 메인 브랜치입니다. 이 브랜치는 프로젝트를 배포하는 데 필요합니다.flutterflow
: FlutterFlow 가 UI 편집기에서 코드베이스로 변경 사항을 동기화하는 브랜치입니다.develop
: 사용자 정의 코드를 수정할 수 있는 브랜치입니다.