簡體   English   中英

當每個租戶在laravel中有多個用戶時,如何對多租戶網站中的用戶進行身份驗證

[英]How to authenticate users in multi-tenant website when each tenant have multiple users in laravel

注意:我昨天發布了相同的問題,但有不同的解釋,現在我正在對其進行完全編輯,並嘗試從不同角度解釋我的觀點。

我正在嘗試為多租戶站點實施身份驗證過程,在該站點中我們將注冊不同的公司,例如:公司1,公司2等,每個公司將有多個用戶,例如公司1將擁有User1,User2等。

在這里,由於某些原因,我為每個公司使用單獨的數據庫。 我希望用戶訪問該站點並僅對自己進行身份驗證,而無需使用任何單獨的域。 每個公司都有一個不同的域(例如company1.mysite.com),但用戶登錄后將被重定向到其各自的域。

因此,我的問題是,在登錄時如何從每個用戶的各自數據庫中對它們進行身份驗證?

謝謝

最終,您根本無法ping通所有提取用戶並希望進行匹配的數據庫。 但是,我建議以下內容:

一個特殊的映射數據庫,用於保存用戶及其各自的公司數據庫。 為了提高安全性,您可以將電子郵件當作密碼,將加密的版本與預定義的鹽一起存儲,並且當用戶輸入電子郵件進行登錄時,將使用兩個加密的電子郵件地址針對映射數據庫進行查找。 您需要注意保持此數據庫同步良好。 如果您的數據庫位於同一服務器上,則建議插入和更新觸發器。

在成功通過其公司數據庫進行身份驗證時,您需要將數據庫名稱存儲在用戶會話中,以防止正在進行的針對映射數據庫的查找。 成功驗證后,您也可以使用子域映射到數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM