在大多数API上,例如facebook和bebo使用那里的API,你必须得到一个密钥和秘密,我只是想知道做这样一个系统的一些好方法是什么。我将使用PHP / MysQL。
当应用程序发送API请求时,如何基本验证用户密钥和密码是否正常?我正在考虑将它们存储在mysql中,无论如何我都会将它们存储在那里,但我想知道是否有其他方法更适合验证过程,而不是在每次点击API时都使用数据库?
答案 0 :(得分:1)
如果密钥是他们正在使用的域的加密形式和密码,则无需点击数据库来验证它们。
if ($key != encrypt($domain . $secret))
// die
答案 1 :(得分:0)
在memcached中缓存身份验证信息,您将保存数据库中的读数。
答案 2 :(得分:0)
你需要某个地方来保持密钥/秘密组合。除非你使用像memcached这样的缓存,否则我认为不可能没有数据库命中。
关于它们的密钥/秘密实现,有几个地方使用公钥/私钥组合。您使用私钥加密它们的数据,然后将其发送到使用公钥解密的位置(反之亦然)。我认为openssl包具有此功能。
http://php.net/manual/en/book.openssl.php
-d