BaseAuth class

AuthTenantAwareAuth API 모두의 공통 상위 인터페이스입니다.

서명:

export declare abstract class BaseAuth 

메소드

메서드 특수키 설명
createCustomToken(uid, developerClaims) 클라이언트 SDK로 로그인하는 데 사용하기 위해 클라이언트 기기로 다시 전송할 수 있는 새 Firebase 맞춤 토큰 (JWT)을 만듭니다. signInWithCustomToken() 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다. 테넌트 인식 인스턴스는 토큰에 테넌트 ID도 삽입합니다.코드 샘플 및 자세한 문서는 커스텀 토큰 만들기를 참고하세요.
createProviderConfig(config) 새 제공업체 구성이 생성되면 새로 만든 AuthProviderConfig로 확인되는 프로미스를 반환합니다.SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.
createSessionCookie(idToken, sessionCookieOptions) 지정된 옵션으로 새 Firebase 세션 쿠키를 만듭니다. 생성된 JWT 문자열은 맞춤 쿠키 정책을 사용하여 서버 측 세션 쿠키로 설정할 수 있으며 세션 관리에 사용할 수 있습니다. 세션 쿠키 JWT에는 제공된 ID 토큰과 동일한 페이로드 클레임이 있습니다.코드 샘플 및 자세한 문서는 세션 쿠키 관리를 참고하세요.
createUser(속성) 신규 사용자를 만듭니다.코드 샘플 및 자세한 문서는 사용자 만들기를 참고하세요.
deleteProviderConfig(providerId) 전달된 제공업체 ID에 해당하는 제공업체 구성을 삭제합니다. 지정된 ID가 없으면 auth/configuration-not-found 오류가 발생합니다.SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.
deleteUser(uid) 기존 사용자를 삭제합니다.코드 샘플 및 자세한 문서는 사용자 삭제를 참고하세요.
deleteUsers(uids) 지정된 uid로 지정된 사용자를 삭제합니다.존재하지 않는 사용자를 삭제해도 오류가 발생하지 않습니다 (즉, 이 메서드는 멱등적임). 존재하지 않는 사용자는 삭제된 것으로 간주되므로 DeleteUsersResult.successCount 값으로 계산됩니다.최대 1, 000개의 식별자만 제공될 수 있습니다. 제공된 식별자가 1, 000개를 초과하면 이 메서드에서 FirebaseAuthError가 발생합니다.이 API는 현재 서버에서 속도가 1QPS로 제한됩니다. 이 한도를 초과하면 할당량 초과 오류가 발생할 수 있습니다. 따라서 1,000명 이상의 사용자를 삭제하려면 이 한도를 초과하지 않도록 지연 시간을 추가해야 할 수 있습니다.
generateEmailVerificationLink(email, actionCodeSettings) 지정된 이메일의 사용자 소유권을 확인하기 위한 대역 외 이메일 작업 링크를 생성합니다. 이 메서드에 인수로 제공되는 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.
generatePasswordResetLink(이메일, actionCodeSettings) 사용자의 비밀번호를 재설정하는 대역 외 이메일 작업 링크를 생성합니다. 지정된 이메일 주소가 있는 사용자의 링크가 생성됩니다. 선택사항인 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.
generateSignInWithEmailLink(email, actionCodeSettings) 지정된 이메일의 사용자 소유권을 확인하기 위한 대역 외 이메일 작업 링크를 생성합니다. 이 메서드에 인수로 제공되는 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.
generateVerifyAndChangeEmailLink(email, newEmail, actionCodeSettings) 지정된 이메일에 대한 사용자 소유권을 확인하기 위한 대역 외 이메일 작업 링크를 생성합니다. 이 메서드에 인수로 제공되는 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.
getProviderConfig(providerId) 제공된 ID로 인증 제공업체 구성을 조회합니다. 지정된 제공업체 ID에 해당하는 제공업체 구성으로 확인되는 프로미스를 반환합니다. 지정된 ID가 없으면 auth/configuration-not-found 오류가 발생합니다.SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.
getUser(uid) 지정된 uid에 해당하는 사용자의 사용자 데이터를 가져옵니다.코드 샘플 및 자세한 문서는 사용자 데이터 검색을 참고하세요.
getUserByEmail(email) 지정된 이메일에 해당하는 사용자의 사용자 데이터를 가져옵니다.코드 샘플 및 자세한 문서는 사용자 데이터 가져오기를 참고하세요.
getUserByPhoneNumber(phoneNumber) 지정된 전화번호에 해당하는 사용자의 사용자 데이터를 가져옵니다. 전화번호는 E.164 사양을 준수해야 합니다.코드 샘플 및 자세한 문서는 사용자 데이터 검색을 참고하세요.
getUserByProviderUid(providerId, uid) 지정된 제공업체 ID에 해당하는 사용자의 사용자 데이터를 가져옵니다.코드 샘플 및 자세한 문서는 사용자 데이터 검색을 참고하세요.
getUsers(식별자) 지정된 식별자에 해당하는 사용자 데이터를 가져옵니다.순서가 보장되지 않습니다. 특히 결과 목록의 n번째 항목이 입력 매개변수 목록의 n번째 항목과 일치하지 않을 수 있습니다.최대 100개의 식별자만 제공될 수 있습니다. 제공된 식별자가 100개를 초과하면 이 메서드에서 FirebaseAuthError가 발생합니다.
importUsers(사용자, 옵션) 제공된 사용자 목록을 Firebase 인증으로 가져옵니다. 한 번에 최대 1,000명의 사용자를 가져올 수 있습니다. 비밀번호가 있는 사용자를 가져올 때는 UserImportOptions를 지정해야 합니다. 이 작업은 일괄 가져오기에 최적화되어 있으며 중복이 발생할 수 있는 uid, email 및 기타 식별자 고유성 검사는 무시합니다.
listProviderConfigs(options) 제공된 필터와 일치하는 기존 제공업체 구성 목록을 반환합니다. 제공업체 구성은 한 번에 최대 100개까지 나열할 수 있습니다.SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.
listUsers(maxResults, pageToken) pageToken로 지정된 오프셋에서 시작하여 크기가 maxResults인 사용자 목록 (단일 배치만)을 검색합니다. 지정된 프로젝트의 모든 사용자를 일괄적으로 검색하는 데 사용됩니다.코드 샘플 및 자세한 문서는 모든 사용자 나열을 참고하세요.
revokeRefreshTokens(uid) 기존 사용자의 모든 갱신 토큰을 취소합니다.이 API는 사용자의 UserRecord.tokensValidAfterTime을 현재 UTC로 업데이트합니다. 이 API를 호출하는 서버의 시계가 올바르게 설정되어 동기화되어야 합니다.이렇게 하면 지정된 사용자의 모든 세션이 취소되고 기존 세션의 새 ID 토큰이 발급되지 않지만 기존 ID 토큰은 원래 만료 (1시간)까지 활성 상태로 유지될 수 있습니다. ID 토큰이 취소되었는지 확인하려면 BaseAuth.verifyIdToken()을 사용합니다. 여기서 checkRevoked는 true로 설정됩니다.
setCustomUserClaims(uid, customUserClaims) 제공된 uid로 식별되는 기존 사용자에 관한 추가 개발자 클레임을 설정합니다. 일반적으로 사용자 역할 및 액세스 수준을 정의하는 데 사용됩니다. 이러한 클레임은 사용자가 이미 로그인한 상태 (토큰 만료 후 또는 토큰 새로고침 강제 시) 및 다음에 사용자가 로그인할 때 모든 기기에 전파되어야 합니다. 예약된 OIDC 클레임 이름 (sub, iat, iss 등)을 사용하면 오류가 발생합니다. 인증된 사용자의 ID 토큰 JWT에 설정됩니다.코드 샘플 및 자세한 문서는 사용자 역할 및 액세스 수준 정의를 참고하세요.
updateProviderConfig(providerId, updatedConfig) 지정된 제공업체 ID에 해당하는 업데이트된 AuthProviderConfig로 확인되는 프로미스를 반환합니다. 지정된 ID가 없으면 auth/configuration-not-found 오류가 발생합니다.SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.
updateUser(uid, properties) 기존 사용자를 업데이트합니다.코드 샘플 및 자세한 문서는 사용자 업데이트를 참고하세요.
verifyIdToken(idToken, checkCanceld) Firebase ID 토큰 (JWT)을 확인합니다. 토큰이 유효한 경우 프라미스는 토큰의 디코딩된 클레임으로 처리됩니다. 그렇지 않으면 프로미스가 거부됩니다.checkRevoked가 true로 설정된 경우 먼저 해당 사용자가 사용 중지되었는지 확인합니다. 맞으면 auth/user-disabled 오류가 발생합니다. 아니요인 경우 ID 토큰에 해당하는 세션이 취소되었는지 확인합니다. 해당 사용자의 세션이 무효화되면 auth/id-token-revoked 오류가 발생합니다. 지정하지 않으면 검사가 적용되지 않습니다.코드 샘플 및 자세한 문서는 ID 토큰 확인을 참고하세요.
verifySessionCookie(sessionCookie, checkcanceld) Firebase 세션 쿠키를 확인합니다. 쿠키 클레임이 있는 프라미스를 반환합니다. 쿠키를 확인할 수 없는 경우 프로미스를 거부합니다.checkRevoked가 true로 설정된 경우 먼저 해당 사용자가 사용 중지되었는지 확인합니다. 사용 중지되면 auth/user-disabled 오류가 발생합니다. 아니요인 경우 세션 쿠키에 해당하는 세션이 취소되었는지 확인합니다. 해당 사용자의 세션이 무효화되면 auth/session-cookie-revoked 오류가 발생합니다. 지정하지 않으면 검사가 수행되지 않습니다.코드 샘플 및 자세한 내용은 세션 쿠키 확인을 참고하세요.

BaseAuth.createCustomToken()

클라이언트 SDK로 로그인하는 데 사용하기 위해 클라이언트 기기로 다시 전송할 수 있는 새 Firebase 맞춤 토큰 (JWT)을 만듭니다. signInWithCustomToken() 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다. 테넌트 인식 인스턴스는 토큰에 테넌트 ID도 삽입합니다.

코드 샘플 및 자세한 문서는 커스텀 토큰 만들기를 참고하세요.

서명:

createCustomToken(uid: string, developerClaims?: object): Promise<string>;

매개변수

매개변수 유형 설명
uid 문자열 커스텀 토큰의 제목으로 사용할 uid입니다.
developerClaims 객체 커스텀 토큰의 페이로드에 포함할 선택적 추가 클레임입니다.

반환:

프로미스<string>

제공된 uid 및 페이로드의 커스텀 토큰으로 처리된 프로미스입니다.

BaseAuth.createProviderConfig()

새 제공업체 구성이 생성될 때 새로 생성된 AuthProviderConfig로 확인되는 프로미스를 반환합니다.

SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.

서명:

createProviderConfig(config: AuthProviderConfig): Promise<AuthProviderConfig>;

매개변수

매개변수 유형 설명
config AuthProviderConfig 생성할 제공업체 구성입니다.

반환:

프로미스<AuthProviderConfig>

생성된 제공업체 구성으로 확인되는 프로미스입니다.

BaseAuth.createSessionCookie()

지정된 옵션으로 새 Firebase 세션 쿠키를 만듭니다. 생성된 JWT 문자열은 맞춤 쿠키 정책을 사용하여 서버 측 세션 쿠키로 설정할 수 있으며 세션 관리에 사용할 수 있습니다. 세션 쿠키 JWT에는 제공된 ID 토큰과 동일한 페이로드 클레임이 있습니다.

코드 샘플 및 자세한 문서는 세션 쿠키 관리를 참조하세요.

서명:

createSessionCookie(idToken: string, sessionCookieOptions: SessionCookieOptions): Promise<string>;

매개변수

매개변수 유형 설명
idToken 문자열 세션 쿠키로 교환할 Firebase ID 토큰입니다.
sessionCookieOptions SessionCookieOptions 맞춤 세션 시간이 포함된 세션 쿠키 옵션입니다.

반환:

프로미스<string>

생성된 세션 쿠키로 성공 시 해결되는 프로미스입니다.

BaseAuth.createUser()

신규 사용자를 만듭니다.

코드 샘플 및 자세한 문서는 사용자 만들기를 참조하세요.

서명:

createUser(properties: CreateRequest): Promise<UserRecord>;

매개변수

매개변수 유형 설명
속성 요청 만들기 만들 새 사용자 레코드에 설정할 속성입니다.

반환:

프로미스 <UserRecord>

새로 생성된 사용자에 해당하는 사용자 데이터로 처리된 프로미스입니다.

BaseAuth.deleteProviderConfig()

전달된 제공업체 ID에 해당하는 제공업체 구성을 삭제합니다. 지정된 ID가 없으면 auth/configuration-not-found 오류가 발생합니다.

SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.

서명:

deleteProviderConfig(providerId: string): Promise<void>;

매개변수

매개변수 유형 설명
providerId 문자열 삭제할 제공업체 구성에 해당하는 제공업체 ID입니다.

반환:

프로미스<void>

완료 시 해결되는 프로미스입니다.

BaseAuth.deleteUser()

기존 사용자를 삭제합니다.

코드 샘플 및 자세한 문서는 사용자 삭제를 참고하세요.

서명:

deleteUser(uid: string): Promise<void>;

매개변수

매개변수 유형 설명
uid 문자열 삭제할 사용자에 해당하는 uid입니다.

반환:

프로미스<void>

사용자가 삭제되면 빈 프로미스가 처리됩니다.

BaseAuth.deleteUsers()

지정된 UID로 지정된 사용자를 삭제합니다.

존재하지 않는 사용자를 삭제해도 오류가 발생하지 않습니다 (즉, 이 메서드는 멱등적임). 존재하지 않는 사용자는 삭제된 것으로 간주되므로 DeleteUsersResult.successCount 값에 계산됩니다.

최대 1,000개의 식별자만 제공될 수 있습니다. 제공된 식별자가 1, 000개를 초과하면 이 메서드에서 FirebaseAuthError가 발생합니다.

이 API는 현재 서버에서 속도가 1QPS로 제한됩니다. 이 한도를 초과하면 할당량 초과 오류가 발생할 수 있습니다. 따라서 1,000명 이상의 사용자를 삭제하려면 이 한도를 초과하지 않도록 지연 시간을 추가해야 할 수 있습니다.

서명:

deleteUsers(uids: string[]): Promise<DeleteUsersResult>;

매개변수

매개변수 유형 설명
UID 문자열[] 삭제할 사용자에 해당하는 uids입니다.

반환:

프로미스 <DeleteUsersResult>

성공/실패한 총 삭제 수와 실패한 삭제에 해당하는 오류 배열을 확인하는 프라미스입니다.

지정된 이메일의 사용자 소유권을 확인하기 위한 대역 외 이메일 작업 링크를 생성합니다. 이 메서드에 인수로 제공되는 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.

서명:

generateEmailVerificationLink(email: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;

매개변수

매개변수 유형 설명
이메일 문자열 확인할 이메일 계정입니다.
작업 코드 설정 ActionCodeSettings 액션 코드 설정입니다. 지정하면 상태/연결 URL이 'continueUrl'로 설정됩니다. 매개변수 값)을 반드시 포함해야 합니다. 기본 이메일 확인 방문 페이지에서는 앱이 설치되어 있는 경우 이를 사용하여 앱으로 돌아갈 수 있는 링크를 표시합니다. actionCodeSettings를 지정하지 않으면 작업 URL에 URL이 추가되지 않습니다. 제공된 상태 URL은 개발자가 콘솔에서 허용한 도메인에 속해야 합니다. 그렇지 않으면 오류가 발생합니다. 모바일 앱 리디렉션은 개발자가 Firebase 동적 링크 서비스 약관을 구성하고 이에 동의하는 경우에만 적용됩니다. Android 패키지 이름과 iOS 번들 ID는 동일한 Firebase 인증 프로젝트에서 구성된 경우에만 적용됩니다.

반환:

프로미스<string>

생성된 링크로 해결되는 프로미스입니다.

var actionCodeSettings = {
  url: 'https://www.example.com/cart?email=user@example.com&cartId=123',
  iOS: {
    bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true,
  dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
    .generateEmailVerificationLink('user@example.com', actionCodeSettings)
    .then(function(link) {
      // The link was successfully generated.
    })
    .catch(function(error) {
      // Some error occurred, you can inspect the code: error.code
    });

사용자의 비밀번호를 재설정하는 대역 외 이메일 작업 링크를 생성합니다. 지정된 이메일 주소가 있는 사용자의 링크가 생성됩니다. 선택사항인 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.

서명:

generatePasswordResetLink(email: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;

매개변수

매개변수 유형 설명
이메일 문자열 비밀번호를 재설정할 사용자의 이메일 주소입니다.
작업 코드 설정 ActionCodeSettings 액션 코드 설정입니다. 지정하면 상태/연결 URL이 'continueUrl'로 설정됩니다. 매개변수 재설정 링크에서 값을 찾을 수 있습니다. 기본 비밀번호 재설정 방문 페이지에서는 앱이 설치되어 있는 경우 이를 사용하여 앱으로 돌아갈 수 있는 링크를 표시합니다. actionCodeSettings를 지정하지 않으면 작업 URL에 URL이 추가되지 않습니다. 제공된 상태 URL은 개발자가 콘솔에서 허용한 도메인에 속해야 합니다. 그렇지 않으면 오류가 발생합니다. 모바일 앱 리디렉션은 개발자가 Firebase 동적 링크 서비스 약관을 구성하고 이에 동의하는 경우에만 적용됩니다. Android 패키지 이름과 iOS 번들 ID는 동일한 Firebase 인증 프로젝트에서 구성된 경우에만 적용됩니다.

반환:

프로미스<string>

생성된 링크로 해결되는 프로미스입니다.

var actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
    bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true,
  dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
    .generatePasswordResetLink('user@example.com', actionCodeSettings)
    .then(function(link) {
      // The link was successfully generated.
    })
    .catch(function(error) {
      // Some error occurred, you can inspect the code: error.code
    });

지정된 이메일의 사용자 소유권을 확인하기 위한 대역 외 이메일 작업 링크를 생성합니다. 이 메서드에 인수로 제공되는 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.

서명:

generateSignInWithEmailLink(email: string, actionCodeSettings: ActionCodeSettings): Promise<string>;

매개변수

매개변수 유형 설명
이메일 문자열 확인할 이메일 계정입니다.
작업 코드 설정 ActionCodeSettings 액션 코드 설정입니다. 지정하면 상태/연결 URL이 'continueUrl'로 설정됩니다. 매개변수 값)을 반드시 포함해야 합니다. 기본 이메일 확인 방문 페이지에서는 앱이 설치되어 있는 경우 이를 사용하여 앱으로 돌아갈 수 있는 링크를 표시합니다. actionCodeSettings를 지정하지 않으면 작업 URL에 URL이 추가되지 않습니다. 제공된 상태 URL은 개발자가 콘솔에서 허용한 도메인에 속해야 합니다. 그렇지 않으면 오류가 발생합니다. 모바일 앱 리디렉션은 개발자가 Firebase 동적 링크 서비스 약관을 구성하고 이에 동의하는 경우에만 적용됩니다. Android 패키지 이름과 iOS 번들 ID는 동일한 Firebase 인증 프로젝트에서 구성된 경우에만 적용됩니다.

반환:

프로미스<string>

생성된 링크로 해결되는 프로미스입니다.

var actionCodeSettings = {
  url: 'https://www.example.com/cart?email=user@example.com&cartId=123',
  iOS: {
    bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true,
  dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
    .generateEmailVerificationLink('user@example.com', actionCodeSettings)
    .then(function(link) {
      // The link was successfully generated.
    })
    .catch(function(error) {
      // Some error occurred, you can inspect the code: error.code
    });

지정된 이메일에 대한 사용자 소유권을 확인하기 위한 대역 외 이메일 작업 링크를 생성합니다. 이 메서드에 인수로 제공되는 ActionCodeSettings 객체는 모바일 앱 또는 브라우저에서 링크를 처리할지 여부와 딥 링크로 전달할 추가 상태 정보 등을 정의합니다.

서명:

generateVerifyAndChangeEmailLink(email: string, newEmail: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;

매개변수

매개변수 유형 설명
이메일 문자열 현재 이메일 계정입니다.
새 이메일 문자열 계정을 업데이트할 이메일 주소입니다.
작업 코드 설정 ActionCodeSettings 액션 코드 설정입니다. 지정하면 상태/연결 URL이 'continueUrl'로 설정됩니다. 매개변수 값)을 반드시 포함해야 합니다. 기본 이메일 확인 방문 페이지에서는 앱이 설치되어 있는 경우 이를 사용하여 앱으로 돌아갈 수 있는 링크를 표시합니다. actionCodeSettings를 지정하지 않으면 작업 URL에 URL이 추가되지 않습니다. 제공된 상태 URL은 콘솔에서 승인된 도메인에 속해야 합니다. 그렇지 않으면 오류가 발생합니다. 모바일 앱 리디렉션은 개발자가 Firebase 동적 링크 서비스 약관을 구성하고 이에 동의하는 경우에만 적용됩니다. Android 패키지 이름과 iOS 번들 ID는 동일한 Firebase 인증 프로젝트에서 구성된 경우에만 적용됩니다.

반환:

프로미스<string>

생성된 링크로 해결되는 프로미스입니다.

BaseAuth.getProviderConfig()

제공된 ID로 인증 제공업체 구성을 조회합니다. 지정된 제공업체 ID에 해당하는 제공업체 구성으로 확인되는 프로미스를 반환합니다. 지정된 ID가 없으면 auth/configuration-not-found 오류가 발생합니다.

SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.

서명:

getProviderConfig(providerId: string): Promise<AuthProviderConfig>;

매개변수

매개변수 유형 설명
providerId 문자열 반환할 제공업체 구성에 해당하는 제공업체 ID입니다.

반환:

프로미스<AuthProviderConfig>

제공된 ID에 해당하는 구성으로 확인되는 프로미스입니다.

BaseAuth.getUser()

지정된 uid에 상응하는 사용자의 사용자 데이터를 가져옵니다.

코드 샘플 및 자세한 문서는 사용자 데이터 검색을 참고하세요.

서명:

getUser(uid: string): Promise<UserRecord>;

매개변수

매개변수 유형 설명
uid 문자열 데이터를 가져올 사용자에 해당하는 uid입니다.

반환:

프로미스 <UserRecord>

제공된 uid에 해당하는 사용자 데이터로 처리된 프로미스입니다.

BaseAuth.getUserByEmail()

지정된 이메일에 해당하는 사용자의 사용자 데이터를 가져옵니다.

코드 샘플 및 자세한 문서는 사용자 데이터 검색을 참고하세요.

서명:

getUserByEmail(email: string): Promise<UserRecord>;

매개변수

매개변수 유형 설명
이메일 문자열 데이터를 가져올 사용자의 이메일입니다.

반환:

프로미스 <UserRecord>

제공된 이메일에 해당하는 사용자 데이터로 처리된 프로미스입니다.

BaseAuth.getUserByPhoneNumber()

지정된 전화번호에 해당하는 사용자의 사용자 데이터를 가져옵니다. 전화번호는 E.164 사양을 준수해야 합니다.

코드 샘플 및 자세한 문서는 사용자 데이터 검색을 참고하세요.

서명:

getUserByPhoneNumber(phoneNumber: string): Promise<UserRecord>;

매개변수

매개변수 유형 설명
전화번호 문자열 데이터를 가져올 사용자의 전화번호입니다.

반환:

프로미스 <UserRecord>

제공된 전화번호에 해당하는 사용자 데이터로 약속이 처리됩니다.

BaseAuth.getUserByProviderUid()

지정된 제공업체 ID에 해당하는 사용자의 사용자 데이터를 가져옵니다.

코드 샘플 및 자세한 문서는 사용자 데이터 검색을 참고하세요.

서명:

getUserByProviderUid(providerId: string, uid: string): Promise<UserRecord>;

매개변수

매개변수 유형 설명
providerId 문자열 제공업체 ID(예: 'google.com') URL을 입력합니다.
uid 문자열 특정 제공업체의 사용자 식별자입니다.

반환:

프로미스 <UserRecord>

지정된 제공업체 ID에 해당하는 사용자 데이터로 처리된 프로미스입니다.

BaseAuth.getUsers()

지정된 식별자에 해당하는 사용자 데이터를 가져옵니다.

순서는 보장되지 않습니다. 특히 결과 목록의 n번째 항목이 입력 매개변수 목록의 n번째 항목과 일치하지 않을 수 있습니다.

최대 100개의 식별자만 제공될 수 있습니다. 제공된 식별자가 100개를 초과하면 이 메서드에서 FirebaseAuthError가 발생합니다.

서명:

getUsers(identifiers: UserIdentifier[]): Promise<GetUsersResult>;

매개변수

매개변수 유형 설명
identifiers UserIdentifier[] 반환해야 하는 사용자 레코드를 나타내는 데 사용되는 식별자입니다. 항목이 100개를 초과하면 안 됩니다.

반환:

프라미스 <GetUsersResult>

해당 사용자 레코드로 확인되는 프로미스입니다.

예외

FirebaseAuthError: 잘못된 식별자가 있거나 100개 이상의 식별자가 지정된 경우

BaseAuth.importUsers()

제공된 사용자 목록을 Firebase 인증으로 가져옵니다. 한 번에 최대 1,000명의 사용자를 가져올 수 있습니다. 비밀번호가 있는 사용자를 가져올 때는 UserImportOptions를 지정해야 합니다. 이 작업은 일괄 가져오기에 최적화되어 있으며 중복이 발생할 수 있는 uid, email 및 기타 식별자 고유성 검사는 무시합니다.

서명:

importUsers(users: UserImportRecord[], options?: UserImportOptions): Promise<UserImportResult>;

매개변수

매개변수 유형 설명
사용자 UserImportRecord[] Firebase 인증으로 가져올 사용자 레코드 목록입니다.
옵션 UserImportOptions 사용자가 비밀번호 사용자 인증 정보를 포함한 경우 필요한 사용자 가져오기 옵션입니다.

반환:

프로미스<UserImportResult>

작업이 가져오기의 결과와 함께 완료될 때 확인되는 프로미스입니다. 여기에는 성공한 가져오기 수, 실패한 가져오기 수, 해당하는 오류가 포함됩니다.

BaseAuth.listProviderConfigs()

제공된 필터와 일치하는 기존 제공업체 구성 목록을 반환합니다. 제공업체 구성은 한 번에 최대 100개까지 나열할 수 있습니다.

SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.

서명:

listProviderConfigs(options: AuthProviderConfigFilter): Promise<ListProviderConfigResults>;

매개변수

매개변수 유형 설명
옵션 AuthProviderConfigFilter 적용할 제공업체 구성 필터입니다.

반환:

프로미스<ListProviderConfigResults>

필터 요구사항을 충족하는 제공업체 구성 목록으로 해결되는 프로미스입니다.

BaseAuth.listUsers()

pageToken로 지정된 오프셋에서 시작하여 크기가 maxResults인 사용자 목록 (단일 배치만)을 검색합니다. 지정된 프로젝트의 모든 사용자를 일괄적으로 검색하는 데 사용됩니다.

코드 샘플과 자세한 문서는 모든 사용자 목록 보기를 참고하세요.

서명:

listUsers(maxResults?: number, pageToken?: string): Promise<ListUsersResult>;

매개변수

매개변수 유형 설명
maxResults 숫자 페이지 크기(정의되지 않은 경우 1000) 이 한도는 허용되는 최대 한도이기도 합니다.
pageToken 문자열 다음 페이지 토큰입니다. 지정하지 않으면 오프셋 없이 시작하는 사용자가 반환됩니다.

반환:

프로미스 <ListUsersResult>

다운로드된 사용자의 현재 배치와 다음 페이지 토큰으로 확인되는 프로미스입니다.

BaseAuth.revokeRefreshTokens()

기존 사용자의 모든 갱신 토큰을 취소합니다.

이 API는 사용자의 UserRecord.tokensValidAfterTime을 현재 UTC로 업데이트합니다. 이를 호출하는 서버의 시계가 올바르게 설정되어 있고 동기화되어야 합니다.

이렇게 하면 지정된 사용자의 모든 세션이 취소되고 기존 세션에 대한 새 ID 토큰이 발급되지 않지만 기존 ID 토큰은 자연스럽게 만료될 때까지 (1시간) 활성 상태로 유지될 수 있습니다. ID 토큰이 취소되었는지 확인하려면 BaseAuth.verifyIdToken()을 사용합니다. 여기서 checkRevoked는 true로 설정됩니다.

서명:

revokeRefreshTokens(uid: string): Promise<void>;

매개변수

매개변수 유형 설명
uid 문자열 갱신 토큰을 취소할 사용자에 해당하는 uid입니다.

반환:

프로미스<void>

사용자의 갱신 토큰이 취소되면 빈 프로미스가 처리됩니다.

BaseAuth.setCustomUserClaims()

제공된 uid로 식별되는 기존 사용자에 대한 추가 개발자 클레임을 설정합니다. 일반적으로 사용자 역할 및 액세스 수준을 정의하는 데 사용됩니다. 이러한 클레임은 사용자가 이미 로그인한 상태 (토큰 만료 후 또는 토큰 새로고침 강제 시) 및 다음에 사용자가 로그인할 때 모든 기기에 전파되어야 합니다. 예약된 OIDC 클레임 이름 (sub, iat, iss 등)을 사용하면 오류가 발생합니다. 인증된 사용자의 ID 토큰 JWT에 설정됩니다.

코드 샘플과 자세한 문서는 사용자 역할 및 액세스 수준 정의를 참고하세요.

서명:

setCustomUserClaims(uid: string, customUserClaims: object | null): Promise<void>;

매개변수

매개변수 유형 설명
uid 문자열 수정할 사용자의 uid입니다.
customUserClaims 객체 | 없음 개발자가 설정한다고 주장합니다. null이 전달되면 기존 커스텀 클레임이 삭제됩니다. 1,000바이트보다 큰 커스텀 클레임 페이로드를 전달하면 오류가 발생합니다. 커스텀 클레임은 사용자의 ID 토큰에 추가되어 인증된 모든 요청에서 전송됩니다. 액세스 권한이 없는 프로필 관련 사용자 속성의 경우 데이터베이스 또는 다른 별도의 스토리지 시스템을 사용합니다.

반환:

프로미스<void>

작업이 성공적으로 완료될 때 확인되는 프로미스입니다.

BaseAuth.updateProviderConfig()

지정된 제공업체 ID에 해당하는 업데이트된 AuthProviderConfig로 확인되는 프로미스를 반환합니다. 지정된 ID가 없으면 auth/configuration-not-found 오류가 발생합니다.

SAML 및 OIDC 제공업체 지원을 위해서는 Google Cloud의 Identity Platform (GCIP)이 필요합니다. 가격 책정 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요.

서명:

updateProviderConfig(providerId: string, updatedConfig: UpdateAuthProviderRequest): Promise<AuthProviderConfig>;

매개변수

매개변수 유형 설명
providerId 문자열 업데이트할 제공업체 구성에 해당하는 제공업체 ID입니다.
업데이트된 구성 UpdateAuthProviderRequest 업데이트된 구성입니다.

반환:

프로미스<AuthProviderConfig>

업데이트된 제공업체 구성으로 확인되는 프로미스입니다.

BaseAuth.updateUser()

기존 사용자를 업데이트합니다.

코드 샘플 및 자세한 문서는 사용자 업데이트를 참고하세요.

서명:

updateUser(uid: string, properties: UpdateRequest): Promise<UserRecord>;

매개변수

매개변수 유형 설명
uid 문자열 업데이트할 사용자에 해당하는 uid입니다.
속성 UpdateRequest 제공된 사용자에 대해 업데이트할 속성입니다.

반환:

프로미스 <UserRecord>

업데이트된 사용자 데이터로 처리된 프로미스

BaseAuth.verifyIdToken()

Firebase ID 토큰 (JWT)을 확인합니다. 토큰이 유효한 경우 프라미스는 토큰의 디코딩된 클레임으로 처리됩니다. 그렇지 않으면 프라미스가 거부됩니다.

checkRevoked가 true로 설정된 경우 먼저 해당 사용자가 사용 중지되었는지 확인합니다. 맞으면 auth/user-disabled 오류가 발생합니다. 아니요인 경우 ID 토큰에 해당하는 세션이 취소되었는지 확인합니다. 해당 사용자의 세션이 무효화되면 auth/id-token-revoked 오류가 발생합니다. 지정하지 않으면 검사가 적용되지 않습니다.

코드 샘플 및 자세한 문서는 ID 토큰 확인을 참고하세요.

서명:

verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;

매개변수

매개변수 유형 설명
idToken 문자열 확인할 ID 토큰입니다.
check취소됨 부울 ID 토큰이 취소되었는지 확인할지 여부입니다. 이 경우 해당 사용자의 tokensValidAfterTime 시간을 확인하기 위해 Firebase 인증 백엔드에 대한 추가 요청이 필요합니다. 지정하지 않으면 이 추가 검사가 적용되지 않습니다.

반환:

프라미스<DecodedIdToken>

ID 토큰이 유효한 경우 토큰의 디코딩된 클레임으로 처리된 프로미스 그렇지 않으면 프라미스가 거부됩니다.

BaseAuth.verifySessionCookie()

Firebase 세션 쿠키를 확인합니다. 쿠키 클레임이 있는 프라미스를 반환합니다. 쿠키를 확인할 수 없는 경우 프로미스를 거부합니다.

checkRevoked가 true로 설정된 경우 먼저 해당 사용자가 사용 중지되었는지 확인합니다. 사용 중지되면 auth/user-disabled 오류가 발생합니다. 아니요인 경우 세션 쿠키에 해당하는 세션이 취소되었는지 확인합니다. 해당 사용자의 세션이 무효화되면 auth/session-cookie-revoked 오류가 발생합니다. 지정하지 않으면 검사가 수행되지 않습니다.

코드 샘플 및 자세한 문서는 세션 쿠키 확인을 참조하세요.

서명:

verifySessionCookie(sessionCookie: string, checkRevoked?: boolean): Promise<DecodedIdToken>;

매개변수

매개변수 유형 설명
sessionCookie 문자열 확인할 세션 쿠키입니다.
check취소됨 부울

반환:

프라미스<DecodedIdToken>

세션 쿠키가 유효한 경우 세션 쿠키의 디코딩된 클레임으로 처리된 프로미스 그렇지 않으면 프라미스가 거부됩니다.