2011-10-10 98 views
1

如何禁用Yii的身份驗證? (/ site/login)。禁用Yii內置身份驗證

我正在使用擴展來進行身份驗證,並且不想讓內置登錄處於打開狀態 - 這可能是一個安全問題。

回答

2

我想你可以刪除在站點控制器的動作進行登錄和註銷,即actionLogin()actionLogout()mywebapp /保護/控制器內部/ SiteController.php文件
和登錄的觀點,即mywebapp/protected/views/site/login.php
並且還刪除了模型,即mywebapp/protected/models/LoginForm.php

此外,我建議您更改mywebapp/protected/components文件夾中的UserIdentity.php,或將其刪除並編寫您自己的標識類。
如果您需要任何提示來編寫您的身份類,請查看this link的api。

+0

另外按照@ldg的建議進行更改 –

1

部分取決於您的擴展如何管理訪問控制,我假設您說「內置身份驗證」時,您指的是Gii生成的文件。

如果您在控制器文件和accessRules()方法中刪除/註釋掉accessControl過濾器以獲得更好的測量結果,那麼應該幾乎禁用生成的訪問控制/認證。

假設您的擴展程序不需要它們,您可以移除/views/site/login.php和/components/UserIdentity.php文件以及其他相關文件,如前所述。