gpt4 book ai didi

javascript - 身份验证后防止 Captive Portal 自动关闭 (Android)

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:30:12 24 4
gpt4 key购买 nike

所以简单的想法是我们有一个 RADIUS 服务器设置,允许用户通过用户凭据对我们的 Ruckus Controller 进行身份验证。在身份验证时,用户应该被重定向到允许他们管理 MAC 身份验证设备的页面。

到目前为止,在我们测试过的所有内容中,包括“旧版”Android 设备,这似乎都不是问题,一切都按预期运行。然而,对于 Lollipop (5.0+) 版本的 Android,强制门户已经发生了相当大的变化,其中一部分更改是在您加入网络时自动关闭启动的强制门户。因为我们希望他们在身份验证后被重定向到 MAC 设备管理页面,以便他们可以添加他们当前登录的设备并避免再次登录,这是不好的。

我尝试过的:

  1. 检测浏览器是否正在移动设备中启动并在 onbeforeunload 中弹出警告以尝试保持浏览器打开。

  2. 当检测到身份验证成功时,打开一个新的浏览器窗口,指向重定向 URL(本质上是我们自己管理重定向)。

  3. 在重定向的 URL 上执行选项 2,然后执行选项 1

什么不起作用:

  • 要求用户禁用其设备上的强制门户选项。不试图将普通用户指向高级控件。

  • 创建一个开放网络来访问 MAC 管理器,它必须经过一些身份验证。

目前的解决方案:

我们对这个解决方案不满意,但现在我们只是要求用户通过网络进行身份验证,然后打开他们的浏览器并转到用户用来手动添加他们的设备的基本登录门户页面(非网络身份验证)无法连接(如打印机、游戏设备等)。虽然这可行,但用户必须登录、打开浏览器、手动输入 URL 并再次登录是一件痛苦的事情。

这不是人们没有遇到过的问题,see here ,我只是无法从遇到问题的任何人那里找到解决方案。当然,在这种情况下,有一些方法可以利用 javascript 或其他方法使浏览器保持打开状态。如果没有,有人有更好的管理想法吗?

最佳答案

我们通过添加防火墙规则阻止,设法使 UAM 浏览器/强制门户浏览器在 lollipop 上保持打开状态:

  • clients3.google.com
  • clients1.google.com ,
  • android.clients.google.com
  • connectivitycheck.android.com
  • connectivitycheck.gstatic.com

因此,在用户通过身份验证后,UAM/Captive Browser 保持打开状态。

您可以根据需要保持 UAM 打开,您可以通过调用反向代理 204 重定向到谷歌的连接页面来关闭它。

关于javascript - 身份验证后防止 Captive Portal 自动关闭 (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34933146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com