当我使用来自Web应用程序的公共API时,我会在客户端内部以字符串形式提供API密钥。
现在假设我为内部消费设计了一个REST API。让我们说一个移动应用程序eshop。 eshop的用户使用用户名和密码登录。
这是否意味着我的客户不会使用API密钥身份验证,而是使用用户名和密码?我还在REST API中看到了很多OAuth2,这看起来像是面向密钥的身份验证。它们只是不同的类型,都是有效的吗? API密钥通常是为开发人员发布的,可以与客户合作吗?
答案 0 :(得分:1)
它可以工作,它也是你在很多情况下会看到的。您使用用户名和密码(POST请求)登录,服务器返回一个身份验证令牌,您通过响应头存储在Cookie中。当需要用户特定信息时,您将使用该令牌进行身份验证,类似于OAuth2和dev密钥的工作方式。
答案 1 :(得分:0)
根据我对你问题的理解 -
有关如何验证api的方法或方法。一些常见的是通过Oauth,Token身份验证和Basic身份验证(用户名和密码)。
您可以在此处阅读一些概念 - http://www.django-rest-framework.org/api-guide/authentication/
希望这有帮助