Firebase 인증 서비스를 나타내는 인터페이스입니다.
Firebase 인증 서비스 사용 방법에 대한 전체 가이드는 Firebase 인증을 참조하세요.
서명:
export interface Auth
속성
재산 | 유형 | 설명 |
---|---|---|
앱 | Firebase앱 | Auth 서비스 인스턴스와 연결된 FirebaseApp입니다 . |
구성 | 구성 | 이 인스턴스를 초기화하는 데 사용되는 구성 입니다. |
현재 사용자 | 사용자 | 없는 | 현재 로그인된 사용자(또는 null)입니다. |
에뮬레이터 구성 | 에뮬레이터 구성 | 없는 | 현재 에뮬레이터 구성(또는 null)입니다. |
언어코드 | 문자열 | 없는 | 인증 인스턴스의 언어 코드입니다. |
이름 | 끈 | Auth 서비스 인스턴스와 연결된 앱의 이름입니다. |
설정 | 인증 설정 | 인증 인스턴스의 설정입니다. |
테넌트 ID | 문자열 | 없는 | 인증 인스턴스의 테넌트 ID입니다. |
행동 양식
방법 | 설명 |
---|---|
인증상태준비() | 초기 인증 상태가 확정되면 즉시 해결되는 약속을 반환합니다. Promise가 해결되면 현재 사용자는 유효한 사용자이거나 사용자가 로그아웃한 경우 null 일 수 있습니다. |
beforeAuthStateChanged(콜백, onAbort) | 인증 상태 변경으로 인해 새 사용자가 설정되기 전에 실행되는 차단 콜백을 추가합니다. |
onAuthStateChanged(nextOrObserver, 오류, 완료) | 사용자의 로그인 상태 변경에 대한 관찰자를 추가합니다. |
onIdTokenChanged(nextOrObserver, 오류, 완료) | 로그인한 사용자의 ID 토큰 변경 사항에 대한 관찰자를 추가합니다. |
setPersistence(지속성) | Auth 인스턴스의 지속성 유형을 변경합니다. |
로그아웃() | 현재 사용자를 로그아웃합니다. 이는 사용자의 ID 토큰을 자동으로 취소하지 않습니다. |
업데이트현재사용자(사용자) | 제공된 사용자를 인증 인스턴스에서 Auth.currentUser 로 비동기식으로 설정합니다. |
useDeviceLanguage() | 현재 언어를 기본 장치/브라우저 기본 설정으로 설정합니다. |
Auth.app
Auth
서비스 인스턴스와 연결된 FirebaseApp입니다 .
서명:
readonly app: FirebaseApp;
인증.구성
이 인스턴스를 초기화하는 데 사용되는 구성 입니다.
서명:
readonly config: Config;
인증.현재사용자
현재 로그인된 사용자(또는 null)입니다.
서명:
readonly currentUser: User | null;
Auth.emulatorConfig
현재 에뮬레이터 구성(또는 null)입니다.
서명:
readonly emulatorConfig: EmulatorConfig | null;
인증언어코드
인증 인스턴스의 언어 코드입니다.
읽기/쓰기가 가능한 속성입니다. null로 설정하면 기본 Firebase 콘솔 언어 설정이 적용됩니다. 언어 코드는 지정된 공급자가 지정된 언어 코드로 현지화를 지원하는 경우 이메일 작업 템플릿(비밀번호 재설정, 이메일 확인 및 이메일 변경 취소), 전화 인증을 위한 SMS 템플릿, reCAPTCHA 확인기 및 OAuth 팝업/리디렉션 작업에 전파됩니다.
서명:
languageCode: string | null;
인증 이름
Auth
서비스 인스턴스와 연결된 앱의 이름입니다.
서명:
readonly name: string;
인증 설정
인증 인스턴스의 설정입니다.
전화인증을 위한 앱 인증 모드 등 구성 관련 옵션을 편집/읽는 데 사용됩니다.
서명:
readonly settings: AuthSettings;
인증 테넌트 ID
인증 인스턴스의 테넌트 ID입니다.
읽기/쓰기가 가능한 속성입니다. 인증 인스턴스의 테넌트 ID를 설정하면 향후 모든 로그인/등록 작업에서 이 테넌트 ID를 전달하고 지정된 테넌트 프로젝트에 사용자를 로그인하거나 등록합니다. null로 설정하면 사용자가 상위 프로젝트에 로그인됩니다.
서명:
tenantId: string | null;
예
// Set the tenant ID on Auth instance.
auth.tenantId = 'TENANT_PROJECT_ID';
// All future sign-in request now include tenant ID.
const result = await signInWithEmailAndPassword(auth, email, password);
// result.user.tenantId should be 'TENANT_PROJECT_ID'.
인증.authStateReady()
초기 인증 상태가 확정되면 즉시 해결되는 약속을 반환합니다. Promise가 해결되면 현재 사용자는 유효한 사용자이거나 사용자가 로그아웃한 경우 null
일 수 있습니다.
서명:
authStateReady(): Promise<void>;
보고:
약속<공허>
Auth.beforeAuthStateChanged()
인증 상태 변경으로 인해 새 사용자가 설정되기 전에 실행되는 차단 콜백을 추가합니다.
서명:
beforeAuthStateChanged(callback: (user: User | null) => void | Promise<void>, onAbort?: () => void): Unsubscribe;
매개변수
매개변수 | 유형 | 설명 |
---|---|---|
콜백 | (사용자: 사용자 | null) => void | 약속<공허> | 새 사용자 값이 설정되기 전에 콜백이 트리거됩니다. 이것이 발생하면 사용자가 설정되지 않도록 차단됩니다. |
onAbort | () => 무효 | 나중에 beforeAuthStateChanged() 콜백이 발생하면 콜백이 트리거되므로 부작용을 실행 취소할 수 있습니다. |
보고:
Auth.onAuthStateChanged()
사용자의 로그인 상태 변경에 대한 관찰자를 추가합니다.
이전 동작을 유지하려면 Auth.onIdTokenChanged()를 참조하세요. .
서명:
onAuthStateChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;
매개변수
매개변수 | 유형 | 설명 |
---|---|---|
다음또는관찰자 | 다음또는관찰자 < 사용자 | 널> | 변경 시 콜백이 트리거됩니다. |
오류 | 오류Fn | 더 이상 사용되지 않습니다. 이 콜백은 트리거되지 않습니다. 로그인/로그아웃 오류는 로그인/로그아웃 함수에서 반환된 Promise에서 포착될 수 있습니다. |
완전한 | 완료Fn | 더 이상 사용되지 않습니다. 이 콜백은 트리거되지 않습니다. |
보고:
Auth.onIdTokenChanged()
로그인한 사용자의 ID 토큰 변경 사항에 대한 관찰자를 추가합니다.
여기에는 로그인, 로그아웃 및 토큰 새로 고침 이벤트가 포함됩니다.
서명:
onIdTokenChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;
매개변수
매개변수 | 유형 | 설명 |
---|---|---|
다음또는관찰자 | 다음또는관찰자 < 사용자 | 널> | 변경 시 콜백이 트리거됩니다. |
오류 | 오류Fn | 더 이상 사용되지 않습니다. 이 콜백은 트리거되지 않습니다. 로그인/로그아웃 오류는 로그인/로그아웃 함수에서 반환된 Promise에서 포착될 수 있습니다. |
완전한 | 완료Fn | 더 이상 사용되지 않습니다. 이 콜백은 트리거되지 않습니다. |
보고:
Auth.setPersistence()
Auth
인스턴스의 지속성 유형을 변경합니다.
이는 현재 저장된 인증 세션에 영향을 미치며 리디렉션 요청을 통한 로그인을 포함하여 향후 로그인 요청에 이 유형의 지속성을 적용합니다.
이를 통해 로그인하는 사용자는 자신의 세션을 기억해야 하는지 여부를 쉽게 지정할 수 있습니다. 또한 다른 사용자가 공유하거나 민감한 데이터가 있는 애플리케이션에 대해 인증 상태를 유지하지 않는 것이 더 쉬워집니다.
이 방법은 Node.js 환경에서는 작동하지 않습니다.
서명:
setPersistence(persistence: Persistence): Promise<void>;
매개변수
매개변수 | 유형 | 설명 |
---|---|---|
고집 | 고집 | 사용할 지속성 . |
보고:
약속<공허>
예
auth.setPersistence(browserSessionPersistence);
인증.사인아웃()
현재 사용자를 로그아웃합니다. 이는 사용자의 ID 토큰을 자동으로 취소하지 않습니다.
서명:
signOut(): Promise<void>;
보고:
약속<공허>
인증.업데이트현재사용자()
제공된 사용자를 인증 인스턴스에서 Auth.currentUser 로 비동기식으로 설정합니다.
제공된 사용자의 새 인스턴스 복사본이 만들어지고 currentUser로 설정됩니다.
그러면 다른 로그인 방법과 마찬가지로 Auth.onAuthStateChanged() 및 Auth.onIdTokenChanged() 리스너가 트리거됩니다.
업데이트할 사용자가 다른 Firebase 프로젝트에 속한 경우 오류와 함께 작업이 실패합니다.
서명:
updateCurrentUser(user: User | null): Promise<void>;
매개변수
매개변수 | 유형 | 설명 |
---|---|---|
사용자 | 사용자 | 없는 | 새로운 사용자 . |
보고:
약속<공허>
Auth.useDeviceLanguage()
현재 언어를 기본 장치/브라우저 기본 설정으로 설정합니다.
서명:
useDeviceLanguage(): void;
보고:
무효의