ユーザーの管理、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
プロパティ
プロパティ | 修飾キー | タイプ | 説明 |
---|---|---|---|
tenantId | 文字列 | この TenantAwareAuth インスタンスに対応するテナント ID。ユーザー管理 API、OIDC/SAML プロバイダ管理 API、メールリンク生成 API などへのすべての呼び出しは、このテナントのスコープ内でのみ適用されます。 |
メソッド
メソッド | 修飾キー | 説明 |
---|---|---|
createSessionCookie(idToken, sessionCookieOptions) | 指定されたオプションで新しい Firebase セッション Cookie を作成します。作成された JWT 文字列は、カスタム Cookie ポリシーを使用してサーバーサイドのセッション Cookie として設定し、セッション管理に使用できます。セッション Cookie の JWT には、提供された ID トークンと同じペイロード クレームが含まれます。コードサンプルと詳細なドキュメントについては、セッション Cookie の管理をご覧ください。 | |
verifyIdToken(idToken, checkRevoked) | Firebase ID トークン(JWT)を検証します。トークンが有効な場合、トークンのデコードされたクレームで Promise が履行されます。それ以外の場合、Promise は拒否されます。checkRevoked が true に設定されている場合は、まず対応するユーザーが無効になっているかどうかを確認します。「はい」の場合、auth/user-disabled エラーがスローされます。「いいえ」の場合は、その ID トークンに対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/id-token-revoked エラーがスローされます。指定しない場合、チェックは適用されません。コードサンプルと詳細なドキュメントについては、ID トークンを検証するをご覧ください。 |
|
verifySessionCookie(sessionCookie, checkRevoked) | Firebase セッション Cookie を検証します。Cookie クレームを含む Promise を返します。Cookie を検証できなかった場合、Promise を拒否します。checkRevoked が true に設定されている場合、まず対応するユーザーが無効になっているかどうかを確認します。無効になっている場合は、auth/user-disabled エラーがスローされます。「いいえ」の場合は、セッション Cookie に対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/session-cookie-revoked エラーがスローされます。指定しない場合、チェックは行われません。コードサンプルと詳細なドキュメントについては、セッション Cookie を検証するをご覧ください。 |
TenantAwareAuth.tenantId
この TenantAwareAuth
インスタンスに対応するテナント ID。ユーザー管理 API、OIDC/SAML プロバイダ管理 API、メールリンク生成 API などへのすべての呼び出しは、このテナントのスコープ内でのみ適用されます。
署名:
readonly tenantId: string;
TenantAwareAuth.createSessionCookie()
指定されたオプションで新しい Firebase セッション Cookie を作成します。作成された JWT 文字列は、カスタム Cookie ポリシーを使用してサーバーサイドのセッション Cookie として設定し、セッション管理に使用できます。セッション Cookie の JWT には、提供された ID トークンと同じペイロード クレームが含まれます。
コードのサンプルと詳細なドキュメントについては、セッション Cookie を管理するをご覧ください。
署名:
createSessionCookie(idToken: string, sessionCookieOptions: SessionCookieOptions): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
idToken | 文字列 | セッション Cookie と交換するための Firebase ID トークン。 |
sessionCookieOptions | SessionCookieOptions(セッション Cookie オプション) | カスタムのセッション継続時間を含むセッション Cookie オプション。 |
戻り値:
Promise<文字列>
作成されたセッション Cookie が成功した場合に解決される Promise。
TenantAwareAuth.verifyIdToken()
Firebase ID トークン(JWT)を検証します。トークンが有効な場合、トークンのデコードされたクレームで Promise が履行されます。それ以外の場合、Promise は拒否されます。
checkRevoked
が true に設定されている場合は、まず対応するユーザーが無効になっているかどうかを確認します。「はい」の場合、auth/user-disabled
エラーがスローされます。「いいえ」の場合は、その ID トークンに対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/id-token-revoked
エラーがスローされます。指定しない場合、チェックは適用されません。
コードサンプルと詳細なドキュメントについては、ID トークンを検証するをご覧ください。
署名:
verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
idToken | 文字列 | 検証する ID トークン。 |
checkRevoked(無効化済み) | ブール値 | ID トークンが取り消されたかどうかを確認するかどうか。そのためには、対応するユーザーの tokensValidAfterTime 時間を確認するための追加のリクエストを Firebase Auth バックエンドに対して行う必要があります。指定しない場合、この追加のチェックは適用されません。 |
戻り値:
Promise <DecodedIdToken>
ID トークンが有効な場合は、トークンのデコードされたクレームで履行される Promise。そうでない場合は Promise が拒否されます。
TenantAwareAuth.verifySessionCookie()
Firebase セッション Cookie を検証します。Cookie クレームを含む Promise を返します。Cookie を検証できない場合、Promise を拒否します。
checkRevoked
が true に設定されている場合、まず対応するユーザーが無効になっているかどうかを確認します。無効になっている場合は、auth/user-disabled
エラーがスローされます。「いいえ」の場合は、セッション Cookie に対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/session-cookie-revoked
エラーがスローされます。指定しない場合、チェックは行われません。
コードのサンプルと詳細なドキュメントについては、セッション Cookie を検証するをご覧ください。
署名:
verifySessionCookie(sessionCookie: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
セッション Cookie | 文字列 | 確認するセッション Cookie。 |
checkRevoked(無効化済み) | ブール値 |
戻り値:
Promise <DecodedIdToken>
セッション Cookie が有効な場合に、セッション Cookie のデコードされたクレームで履行される Promiseそうでない場合は Promise が拒否されます。