特定のテナントに対するユーザーの管理、SAML/OIDC プロバイダーの構成、パスワード リセットのための電子メール リンクの生成、電子メール検証などに使用されるテナント対応のAuth
インターフェイス。
マルチテナンシーのサポートには、Google Cloud の ID プラットフォーム (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 セッション Cookie を作成します。作成された JWT 文字列は、カスタム Cookie ポリシーを使用してサーバー側のセッション Cookie として設定し、セッション管理に使用できます。セッション Cookie JWT には、提供された ID トークンと同じペイロード クレームが含まれます。コードサンプルと詳細なドキュメントについては、 「セッション Cookie の管理」を参照してください。 | |
verifyIdToken(idToken, checkRevoked) | Firebase ID トークン (JWT) を検証します。トークンが有効な場合、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
インスタンスに対応するテナント識別子。ユーザー管理 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>;
パラメーター
パラメータ | タイプ | 説明 |
---|---|---|
idトークン | 弦 | セッション Cookie と交換する Firebase ID トークン。 |
セッションCookieオプション | セッションクッキーオプション | カスタム セッション期間を含むセッション Cookie オプション。 |
戻り値:
約束<文字列>
作成されたセッション Cookie の成功時に解決される Promise。
TenantAwareAuth.verifyIdToken()
Firebase ID トークン (JWT) を検証します。トークンが有効な場合、Promise はトークンのデコードされたクレームで履行されます。そうでない場合、約束は拒否されます。
checkRevoked
true に設定されている場合、まず対応するユーザーが無効になっているかどうかを確認します。 「はい」の場合、 auth/user-disabled
エラーがスローされます。 「いいえ」の場合、ID トークンに対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効化された場合、 auth/id-token-revoked
エラーがスローされます。指定しない場合、チェックは適用されません。
コードサンプルと詳細なドキュメントについては、 「ID トークンの検証」を参照してください。
サイン:
verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
パラメーター
パラメータ | タイプ | 説明 |
---|---|---|
idトークン | 弦 | 検証する ID トークン。 |
チェック取り消し済み | ブール値 | IDトークンが取り消されたかどうかを確認するかどうか。これには、対応するユーザーのtokensValidAfterTime 時間を確認するために、Firebase Auth バックエンドへの追加のリクエストが必要です。指定しない場合、この追加チェックは適用されません。 |
戻り値:
Promise< DecodedIdToken >
ID トークンが有効な場合、トークンのデコードされたクレームによって履行される 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。 |
チェック取り消し済み | ブール値 |
戻り値:
Promise< DecodedIdToken >
セッション Cookie が有効な場合、セッション Cookie のデコードされたクレームによって履行される Promise。それ以外の場合は、約束が拒否されます。