TenantAwareAuth class

사용자 관리, SAML/OIDC 공급자 구성, 비밀번호 재설정을 위한 이메일 링크 생성, 특정 테넌트에 대한 이메일 확인 등에 사용되는 테넌트 인식 Auth 인터페이스입니다.

멀티테넌시 지원을 위해서는 Google Cloud의 Identity Platform(GCIP)이 필요합니다. 가격 및 기능을 포함하여 GCIP에 대해 자세히 알아보려면 GCIP 문서를 참조하세요. .

각 테넌트에는 자체 ID 공급자, 설정 및 사용자 집합이 포함되어 있습니다. TenantAwareAuth 사용 , 특정 테넌트에 대한 사용자 및 해당 OIDC/SAML 구성도 관리할 수 있고, 특정 테넌트에 로그인한 사용자에 대한 ID 토큰을 확인할 수 있으며, 테넌트에 속한 사용자에 대한 이메일 작업 링크도 생성할 수 있습니다.

특정 tenantId 에 대한 TenantAwareAuth 인스턴스는 TenantManager.authForTenant()를 호출하여 인스턴스화할 수 있습니다. .

서명:

export declare class TenantAwareAuth extends BaseAuth 

확장: BaseAuth

속성

재산 수정자 유형 설명
테넌트 IDTenantAwareAuth 인스턴스에 해당하는 테넌트 식별자입니다. 사용자 관리 API, OIDC/SAML 공급자 관리 API, 이메일 링크 생성 API 등에 대한 모든 호출은 이 테넌트 범위 내에서만 적용됩니다.

행동 양식

방법 수정자 설명
createSessionCookie(idToken, sessionCookieOptions) 지정된 옵션을 사용하여 새 Firebase 세션 쿠키를 만듭니다. 생성된 JWT 문자열은 맞춤형 쿠키 정책을 통해 서버측 세션 쿠키로 설정되어 세션 관리에 사용될 수 있습니다. 세션 쿠키 JWT는 제공된 ID 토큰과 동일한 페이로드 청구를 갖습니다. 코드 샘플 및 자세한 문서는 세션 쿠키 관리를 참조하세요.
verifyIdToken(idToken, checkRevoked) Firebase ID 토큰(JWT)을 확인합니다. 토큰이 유효하면 토큰의 디코딩된 클레임으로 약속이 이행됩니다. 그렇지 않으면 약속이 거부됩니다. checkRevoked true로 설정된 경우 먼저 해당 사용자의 비활성화 여부를 확인합니다. 그렇다면 auth/user-disabled 오류가 발생합니다. 아니요인 경우 ID 토큰에 해당하는 세션이 취소되었는지 확인합니다. 해당 사용자의 세션이 무효화되면 auth/id-token-revoked 오류가 발생합니다. 지정하지 않으면 검사가 적용되지 않습니다. 코드 샘플 및 자세한 문서는 ID 토큰 확인을 참조하세요.
verifySessionCookie(sessionCookie, checkRevoked) Firebase 세션 쿠키를 확인합니다. 쿠키 클레임과 함께 Promise를 반환합니다. 쿠키를 확인할 수 없으면 약속을 거부합니다. checkRevoked true로 설정된 경우 해당 사용자가 비활성화되어 있는지 먼저 확인합니다. 그렇다면 auth/user-disabled 오류가 발생합니다. 아니요인 경우 세션 쿠키에 해당하는 세션이 취소되었는지 확인합니다. 해당 사용자의 세션이 무효화되면 auth/session-cookie-revoked 오류가 발생합니다. 지정하지 않으면 검사가 수행되지 않습니다. 코드 샘플 및 자세한 문서는 세션 쿠키 확인을 참조하세요.

TenantAwareAuth.tenantId

TenantAwareAuth 인스턴스에 해당하는 테넌트 식별자입니다. 사용자 관리 API, OIDC/SAML 공급자 관리 API, 이메일 링크 생성 API 등에 대한 모든 호출은 이 테넌트 범위 내에서만 적용됩니다.

서명:

readonly tenantId: string;

TenantAwareAuth.createSessionCookie()

지정된 옵션을 사용하여 새 Firebase 세션 쿠키를 만듭니다. 생성된 JWT 문자열은 맞춤형 쿠키 정책을 통해 서버측 세션 쿠키로 설정되어 세션 관리에 사용될 수 있습니다. 세션 쿠키 JWT는 제공된 ID 토큰과 동일한 페이로드 청구를 갖습니다.

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

서명:

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

매개변수

매개변수 유형 설명
아이디토큰 세션 쿠키로 교환할 Firebase ID 토큰입니다.
세션쿠키옵션 세션쿠키옵션 사용자 정의 세션 기간을 포함하는 세션 쿠키 옵션입니다.

보고:

약속<문자열>

생성된 세션 쿠키의 성공 시 해결되는 약속입니다.

TenantAwareAuth.verifyIdToken()

Firebase ID 토큰(JWT)을 확인합니다. 토큰이 유효하면 토큰의 디코딩된 클레임으로 약속이 이행됩니다. 그렇지 않으면 약속이 거부됩니다.

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

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

서명:

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

매개변수

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

보고:

약속< DecodedIdToken >

ID 토큰이 유효한 경우 토큰의 디코딩된 클레임으로 이행되는 약속입니다. 그렇지 않으면 거부된 약속입니다.

TenantAwareAuth.verifySessionCookie()

Firebase 세션 쿠키를 확인합니다. 쿠키 클레임과 함께 Promise를 반환합니다. 쿠키를 확인할 수 없으면 약속을 거부합니다.

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

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

서명:

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

매개변수

매개변수 유형 설명
세션쿠키 확인할 세션 쿠키입니다.
수표가 취소됨 부울

보고:

약속< DecodedIdToken >

세션 쿠키가 유효한 경우 세션 쿠키의 디코딩된 클레임으로 이행되는 약속입니다. 그렇지 않으면 거부된 약속입니다.