我正在尝试在 Symfony2 中使用 kerberos 对用户进行身份验证,但我在途中有点迷失。
当用户通过身份验证时,Apache 服务器返回$ _SERVER ['REMOTE_USER']
变量,给我他的用户名。我可以恢复这个值:
$request = Request::createFromGlobals();
$user = $request->server->get('REMOTE_USER');
但是如何告诉 Symfony 仅使用这个值来验证用户呢?不需要密码。
我在创建一个之间犹豫不决自定义身份验证提供商或创建一个定制使用提供商.
请问最好的方法是什么?
向安全防火墙添加了基于 REMOTE_USER 的侦听器
多个 Apache 安全模块(auth_kerb、auth_cas 等)通过名为 REMOTE_USER 的环境变量提供用户名。因此,Symfony 2.6 将包含一个基于此变量的新身份验证侦听器。
要在您的应用程序中使用它,只需在安全配置中定义新的remote_user类型的防火墙即可:
# app/config/security.yml
security:
firewalls:
secured_area:
pattern: ^/
remote_user:
provider: your_user_provider
Source: http://symfony.com/blog/new-in-symfony-2-6-security-component-improvements
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)