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.