# solonadsso **Repository Path**: gtxmz/solonadsso ## Basic Information - **Project Name**: solonadsso - **Description**: AD域环境下自动登录功能在solon下的实现 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-05-23 - **Last Updated**: 2024-05-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README NTLM相关的协议引用了jcifs包,该包中有NtlmHttpFilter这个过滤器,但solon中无法直接用,故参照其代码重写了个过滤器并进行了一些简化
具体协议内容可参照
https://blog.csdn.net/qq_51789211/article/details/132377905
测试本demo先将配置文件中的域控地址、账号密码设置成自己的,然后启动工程,浏览器中输入http://localhost:8080/adsso即可看到自动登录后的用户名,若弹出账号密码输入框则说明没有自动登录成功
在泛微及帆软中都要求该账号是域控管理员账号,但是我测试完发现非管理员账号也是可以的
要想实现自动登录还有个要求就是Internet选项里要配置“自动使用当前用户名和密码登录”,当然浏览器并不会自动提交密码,而是它的哈希值,具体看NTLM协议内容 如果电脑已经没有IE浏览器,则需要在Edge中配置里的默认浏览器配置页面里的“允许在 Internet Explorer 模式下重新加载网站 (IE 模式)”改成允许,此时Edge的“更多工具”菜单中就有了Internet选项
进入Internet选项,在“安全”选项卡下,将“Internet”、“本地Intranet”、“受信任的站点”下的自定义级别中最下面的用户身份验证/登录设置成“自动使用当前用户名和密码登录”
以上设置建议在域控服务器中统一设置好,避免每个用户需要单独设置
设置好后用Edge、Chrome均可测试