2011-10-10 38 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文件以及其他相关文件,如前所述。