TenantAwareAuth class

Antarmuka Auth berbasis tenant yang digunakan untuk mengelola pengguna, mengonfigurasi penyedia SAML/OIDC, membuat link email untuk reset sandi, verifikasi email, dll. untuk tenant tertentu.

Dukungan multi-tenancy memerlukan Identity Platform (GCIP) Google Cloud. Untuk mempelajari GCIP lebih lanjut, termasuk harga dan fitur, lihat dokumentasi GCIP.

Setiap tenant berisi penyedia identitas, setelan, dan serangkaian penggunanya sendiri. Dengan menggunakan TenantAwareAuth, pengguna untuk tenant tertentu dan konfigurasi OIDC/SAML yang sesuai juga dapat dikelola, token ID untuk pengguna yang login ke tenant tertentu dapat diverifikasi, dan link tindakan email juga dapat dibuat untuk pengguna yang merupakan tenant.

Instance TenantAwareAuth untuk tenantId tertentu dapat dibuat instance-nya dengan memanggil TenantManager.authForTenant().

Tanda Tangan:

export declare class TenantAwareAuth extends BaseAuth 

Memperluas: BaseAuth

Properti

Properti Pengubah Jenis Deskripsi
tenantId string ID tenant yang sesuai dengan instance TenantAwareAuth ini. Semua panggilan ke API pengelolaan pengguna, API pengelolaan penyedia OIDC/SAML, API pembuatan link email, dll. hanya akan diterapkan dalam cakupan tenant ini.

Metode

Metode Pengubah Deskripsi
createSessionCookie(idToken, sessionCookieOptions) Membuat cookie sesi Firebase baru dengan opsi yang ditentukan. String JWT yang dibuat dapat ditetapkan sebagai cookie sesi sisi server dengan kebijakan cookie kustom, dan digunakan untuk pengelolaan sesi. JWT cookie sesi akan memiliki klaim payload yang sama dengan token ID yang diberikan.Lihat Mengelola Cookie Sesi untuk mengetahui contoh kode dan dokumentasi mendetail.
verifyIdToken(idToken, checkAuthd) Memverifikasi token ID Firebase (JWT). Jika token valid, promise akan terpenuhi dengan klaim token yang didekode; jika tidak, promise akan ditolak.Jika checkRevoked ditetapkan ke true, pertama-tama verifikasi apakah pengguna yang sesuai dinonaktifkan. Jika ya, error auth/user-disabled akan ditampilkan. Jika tidak, verifikasi apakah sesi yang sesuai dengan token ID telah dicabut. Jika sesi pengguna yang sesuai tidak valid, error auth/id-token-revoked akan ditampilkan. Jika tidak ditentukan, pemeriksaan tidak diterapkan.Lihat Memverifikasi Token ID untuk melihat contoh kode dan dokumentasi mendetail.
verifySessionCookie(sessionCookie, checkCabut) Memverifikasi cookie sesi Firebase. Menampilkan Promise dengan klaim cookie. Menolak promise jika cookie tidak dapat diverifikasi.Jika checkRevoked ditetapkan ke true, pertama-tama memverifikasi apakah pengguna yang sesuai telah dinonaktifkan: Jika ya, error auth/user-disabled akan ditampilkan. Jika tidak, verifikasi apakah sesi yang sesuai dengan cookie sesi telah dicabut. Jika sesi pengguna yang sesuai tidak valid, error auth/session-cookie-revoked akan ditampilkan. Jika tidak ditentukan, pemeriksaan tidak dilakukan.Lihat Verifikasi Cookie Sesi untuk contoh kode dan dokumentasi mendetail

TenantAwareAuth.tenantId

ID tenant yang sesuai dengan instance TenantAwareAuth ini. Semua panggilan ke API pengelolaan pengguna, API pengelolaan penyedia OIDC/SAML, API pembuatan link email, dll. hanya akan diterapkan dalam cakupan tenant ini.

Tanda Tangan:

readonly tenantId: string;

TenantAwareAuth.createSessionCookie()

Membuat cookie sesi Firebase baru dengan opsi yang ditentukan. String JWT yang dibuat dapat ditetapkan sebagai cookie sesi sisi server dengan kebijakan cookie kustom, dan digunakan untuk pengelolaan sesi. JWT cookie sesi akan memiliki klaim payload yang sama dengan token ID yang diberikan.

Lihat Mengelola Cookie Sesi untuk contoh kode dan dokumentasi mendetail.

Tanda Tangan:

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

Parameter

Parameter Jenis Deskripsi
idToken string Token ID Firebase yang akan ditukarkan dengan cookie sesi.
sessionCookieOptions SessionCookieOptions Opsi cookie sesi yang mencakup durasi sesi kustom.

Hasil:

Promise<string>

Janji yang memberikan keberhasilan dengan cookie sesi yang dibuat.

TenantAwareAuth.verifyIdToken()

Memverifikasi token ID Firebase (JWT). Jika token valid, promise akan terpenuhi dengan klaim token yang didekode; jika tidak, janji itu ditolak.

Jika checkRevoked disetel ke benar (true), verifikasi terlebih dahulu apakah pengguna yang sesuai dinonaktifkan. Jika ya, error auth/user-disabled akan ditampilkan. Jika tidak, verifikasi apakah sesi yang sesuai dengan token ID telah dicabut. Jika sesi pengguna yang sesuai tidak valid, error auth/id-token-revoked akan ditampilkan. Jika tidak ditentukan, pemeriksaan tidak diterapkan.

Lihat Memverifikasi Token ID untuk melihat contoh kode dan dokumentasi mendetail.

Tanda Tangan:

verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;

Parameter

Parameter Jenis Deskripsi
idToken string Token ID yang akan diverifikasi.
centangDicabut boolean Apakah akan memeriksa apakah token ID dicabut. Fungsi ini memerlukan permintaan tambahan ke backend Firebase Auth untuk memeriksa waktu tokensValidAfterTime untuk pengguna yang sesuai. Jika tidak ditentukan, pemeriksaan tambahan ini tidak diterapkan.

Hasil:

Promise<DecodedIdToken>

Promise terpenuhi dengan klaim token yang didekode jika token ID valid; jika tidak, janji yang ditolak.

TenantAwareAuth.verifySessionCookie()

Memverifikasi cookie sesi Firebase. Menampilkan Promise dengan klaim cookie. Menolak promise jika cookie tidak dapat diverifikasi.

Jika checkRevoked disetel ke benar (true), pertama-tama verifikasi apakah pengguna yang sesuai dinonaktifkan: Jika ya, error auth/user-disabled akan ditampilkan. Jika tidak, verifikasi apakah sesi yang sesuai dengan cookie sesi telah dicabut. Jika sesi pengguna yang sesuai tidak valid, error auth/session-cookie-revoked akan ditampilkan. Jika tidak ditentukan, pemeriksaan tidak dilakukan.

Lihat Memverifikasi Cookie Sesi untuk melihat contoh kode dan dokumentasi mendetail

Tanda Tangan:

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

Parameter

Parameter Jenis Deskripsi
sessionCookie string Cookie sesi yang akan diverifikasi.
centangDicabut boolean

Hasil:

Promise<DecodedIdToken>

Promise dipenuhi dengan klaim yang didekode cookie sesi jika cookie sesi valid; jika tidak, janji yang ditolak.