用户数据库使用Steam OpenID


User database using Steam OpenID

我正在尝试使用steam openid创建一个用户管理系统,但我不确定表应该是什么样子。我习惯使用包含常用userid、用户名和密码的基本用户表。然后使用cookie确认用户是否登录。我不完全确定如何使用steamopenID做到这一点。

我已经完成了登录和验证,但还没有想出有一个工作数据库与它。成功登录后,它返回Users SteamID。我可以用它做什么来创建一个安全的用户系统?

我正在考虑将用户重定向到一个新的页面,如果steamid本身不存在,他们可以注册一个用户名,但是我如何验证用户是否登录了我们不使用steamid?

本质上,它与任何其他登录系统一样。

你只是不负责登录的东西。但是是的,就像你说的。当你验证了ID后,检查ID是否存在于你自己的用户数据库中,如果不存在,处理它并将它们重定向到"Create Profile"登录

您有两个身份验证提供者,一个来自您自己的站点,另一个来自steam。对于您接受openid授权的帐户,您需要将它们的openid身份验证存储在它们旁边,这样当有人通过openid提供者登录到您的站点时,您就可以发现这是您站点的哪个实际用户。

你的会话总是连接到你的站点的user-id:

    [login] 
       |
[authentication]
       |
       '-----+--> [openid auth] ---> [steam id] --'
             |                                    |
             '--> [site user auth] ------> [site user id]
                                                  |
                                              [session]