Php web api中的简单授权

Php web api中的简单授权,php,api,authorization,restful-authentication,Php,Api,Authorization,Restful Authentication,我想做一个漂亮干净的api;我正在创建一个网站,我想提供移动应用程序使用我网站的web API的能力 我不想使用oAuth,因为移动和嵌入式应用程序面临最大的障碍,因为它们可能无法启动和/或控制web浏览器。也有点复杂 我知道,HTTP基本授权是不安全的,但它很简单。。。我想在我的api中使用它。 我有一些用户在mysql数据库中登录和密码(md5编码),但是如何在这个HTTP基本授权中使用这些数据?PHP手册中有一个示例 在谷歌上搜索你的问题“PHP HTTP basic”,你就在这里 它只

我想做一个漂亮干净的api;我正在创建一个网站,我想提供移动应用程序使用我网站的web API的能力

我不想使用oAuth,因为移动和嵌入式应用程序面临最大的障碍,因为它们可能无法启动和/或控制web浏览器。也有点复杂

我知道,HTTP基本授权是不安全的,但它很简单。。。我想在我的api中使用它。
我有一些用户在mysql数据库中登录和密码(md5编码),但是如何在这个HTTP基本授权中使用这些数据?

PHP手册中有一个示例
在谷歌上搜索你的问题“PHP HTTP basic”,你就在这里

它只需发送几个HTTP头即可


还请注意,摘要授权被认为更安全,但与客户端的兼容性较差。

为数据库中的每个用户生成一个随机唯一字符串,并使该字符串可供最终用户使用。当他们访问api时,要求他们输入您提供的唯一字符串——这是他们的“密钥”。每次用户应用程序访问api时,他们都会传递一个密钥,该密钥直接链接到一个唯一的帐户,这就是您授权他们的方式。它本质上是用户名和密码的一体

虽然上面的示例是通用的,但您也应该考虑安全性之类的因素——例如,如果可能,从移动设备传递设备ID,并在身份验证期间使用该ID,或者在API密钥生成过程中使用他们当前的密码散列,因此如果他们更改密码,密钥将停止工作,并且他们必须获得一个新的密钥——这样,如果他们的密钥丢失,他们可以控制访问

它不必复杂,只要安全就行