사용자 관리, 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, 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 >
세션 쿠키가 유효한 경우 세션 쿠키의 디코딩된 클레임으로 이행되는 약속입니다. 그렇지 않으면 거부된 약속입니다.