1
嗨,我有3個基於Yii的系統,像:Yii具有相同認證角色的多個系統?
sys1.domain.com
sys2.domain.com
sys3.domain.com
現在,這3個系統共享同一個數據庫,同一用戶和其他實體...當然還有3警予AUTH表。
現在我的問題是,配置身份驗證時,我如何分離每個系統的身份驗證規則?
我使用Yii擴展「權限」來管理角色,如果這有任何幫助。
嗨,我有3個基於Yii的系統,像:Yii具有相同認證角色的多個系統?
sys1.domain.com
sys2.domain.com
sys3.domain.com
現在,這3個系統共享同一個數據庫,同一用戶和其他實體...當然還有3警予AUTH表。
現在我的問題是,配置身份驗證時,我如何分離每個系統的身份驗證規則?
我使用Yii擴展「權限」來管理角色,如果這有任何幫助。
由於您有三個系統sys1,sys2和sys3的單個數據庫,並且您希望只有auth table diffent,您可以在每個系統寫配置的配置文件或全局位置添加三個auth表auth_sys3,auth_sys2,auth_sys1編寫php邏輯將auth_sys1,auth_sys2,auth_sys3的別名作爲auth,這樣您就不需要對內部代碼進行任何更改以調用auth。
我試圖做到這一點,但CDbAuthManager使用相同的數據庫作爲用戶模型所在的位置......這個想法會工作......但不知道如何在yii上配置它...任何想法請? – richardalberto
在CDbAuthManager或者在使用/調用auth表相關的東西之前,寫邏輯/條件來爲auth表名設置常量,如if(sys1){const auth = auth_sys1} ect..and insted keep hardcore auth table name用auth const替換它..... –
但我需要爲系統之間的用戶使用相同的數據庫...只有不同的驗證表...如果我將CDbAuthManager中的連接設置爲包含驗證表的連接,而不是用戶將它給我一個錯誤... – richardalberto