1

我正在创建一个应用程序,用户可以使用他们的移动设备从菜单中订购项目。要求是用户不需要帐户(用户名或密码)即可访问服务。用户将通过他们的 ip 和 mac 地址进行身份验证。

所以我的问题是如何将这种类型的身份验证构建到 symfony 中?请记住,我仍然希望能够使用常规防火墙来保护 url,例如:

 firewalls:
    client_area:
        pattern:    ^/client

我已经在谷歌上搜索了这个问题的答案,但无济于事。

4

2 回答 2

0

对于使用 IP,您可以使用内置的voters。该示例用于黑名单,但您可以将其调整为白名单。不需要进一步的身份验证,只需一个有效的(指定的)IP。

该列表必须在配置中指定,但您也可以动态生成该列表,从文件中加载它,从表中读取它,...

如果你想同时使用 IP 和 MAC 地址,你必须自己做一些事情。据我所知,Symfony2 中没有内置设置。

于 2013-08-04T14:30:47.917 回答
0

您可以通过编写新的身份验证提供程序来实现新的安全性。

查看 symfony.com 上的这个食谱条目。这是一个关于创建自己的身份验证机制的非常有用的线程:

如何创建自定义身份验证提供程序

在该示例中,您会看到他们使用 HTTP X-WSSE 标头进行身份验证。您可以编写自己的提供商,通过 IP 或/和 mac 地址进行身份验证。

于 2013-08-04T16:44:45.463 回答