【问题标题】:store username and password in DB then use to access different service将用户名和密码存储在数据库中,然后用于访问不同的服务
【发布时间】:2012-09-07 09:01:08
【问题描述】:

我正在构建一个允许用户登录的 Web 服务,然后它将从另一个站点(我不拥有该站点)下载所有时间表数据。我只想让他们输入一次用户名和密码来登录我的服务,然后再次使用它来登录下一个。我需要根据那里的用户详细信息存储下载的数据,但我知道出于安全原因我必须在数据库中对密码进行哈希处理,所以我如何使用它来登录第二个服务。我虽然想取消散列,但这首先破坏了散列的全部意义。

我想这样做的原因是,然后可以将时间表下载到一个 android 应用程序,以便在没有数据连接时可以查看它。

任何想法都会有所帮助。

【问题讨论】:

    标签: database web-services passwords


    【解决方案1】:

    如果这些服务在您登录后给您一个“令牌”,您可以将其存储在您的数据库中以再次访问这些服务,因此当用户登录您的网络服务时,在散列他们的信息之前,您可以使用它来登录其他服务,然后存储他们的“令牌”

    这种方法只有在他们在登录后给你一个令牌之类的东西时才有效,如果他们没有,我认为你需要按原样存储登录信息,并且至少在 base64 上编码,这不是那么安全但不是那么安全很明显

    其他想法可能是创建一个仅包含登录信息的单独数据库,并且只能通过他们的登录名(散列)访问,但这意味着您需要在数据库上创建一个用户并仅授予对该特定数据库的访问权限,请阅读-仅

    我确定还有更多的解决方案,但希望它可以有所帮助

    【讨论】:

      猜你喜欢
      • 2017-12-02
      • 1970-01-01
      • 1970-01-01
      • 2010-09-23
      • 1970-01-01
      • 2011-08-28
      • 1970-01-01
      • 1970-01-01
      • 2022-07-04
      相关资源
      最近更新 更多