我正在尝试基于SMF用户帐户实现自己的 OpenID 端点。我的代码基于 phpMyOpenID 和一些 SMF 授权代码。
到目前为止它工作正常。我可以使用端点在任何站点上登录/注册。如果我没有在 SMF 上登录,它会要求我登录,如果 SMF 登录成功,它会接受它。
但是,不同的 SMF 登录似乎没有区别。即另一个用户报告说他试图使用站点 X 上的端点,用他的 SMF 帐户登录并登陆我在站点 X 上的用户帐户(我之前在该站点上注册了 OpenID 端点)。
我想我必须以某种方式发送 SMF 登录信息,或者使每个 SMF 登录信息以某种方式唯一。因为我必须做的事情可能微不足道,所以我想我会在这里问——也许还有更多我需要解决的事情。
代码(只是 PHP),如果你想看看,在这里:http: //github.com/albertz/smf-openid-server
或者也许只是描述我需要做些什么来使其对每个 SMF 登录都是唯一的。
我正在计划的另一个项目是多人 C++ 游戏中的 OpenID 客户端。托管商可以选择只允许可以通过 OpenID 进行身份验证的人登录。我也想让它只允许某些人登录。根据 OpenID 登录获取唯一字符串的常用方法是什么?在这种情况下,我想到了类似的东西http://{smf-openid-endpoint}/{smf-user}or http://www.google.de/profiles/{google-user}。获得这样一个字符串的规范方法是什么?
我认为另一个问题可能与我的主要问题有关,这就是为什么我也把它放在这里的原因。
另请参阅相关问题:标识符 URL 是否唯一?有哪些不同的术语?