Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用REST/JSON/PHP/AJAX跨域安全处理身份验证检查的最佳方法是什么_Php_Jquery_Codeigniter_Authentication_Rest - Fatal编程技术网

使用REST/JSON/PHP/AJAX跨域安全处理身份验证检查的最佳方法是什么

使用REST/JSON/PHP/AJAX跨域安全处理身份验证检查的最佳方法是什么,php,jquery,codeigniter,authentication,rest,Php,Jquery,Codeigniter,Authentication,Rest,我在site.com上使用PHP/CodeIgniter和Tank_Auth库进行身份验证,并通过API和Phil Sturgeon提供的一个非常基本的REST API进行身份验证 现在,当用户在Site1上填写用户名/密码时。它进行如下API调用: http://site2.com/api/index/authenticate?username=jdoe&password=123456 在Site2.com上:索引/身份验证使用tank_auth库将用户名/密码与数据库中存储的内容进行比较 我

我在site.com上使用PHP/CodeIgniter和Tank_Auth库进行身份验证,并通过API和Phil Sturgeon提供的一个非常基本的REST API进行身份验证

现在,当用户在Site1上填写用户名/密码时。它进行如下API调用:

http://site2.com/api/index/authenticate?username=jdoe&password=123456

在Site2.com上:索引/身份验证使用tank_auth库将用户名/密码与数据库中存储的内容进行比较

我的问题:
是否有标准在提交过程中加密密码,然后在另一端解密?或者一个SSL证书就足够了吗?

用一些“salt”创建2的散列,将其传递到查询字符串中,然后通过在第二台服务器上运行相同的散列来确保它匹配

http://site2.com/api/index/authenticate?username=jdoe&password=123456&cs=fds34wsef3ewtdfgw54ty43wg    

一定要保守盐的秘密。。。不太确定在GET中传递这个,尤其是密码-也许你可以传递一个单独的id哈希而不是密码。当然要使用POST,最好是SSL。您越能混淆,加密就越安全这将是

如何创建一个包含一些“salt”的2的散列,将其传递到查询字符串中,然后通过在第二台服务器上运行相同的散列来确保它匹配

http://site2.com/api/index/authenticate?username=jdoe&password=123456&cs=fds34wsef3ewtdfgw54ty43wg    

一定要保守盐的秘密。。。不太确定在GET中传递这个,尤其是密码-也许你可以传递一个单独的id哈希而不是密码。当然要使用POST,最好是SSL。你越能混淆,加密更安全,这将是

我不会认为帖子更安全。这只是一个表面现象,嗯,我不会把它放在GET中,如果他说google analytics正在运行呢?不太可能,但也有可能。我同意POST不会更安全,但它会让它更混乱。。我认为SSL/salted user/pass散列就可以了。我在网上找到的所有东西都在说同样的话。。API调用是通过AJAX处理的,因此用户永远看不到有问题的形成的URL,也就是说,除非他们在监视XHR请求。提升POST而不是GET的原因是GET可能会存储在您的流量通过的每个服务器/路由器日志中,而POST则不是这样,但是使用POST并不真正符合REST标准。。因为您正在接收数据,而不是提交数据。。但在这种情况下,我认为这是值得的。我不认为邮局更安全。这只是一个表面现象,嗯,我不会把它放在GET中,如果他说google analytics正在运行呢?不太可能,但也有可能。我同意POST不会更安全,但它会让它更混乱。。我认为SSL/salted user/pass散列就可以了。我在网上找到的所有东西都在说同样的话。。API调用是通过AJAX处理的,因此用户永远看不到有问题的形成的URL,也就是说,除非他们在监视XHR请求。提升POST而不是GET的原因是GET可能会存储在您的流量通过的每个服务器/路由器日志中,而POST则不是这样,但是使用POST并不真正符合REST标准。。因为您正在接收数据,而不是提交数据。。但在这种情况下,我认为这是值得的。