RESTAPI和API密钥
请有人告诉我如何使用api密钥,它有什么好处 关于这一点,我搜索了很多,得到了不同的、相互矛盾的答案。有人说,API密钥是保密的,它永远不会作为通信的一部分发送,而其他人则在不加密的情况下将其发送到客户端。客户的签名是什么?他如何生成它,服务器可以用它做什么?为什么要用api密钥蒙骗而不是使用好的旧用户名密码对?有人能详细解释一下客户端(Android设备)和服务器(php api)之间的通信情况吗 如果有任何好的教程、代码示例和初学者解释,我将不胜感激。看看这个RESTAPI和API密钥,api,authentication,Api,Authentication,请有人告诉我如何使用api密钥,它有什么好处 关于这一点,我搜索了很多,得到了不同的、相互矛盾的答案。有人说,API密钥是保密的,它永远不会作为通信的一部分发送,而其他人则在不加密的情况下将其发送到客户端。客户的签名是什么?他如何生成它,服务器可以用它做什么?为什么要用api密钥蒙骗而不是使用好的旧用户名密码对?有人能详细解释一下客户端(Android设备)和服务器(php api)之间的通信情况吗 如果有任何好的教程、代码示例和初学者解释,我将不胜感激。看看这个 研究一个关于Oauth的l
研究一个关于Oauth的lil,API认证是一个复杂的话题。下面我将尽力解释问题的一部分:为什么API密钥比用户名/密码更好 我们开始吧 在构建(或使用API)时,开发人员经常问的一个问题是“为什么此服务需要API密钥而不是我的用户名和密码?”这是一个很好的问题 首先,让我们谈谈API键通常是什么 API键通常是随机生成的字母和数字字符串。此外,API密钥通常分为两部分:ID和机密。例如,如果您使用的是web服务,您可能有两个API键,如下所示:
- API_KEY_ID=kzjbOg3iOm4k4MRpBss76yxlZSPJtoOPaqxirsfX
- API_KEY_SECRET=A8FnQWM7RpgGjU3sZjOUgMIq5t8mvAhQES9iE30S
- 即使API是通过SSL提供的,也存在许多可能危害您的凭据的漏洞。如果您使用用户名/密码登录API服务,并且攻击者获取了这些凭据,则他们可以访问您的整个帐户
- 如果您使用用户名/密码对API进行身份验证,那么如果您的一个服务器/API客户端受到破坏,会发生什么情况?这意味着您需要重置用户名/密码,并为使用它的所有客户端更新它。这可能非常耗时,而且成本高昂
- 通过使用用户名/密码,您通常将自己限制在某种类型的API使用上。通过使用API密钥对,您可以将API凭据分离到不同的访问级别(可能在密钥对上只能访问某些数据,而另一个可以访问其他类型的数据)
- 如果API密钥对泄漏,您通常可以创建/循环API密钥对,而无需更新您拥有的每个客户端
- 您可以使用API密钥对为API提供子帐户功能
希望有帮助 你到底想做什么?有一个Android应用程序可以与API进行通信。clinet可以发送GET和PUT请求来请求和修改服务器上的资源。我想对用户进行身份验证,看看他们是否已登录,以及他们是否有编辑资源的权限