禁用Yii内置身份验证

禁用Yii内置身份验证,yii,Yii,如何禁用Yii的内置身份验证?(/site/login) 我正在使用扩展进行身份验证,不想让内置登录保持打开状态-这可能是一个安全问题。我认为您可以删除站点控制器中用于登录和注销的操作,即actionLogin()和actionLogout()在mywebapp/protected/controllers/SiteController.php文件和登录视图中,即mywebapp/protected/views/site/login.php,同时删除mywebapp/protected/model

如何禁用Yii的内置身份验证?(/site/login)


我正在使用扩展进行身份验证,不想让内置登录保持打开状态-这可能是一个安全问题。

我认为您可以删除站点控制器中用于登录和注销的操作,即
actionLogin()
actionLogout()
mywebapp/protected/controllers/SiteController.php
文件和登录视图中,即mywebapp/protected/views/site/login.php
同时删除mywebapp/protected/models/LoginForm.php中的模型 此外,我建议您更改mywebapp/protected/components文件夹中的UserIdentity.php,或者将其删除并编写自己的标识类。

如果您想了解编写标识类的技巧,请查看位于的api。

这部分取决于扩展如何管理访问控制,我假设当您说“内置身份验证”时,您指的是Gii生成的文件

如果您删除/注释掉控制器文件中的
accessControl
过滤器以及
accessRules()
方法以获得更好的度量,那么应该会禁用生成的访问控制/身份验证


假设您的扩展不需要它们,您可以删除/views/site/login.php和/components/UserIdentity.php文件以及前面提到的其他相关文件。

另外,按照@ldg的建议进行更改