2

目前正在尝试开发基于browserid的登录/注册系统。

我有一台本地 IP 为 192.168.0.106 并且在“http://localhost”上运行的服务器

从服务器计算机上的浏览器通过发送与观众的验证时,该过程完美运行:“localhost”

问题是当我尝试从同一本地网络上的另一台机器上识别时,该地址不是本地主机,而是类似 192.168.0.101 :验证过程返回“受众不匹配”失败,因为客户端连接到 192.168.0.106(服务器的本地地址)而不是 localhost

有什么想法或建议吗?

4

1 回答 1

2

验证者的受众匹配检查是为了确保您获得的断言是新鲜的,并且没有从其他站点获得。

在“生产”中,您通常会知道客户端将连接到您的站点的地址,并将其硬编码到您对验证者的调用中。

在开发中,我使用了 2 个选项: 1. 从我正在测试的客户端添加到 /etc/hosts 文件的显式映射,因此所有客户端都使用相同的地址 2. 使用“主机”标头中的值作为受众价值(这可能完全不安全,具体取决于您使用的中间件/中介,因此只能在开发中完成)

于 2012-06-05T17:48:33.847 回答