在API中获取基本身份验证密码的最佳方法是什么?为什么?

时间:2010-03-05 07:15:07

标签: api authentication

在这里创建一个API,我希望人们能够制作简单的移动应用程序,这些应用程序可以获取我的用户的用户名/密码,并且他们可以与我的服务器进行交互。所以我需要一个基本身份验证(OAuth和其他东西也将得到支持,主要是针对不同的用例)。现在我有一本书的例子说我可以在帖子中收到(未加密的)密码并查看成功的API我看到twitters在他们的HTTP请求的标题上获得了未加密的密码。

另一个选择是获得md5或SHA1哈希,但没有秘密盐,这似乎是徒劳的练习。我询问了几个人,每个人都有不同的(强烈的和启发式的)观点,所以.......

在API中获取基本身份验证密码的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

呃,将用户的密码发给其他应用。或者通过您的API。或永远。它们应该单向存储(即散列)。

但我不确定这是不是你在说什么。您谈论OAuth(可以用来生成令牌,让API访问系统的各个组件,因为用户说它是可能的)。

例如,假设您希望允许API用户查询某些用户属性(例如,他们的位置),然后您通过OAuth为此访问创建一个令牌,API调用者就会传递该令牌。至少,这是我对模型的理解。显然,您应该查看OAuths webside,并找到适合您所用语言的实现。