>  기사  >  백엔드 개발  >  现在有没有什么好的方案可以实现web网站免密码登录?

现在有没有什么好的方案可以实现web网站免密码登录?

WBOY
WBOY원래의
2016-06-06 20:14:541921검색

现在有没有什么好的方案可以实现web网站免密码登录?

背景:公司运营人员多,和第三方合作的也比较多,很多运营人员都有第三方合作网站的账号密码,但是如果运营人员离职,这个密码可能遗失或者泄露。所以需要一个账户管理系统统一管理这些第三方的账号。同时,直接提供账号和密码给运营人员使用的方式也不好,可能会泄露或者密码被修改等等麻烦问题。

所以,现在希望这个系统统一管理用户账号和密码,当有同事需要使用账号的时候,直接由系统提供一个url链接给他,这个url地址里面是加密的账号和密码以及要登录的网站信息,他通过点击这个url链接直接就可以登录到第三方网站。

举例:运营人员A要登录友盟查看数据,我不用直接告诉他我们在友盟的账号和密码,只需要在账号管理系统里面生成一个url提供给他,他点击这个链接就可以登录友盟网站。类似这样的功能,有什么好的实现方案么?或者有现成的解决方案么?商业的也可以考虑。

说明:现在网上找了一下,貌似都是以浏览器扩展的方式实现?这个是浏览器扩展把生成的url链接里面的密码解析出来自动填充到登录表单里面的么?比如:https://lastpass.com/

各位有没有什么好的建议或者方案? 非常感谢!

回复内容:

现在有没有什么好的方案可以实现web网站免密码登录?

背景:公司运营人员多,和第三方合作的也比较多,很多运营人员都有第三方合作网站的账号密码,但是如果运营人员离职,这个密码可能遗失或者泄露。所以需要一个账户管理系统统一管理这些第三方的账号。同时,直接提供账号和密码给运营人员使用的方式也不好,可能会泄露或者密码被修改等等麻烦问题。

所以,现在希望这个系统统一管理用户账号和密码,当有同事需要使用账号的时候,直接由系统提供一个url链接给他,这个url地址里面是加密的账号和密码以及要登录的网站信息,他通过点击这个url链接直接就可以登录到第三方网站。

举例:运营人员A要登录友盟查看数据,我不用直接告诉他我们在友盟的账号和密码,只需要在账号管理系统里面生成一个url提供给他,他点击这个链接就可以登录友盟网站。类似这样的功能,有什么好的实现方案么?或者有现成的解决方案么?商业的也可以考虑。

说明:现在网上找了一下,貌似都是以浏览器扩展的方式实现?这个是浏览器扩展把生成的url链接里面的密码解析出来自动填充到登录表单里面的么?比如:https://lastpass.com/

各位有没有什么好的建议或者方案? 非常感谢!

如果是和第三方深度合作的话可以要求他们提供令牌支持。你的服务器保存用户名和密码,通过第三方api获取一个token,然后你们的职员可以用这个token去第三方而不必再次输入用户名密码了,你觉得呢?

lastpass 和你说的不是一个东西,lastpass 做的就是记住了你的用户名和密码,然后帮你提交表单。
你需要的是不需要用户名和密码也授权查看一些数据,如果第三方网站支持 token 那么就很好做了,如果不支持那你想做也做不了。

我感觉挺简单的啊。
你可以存起来一个随机字符串,然后用自己的加密方法将其和密码配合进行加密,将加密后的字符串传给用户就行。

<code>$id = $user['id'];
$password = $user['password'];
$rand = "";//根据自己的方法生成一个随机字符串,并把它存起来
$token = md5(sha1($id.$rand).$password);//将其进行一定方式的加密,只做例子,可以自己设定</code>

然后将这个$id和$token发送给用户,如果验证时匹配,登录成功。
你还可以设置一个过期时间,一起存起来。

  1. 最佳实践:按照 @incNick 说的做,和友盟等需要用户名密码的网站谈合作,让他们给你一个登录的API,你们就可以招程序员去开发统一认证系统了

  2. 一个不是办法的办法,利用QQ客户端保存“密码”。国内的账号系统多数都可以直接或者间接绑定到QQ账号上。直接:现在有没有什么好的方案可以实现web网站免密码登录?间接: 百度站长下面要解决的就是多个运营人员如何登录QQ的问题了。共享二维码怎么样?

  3. 给运营人员的电脑配置代理,利用“中间人攻击”的方法给浏览器设置Cookie。 运营人员通过代理试图登录网站时,代理程序拦截这个HTTP请求,伪装成普通用户登录第三方网站获取Cookie,然后将登录成功的响应返回给运营人员的浏览器。

1password,不谢

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.