我正在为这种特殊情况寻找安全的解决方案:
解决方案#1:使用javascript(jquery)/ simple html表单提交 用户名和&密码到www.domain.com并提到目标为id 特别是iframe。因此,应用程序将加载到iframe中。
我的看法:这可能不安全,因为用户名和密码可能被嗅探,会话可能被劫持。我不知道怎么样,但似乎有可能。 (甚至可以在源中看到隐藏的变量)
解决方案#2:
使用php curl提交用户名&密码并加载网址 iframe中。
(不太清楚如何实现这一点。)
限制:不是php的专家(显然我认为)。代码片段会有所帮助。
还有另一种方法以安全的方式实现相同的技术吗?
我见过facebook对他们的页面选项卡应用程序做了同样的事情。我相信大多数支付框架都是这样做的。但他们是怎么做到的?
答案 0 :(得分:0)
我对CURL没有太多了解。它可能对你的第二个解决方案有帮助(PHP - CURL)
<?php
$ch = curl_init('http://mysite.com/index.php');
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS,"username=xyz&pwd=123");
$result = curl_exec ($ch);
curl_close ($ch);
?>
根据php手册:
curl_exec() returns TRUE on success or FALSE on failure.
However, if the CURLOPT_RETURNTRANSFER option is set, it will return the result on success, FALSE on failure.
因此,您可以在iframe
答案 1 :(得分:0)
我必须将身份验证详细信息发布到www.domain.com/login
根据您的安全问题,我收集到这些身份验证详细信息不是您应用的当前用户的详细信息,而是使用属于您的固定帐户访问domain.com服务所需的一般身份验证详细信息?
如果是这样,我会说被设计破坏。您无法以任何保存方式使用您的登录凭据登录其他服务。
如果domain.com上的该服务是您自己的,您必须考虑使用其他方法来验证客户端,而无需将登录凭据提供给该客户端。
如果是您正在使用的第三方服务 - 请他们提供更好的解决方案。
顺便问一下,这究竟与Facebook有什么关系?