TenantAwareAuth class

Antarmuka Auth yang sadar penyewa digunakan untuk mengelola pengguna, mengonfigurasi penyedia SAML/OIDC, membuat tautan email untuk menyetel ulang kata sandi, verifikasi email, dll untuk penyewa tertentu.

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

Setiap penyewa berisi penyedia identitas, pengaturan, dan kumpulan penggunanya sendiri. Menggunakan TenantAwareAuth , pengguna untuk penyewa tertentu dan konfigurasi OIDC/SAML yang sesuai juga dapat dikelola, token ID untuk pengguna yang masuk ke penyewa tertentu dapat diverifikasi, dan tautan tindakan email juga dapat dibuat untuk pengguna yang termasuk dalam penyewa.

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

Tanda tangan:

export declare class TenantAwareAuth extends BaseAuth 

Perluasan: BaseAuth

Properti

Properti Pengubah Jenis Keterangan
penyewaId rangkaian Pengidentifikasi penyewa yang sesuai dengan instans TenantAwareAuth ini. Semua panggilan ke API manajemen pengguna, API manajemen penyedia OIDC/SAML, API pembuatan tautan email, dll hanya akan diterapkan dalam cakupan penyewa ini.

Metode

metode Pengubah Keterangan
buatSessionCookie(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 khusus, dan digunakan untuk manajemen sesi. Cookie sesi JWT akan memiliki klaim payload yang sama dengan token ID yang diberikan. Lihat Mengelola Cookie Sesi untuk contoh kode dan dokumentasi terperinci.
verifikasiIdToken(idToken, periksaDibatalkan) Memverifikasi token ID Firebase (JWT). Jika token tersebut valid, janji tersebut dipenuhi dengan klaim token yang didekodekan; jika tidak, janji itu ditolak. Jika checkRevoked disetel ke true, verifikasi terlebih dahulu apakah pengguna terkait dinonaktifkan. Jika ya, kesalahan auth/user-disabled akan terjadi. Jika tidak, verifikasi apakah sesi yang terkait dengan token ID telah dicabut. Jika sesi pengguna terkait tidak valid, kesalahan auth/id-token-revoked akan muncul. Jika tidak ditentukan maka cek tidak diterapkan. Lihat Verifikasi Token ID untuk contoh kode dan dokumentasi terperinci.
verifikasiSessionCookie(sessionCookie, checkRevoked) Memverifikasi cookie sesi Firebase. Mengembalikan Janji dengan klaim cookie. Menolak janji jika cookie tidak dapat diverifikasi. Jika checkRevoked disetel ke true, pertama-tama verifikasi apakah pengguna terkait dinonaktifkan: Jika ya, kesalahan auth/user-disabled akan muncul. Jika tidak, verifikasi apakah sesi yang terkait dengan cookie sesi telah dicabut. Jika sesi pengguna terkait tidak valid, kesalahan auth/session-cookie-revoked akan muncul. Jika tidak ditentukan, pemeriksaan tidak dilakukan. Lihat Verifikasi Cookie Sesi untuk contoh kode dan dokumentasi terperinci

PenyewaAwareAuth.tenantId

Pengidentifikasi penyewa yang sesuai dengan instans TenantAwareAuth ini. Semua panggilan ke API manajemen pengguna, API manajemen penyedia OIDC/SAML, API pembuatan tautan email, dll hanya akan diterapkan dalam cakupan penyewa ini.

Tanda tangan:

readonly tenantId: string;

PenyewaAwareAuth.createSessionCookie()

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

Lihat Mengelola Cookie Sesi untuk contoh kode dan dokumentasi terperinci.

Tanda tangan:

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

Parameter

Parameter Jenis Keterangan
idToken rangkaian Token ID Firebase untuk ditukarkan dengan cookie sesi.
sesiCookieOptions Opsi Kue Sesi Opsi cookie sesi yang mencakup durasi sesi khusus.

Pengembalian:

Janji<string>

Sebuah janji yang menyelesaikan kesuksesan dengan cookie sesi yang dibuat.

PenyewaAwareAuth.verifyIdToken()

Memverifikasi token ID Firebase (JWT). Jika token tersebut valid, janji tersebut dipenuhi dengan klaim token yang didekodekan; jika tidak, janji itu ditolak.

Jika checkRevoked disetel ke true, verifikasi terlebih dahulu apakah pengguna terkait dinonaktifkan. Jika ya, kesalahan auth/user-disabled akan terjadi. Jika tidak, verifikasi apakah sesi yang terkait dengan token ID telah dicabut. Jika sesi pengguna terkait tidak valid, kesalahan auth/id-token-revoked akan terjadi. Jika tidak ditentukan maka cek tidak diterapkan.

Lihat Verifikasi Token ID untuk contoh kode dan dokumentasi terperinci.

Tanda tangan:

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

Parameter

Parameter Jenis Keterangan
idToken rangkaian Token ID untuk diverifikasi.
checkDicabut boolean Apakah akan memeriksa apakah token ID telah dicabut. Hal ini memerlukan permintaan tambahan ke backend Firebase Auth untuk memeriksa waktu tokensValidAfterTime untuk pengguna terkait. Jika tidak ditentukan, pemeriksaan tambahan ini tidak diterapkan.

Pengembalian:

Janji< DecodedIdToken >

Janji yang dipenuhi dengan klaim token yang didekodekan jika token ID valid; jika tidak, janji yang ditolak.

PenyewaAwareAuth.verifySessionCookie()

Memverifikasi cookie sesi Firebase. Mengembalikan Janji dengan klaim cookie. Menolak janji jika cookie tidak dapat diverifikasi.

Jika checkRevoked disetel ke true, pertama-tama verifikasi apakah pengguna terkait dinonaktifkan: Jika ya, kesalahan auth/user-disabled akan muncul. Jika tidak, verifikasi apakah sesi yang terkait dengan cookie sesi telah dicabut. Jika sesi pengguna terkait tidak valid, kesalahan auth/session-cookie-revoked akan muncul. Jika tidak ditentukan, pemeriksaan tidak dilakukan.

Lihat Verifikasi Cookie Sesi untuk contoh kode dan dokumentasi terperinci

Tanda tangan:

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

Parameter

Parameter Jenis Keterangan
sesiCookie rangkaian Cookie sesi untuk diverifikasi.
checkDicabut boolean

Pengembalian:

Janji< DecodedIdToken >

Janji yang dipenuhi dengan klaim yang didekodekan cookie sesi jika cookie sesi valid; jika tidak, janji yang ditolak.