首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

已知第三方网站的用户名和密码,可以通过 html+js 实现自动登录吗?

  •  
  •   libasten · 38 天前 · 1322 次点击
    这是一个创建于 38 天前的主题,其中的信息可能已经有所发展或是发生改变。
    已有一个成熟的 xx 管理系统。
    每次使用要打开浏览器输入这个系统的登录界面 url,http://xxx/login,然后输入用户名密码,点击“登录”然后进入系统主界面。
    需求是这样,在一个网页上挂一个超链接,指向上述系统的登录页面,这样点击这个超链接,跳转到这个 xx 管理的同时,附带已知的用户名和密码,跳过输入用户名密码的界面,自动进入系统主界面。
    也就是说要想要通过超链接,跳过输入用户名密码的过程,直接进系统。
    这些能通过 html+js 的方式实现吗?
    -----
    此前在其他网站咨询,有网友让试试基于 nodejs 的 puppeteer,我刚才跑了一下,因为我不懂前端开发,这个是不是要求机器上必须装 node 环境和 chrome ?
    能否像 html+js 那样运行在任何一台有浏览器的电脑上?
    18 回复  |  直到 2019-08-10 22:18:54 +08:00
        1
    EridanusSora   38 天前 via Android
    electron
        2
    moxiaonai   38 天前 via Android
    油猴脚本?
        3
    wdv2ly   38 天前 via Android
    可以
        4
    lauix   38 天前
    油猴脚本
        5
    duan602728596   38 天前
    应该做的是系统登录后,接口返回的 cookie 里面带一个 token,进入这个系统时,先判断 cookie 内是否有 token,如果没有,就跳回登陆页。
    或者,跳转到一个中间链接,后端进行登陆,如果登陆成功,再次跳转到该管理系统。

    but,附带已知的用户名和密码是怎么一回事?
        6
    AlphaTr   38 天前 via iPhone
    纯前端的话,如果对方 csrf 没防,自己写个页面提交就行;否则就得如楼上说的,油猴一类的插件解决;话说,为什么会有这样的不安全做法的需求,用户名密码自动填充不行吗
        7
    arrow8899   38 天前
    如果是同一个域名的话是可以的,如果域名不同肯定不行,浏览器禁止了跨域操作,可以用 nginx 做反代,在 nginx 内用 lua 脚本实现登录操作( openresty )。
        8
    rockjike   38 天前
    浏览器存 token, 判断 token 是否有效, 有效直接跳主页, 无效在登录
        9
    iddddg   37 天前
    来个第三方网站登陆地址看看?
        10
    SmiteChow   37 天前
    puppeteer-recorder
        11
    beastk   37 天前 via iPhone
    form 表单自动提交不行吗
        12
    vtwoextb   37 天前
    第一次登录保存 cookie,脚本带着 cookie 登录
        13
    orzorzorzorz   37 天前
    iframe 传值完事
        14
    scofieldpeng   37 天前
    其实如果是你偷懒的话,完全可以用密码管理工具来解决啊,比如大家用的 1password 这些
        15
    libasten   37 天前
    @duan602728596 “附带”两个字可能不准确,我想要表达的意思就是将手边已知的用户名密码用上。
    我也是设想着做一个后端登录模块,然后成功了,跳转到该系统。但是没有思路,我一直是写后端增删改查的,稍微懂点前端内容,能给点详细的指导吗?


    @AlphaTr 确实不安全,但是是内网的办公系统之间的跳转,与互联网物理隔离了,我们领导就不想输入用户名密码,觉得烦,让我们想办法搞个“小工具”,减去输入的动作,您说的“自动填充”,能展开具体说说吗?


    @beastk 能否展开说说 form 自动提交怎么做?跨域能搞定吗?

    一并感谢大家。
        16
    duan602728596   37 天前 via iPhone
    @libasten 你的系统是前后端分离的么?用户凭据是存在 cookie 里的么?
        17
    Cheez   37 天前
    没看懂你想干什么

    你能修改登录页面的话就在里面改 js,接受数据

    不能的话就修改浏览器,用油猴脚本

    不能的话就快捷键 AHK

    不能的话就洗洗睡吧
        18
    jinliming2   36 天前 via iPhone
    @orzorzorzorz 但如果对方设置了 X-Frame-Options: deny 或者 X-Frame-Options: sameorigin,就不能用 iframe 了
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3312 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 32ms · UTC 10:09 · PVG 18:09 · LAX 03:09 · JFK 06:09
    ♥ Do have faith in what you're doing.