특정 테넌트의 사용자 관리, 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
속성
속성 | 특수키 | 유형 | 설명 |
---|---|---|---|
테넌트 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>
세션 쿠키가 유효한 경우 세션 쿠키의 디코딩된 클레임으로 처리된 프로미스 그렇지 않으면 프라미스가 거부됩니다.