TenantAwareAuth class

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

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

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

특정 tenantIdTenantAwareAuth 인스턴스는 TenantManager.authForTenant()를 호출하여 인스턴스화할 수 있습니다.

서명:

export declare class TenantAwareAuth extends BaseAuth 

확장: BaseAuth

속성

속성 특수키 유형 설명
테넌트 ID 문자열 TenantAwareAuth 인스턴스에 해당하는 테넌트 식별자입니다. 사용자 관리 API, OIDC/SAML 제공업체 관리 API, 이메일 링크 생성 API 등에 대한 모든 호출은 이 테넌트 범위 내에서만 적용됩니다.

메소드

메서드 특수키 설명
createSessionCookie(idToken, sessionCookieOptions) 지정된 옵션으로 새 Firebase 세션 쿠키를 만듭니다. 생성된 JWT 문자열은 맞춤 쿠키 정책을 사용하여 서버 측 세션 쿠키로 설정할 수 있으며 세션 관리에 사용할 수 있습니다. 세션 쿠키 JWT에는 제공된 ID 토큰과 동일한 페이로드 클레임이 있습니다.코드 샘플 및 자세한 문서는 세션 쿠키 관리를 참고하세요.
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 오류가 발생합니다. 지정하지 않으면 검사가 수행되지 않습니다.코드 샘플 및 자세한 내용은 세션 쿠키 확인을 참고하세요.

테넌트 인식 인증.테넌트 ID

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

서명:

readonly tenantId: string;

TenantAwareAuth.createSessionCookie()

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

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

서명:

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

매개변수

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

반환:

프로미스<string>

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

TenantAwareAuth.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 토큰이 유효한 경우 토큰의 디코딩된 클레임으로 처리된 프로미스 그렇지 않으면 프라미스가 거부됩니다.

TenantAwareAuth.verifySessionCookie()

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

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

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

서명:

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

매개변수

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

반환:

프라미스<DecodedIdToken>

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