自动填充用户名和密码

问题描述:

我希望能够在点击网站上的一个链接,会自动填写用户名和密码进入网站B.自动填充用户名和密码

任何人可以提供我一些想法如何使用JavaScript或PHP来做到这一点?

非常感谢!

+2

我将提及复制密码字段的潜在安全风险,特别是如果您的解决方案涉及将它作为url参数传递。你确定网站A的用户凭据吗?您的安全策略是否指定密码传输?另一种解决方案可能是传递凭证令牌而不是用户名和密码。 – Russell 2010-06-23 04:20:05

+0

您是否[单一登录](http://en.wikipedia.org/wiki/Single_sign-on)? – Gordon 2010-06-23 07:12:25

我不确定你的问题是什么意思。你有没有试过看OpenSocialOpenID

+0

感谢您的回应Nican。我不知道,这将帮助我:( 我有一个客户谁只有一个登录到网站,他们订阅。 所有员工使用这种登录一次访问该网站。 我需要能够从他们的网站(网站A)链接并在网站B(他们订阅的网站)上登录字段,当他们登陆该页面时自动填写。 可能吗? – matchstic 2010-06-23 04:00:11

+0

@matchstic,nope,impossible。 – 2010-06-23 04:33:07

如果你能够编辑网站B,你可以尝试添加一个包含用户名和密码的查询字符串链接,并在网站B从url获取它们并回显到输入字段的值属性中。

#Sample url on website A: 
http://www.example.com/?username=admin&password=1234 

#Simple sample form on website B: 
<form> 
    <input type="text" value="<?php echo $_GET['username']; ?>" /> 
    <input type="password" value="<?php echo $_GET['password']; ?>" /> 
    <input type="submit" /> 
</form> 
+0

+ 1但是,应在传递之前/之后加密/解密用户名,密码。 – Kai 2010-06-23 05:40:25

正如别人之前提到的最简洁的解决方案是使用凭证令牌。

  1. 用户登录在站点A
  2. 站点A插入在站点B的数据库中的证书令牌 - 通过直接站点B的数据库接触或通过调用一个URL或在背景的API。此凭证令牌将包含一个唯一的令牌标识符(通常是一个长字符串,可能从某些东西获得)以及站点B上用户的用户名和密码。
  3. 当用户在站点A上显示站点B的链接时全部以&结束令牌= 123456789abcdef0
  4. 当用户到达站点B并且URL包含所述的令牌时,会从站点B的数据库中的令牌中提取用户名和密码,并在登录框中预填充用户名和密码。

根据自己的喜好调整。