【问题标题】:Securely storing user credential tokens安全地存储用户凭证令牌
【发布时间】:2013-05-17 00:30:56
【问题描述】:

我正在编写一个服务,用户使用 OAuth 登录另一个服务。我的服务的重点是在用户未登录时为他们做一些维护工作。因此,我需要保存他们的 OAuth 令牌,以便在用户未登录时可以使用它。如果用户已登录在中,我可以使用用户的密码作为加密密钥(每次都要求;用户的密码仅存储为哈希)并存储加密的令牌。

但事实上,当用户未登录时,我需要 Web 服务能够使用这些令牌。所以,我正在考虑将它们加密存储在数据库 (AES) 中,然后是解密它们的密钥要么需要硬编码到应用程序中,要么从其他东西(用户名/电子邮件/哈希密码的组合)派生,尽管该派生的逻辑仍然在源代码中。

鉴于这将是用 PHP 编写的,无法编译以隐藏密钥,我最好的选择是什么来使其尽可能安全?我的源代码中始终包含数据库凭据,这意味着如果有人可以获取源 coe,他们可能会弄乱该数据库,但是手头有 OAuth 令牌意味着入侵者也可能会弄乱其他站点上的用户数据,如果我的被​​入侵了,我想尽可能多地向我的用户保证不会发生这种情况。

【问题讨论】:

    标签: php security oauth


    【解决方案1】:

    首先使用 OAuth 令牌的部分原因是它们可以被撤销。像保护任何其他用户特定数据一样保护令牌,这就足够了。如果您有理由相信您的用户数据在未来的任何特定时间点被泄露,请通知您的用户并要求他们撤销令牌。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-11
      • 1970-01-01
      • 2019-02-20
      • 2021-05-02
      • 1970-01-01
      • 2014-09-19
      • 1970-01-01
      • 2019-06-13
      相关资源
      最近更新 更多