问题标签 [negotiate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - webHDFS curl --negotiate 在 Windows 上
以下命令适用于 Linux,但在 Windows 上失败。在运行命令之前,我使用 kinit 获取有效的 Kerberos 票证。
预期结果(Linux 输出):
从 Windows 输出:
curl 版本窗口:
卷曲版本 Linux:
我在当使用 --negotiate with curl 时,找到了关于如何在 Linux 上安装的详细说明,是否需要 keytab 文件?,但我找不到适用于 Windows 的 GSS-API,适用于 Windows 的 SSPI 是否与适用于 Linux 的 GSS-API 相同?
iis - 如果在 Windows 身份验证下选择 Negotiate:kerberos 作为提供程序,IIS Web 应用程序将停止工作
我们有一个托管在 IIS 上的网络应用程序。spn 设置为主机名,并且在协商、ntlm 设置和用户 kerberos 身份验证时工作正常。但是,如果我们同时删除它们并设置协商:kerberos,则 Web 应用程序将停止工作。
在访问网页时,我们收到错误消息,指出无法访问该站点。甚至应用程序池也在运行。仍然面临这个问题。任何人都知道如何解决这个问题。
windows - 在 Windows 上使用 --negotiate 和 curl 时,SSL/TLS 握手失败
在 Windows 上使用带有 curl 的 --negotiate(或 ntlm)时,尽管在我的 Windows 10 上缓存了有效的 kerberos 票证,但 SSL/TSL 握手失败(如下所示)。相同的逻辑和命令在 Unix/Linux 中没有任何问题。有关如何解决此问题的任何想法/帮助?
清单详情:
使用 ntlm 的 curl 命令或协商详细信息:
spring-boot - 使用 Waffle Spring boot + Spring Security 和嵌入式 tomcat 获取 Angular
我正在使用这个例子来了解更多关于华夫饼的信息:
https://github.com/Waffle/waffle/tree/master/Source/JNA/waffle-demo/waffle-spring-boot-filter2
我很高兴,因为在这个例子中一切都很好。但是在这个 spring boot 项目中添加一个静态 HTML 文档并在我的浏览器中启动这个 html 页面会导致错误:
我想这取决于我的弹簧安全过滤器的配置。有没有人有一个示例华夫饼,带有嵌入式 Tomcat 的弹簧启动,它适用于 html 或 angular?
提前非常感谢!
c# - .NET HttpClient 在使用 NTLM 协商时不会在对 IIS 的请求之间保持身份验证
IIS 站点配置为使用带有默认选项的 Windows 身份验证。客户端是用 C# 编写的,并使用单个 HttpClient 实例来执行请求。请求成功,但每个请求都会触发 401 Challenge:
使用 Wireshark 捕获的流量。我们进行了响亮的测试,并注意到,使用匿名身份验证客户端每秒执行 5000 个请求,但使用 Windows 身份验证 - 800。因此,看起来wireshark 不会影响身份验证,性能下降表明,没有wireshark 也会发生401 挑战。
Wirehshark 日志:https ://drive.google.com/file/d/1vDNZMjiKPDisFLq6ZDhASQZJJKuN2cpj/view?usp=sharing
客户端代码在这里:
IIS 站点设置:
如何使 HttpClient 在请求之间保持身份验证,以防止在每个请求上浪费协商握手?
UPD:客户端代码:https ://github.com/PFight/httpclientauthtest 重现步骤:
- 使用简单文件 index.html 创建文件夹,在 IIS 中为此文件夹创建应用程序“testsite”。启用匿名身份验证。
- 运行客户端(https://github.com/PFight/httpclientauthtest/blob/main/TestDv5/bin/Debug/TestDv5.exe),按开始按钮 - 查看每秒请求数。按停止。
- 禁用匿名身份验证,启用 Windows 身份验证。
- 按客户端中的开始按钮,查看每秒请求数。
在我的计算机上,我在匿名上看到每秒约 1000 个请求,在 Windows 上看到约 180 个请求。Wireshark 在每个 Windows 身份验证请求上显示 401 个质询。在 IIS 中启用了 keep-alive 标头。
IIS 版本:10.0.18362.1(Windows 10)
加载到进程的 System.Net.Http.dll 版本:4.8.3752.0
authentication - Cypress:使用 cypress-ntlm-auth 代理为 api 请求配置硬编码用户
我cypress-ntlm-auth
在我的 cypress 自动化项目中使用插件,为我提供 Windows 身份验证(Ntlm、kerberos 等)
特别是,我使用ntlmSso
与我的应用程序协商的选项。如果服务器发送身份验证质询,ntlm-proxy 将使用运行测试客户端的用户的凭据执行 NTLM 或协商登录握手。
问题是我需要使用预定义的用户(在我的预生产环境中使用)来发出 api 请求,而不是计算机上的登录用户。
我怎样才能做到这一点?提前致谢