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.