gpt4 book ai didi

mysql - 在 MySQL 中存储 Twitter OAuth

转载 作者:行者123 更新时间:2023-11-30 21:23:19 24 4
gpt4 key购买 nike

我将要在我的网站上添加一项功能,用于将内容发布到用户的 Twitter 帐户。我读到存储“OAuth” token 比存储用户名和密码更好(这是有道理的)。

我应该在我的 MySQL 数据库中存储什么? token 、 secret 和用户名?还是只是 token ?

您会使用什么数据类型?它们有多大?

谢谢!

最佳答案

它们不是很大(可能是 15 或 20 个字符,记不清了),并且是字符串。注意:这可能会改变。 OAuth 规范中没有任何内容描述如何生成 token 和 secret ,也没有描述它们的外观。我希望它们始终是字符串,但我可能想让该列比目前为应急所必需的大一点。

如果您将它们存储在数据库中,您需要一些其他方式来验证用户,以便您知道要提取和使用谁的 token ,这样它们就不会被恶意使用。如果您已经拥有它并且它正在运行,那么这是有道理的,否则您可能需要重新考虑它。

另一种方法是将他们的 token 存储在 cookie 中,其缺点是(如果您不加密或使用 SSL)他们在网络上以明文形式传输,如果他们更换计算机、浏览器,或删除他们的 cookie,您必须让他们再次通过整个 OAuth 流程。

对于没有其他身份验证的网站,我会将它们加密并存储在 cookie 中。如果您已经让他们登录,则将 token 和密码与登录相关联并将它们存储在数据库中。

还有其他方法。如果您不想使用加密,您可以使用随机生成的 ID(例如 cookie 中的 GUID/UUID)来指向数据库中带有 token 的记录。总而言之,这取决于您希望您的应用程序从用户的角度表现如何。

确保您也处理了用户取消授权您的应用程序的情况。

关于mysql - 在 MySQL 中存储 Twitter OAuth,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1651603/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com