问题标签 [ntlm-authentication]
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.
php - 如何使用带有 Windows 身份验证 (NTLM) 的 PHP 内置服务器来填写 $_SERVER["LOGON_USER"]?
我有使用$_SERVER["LOGON_USER"]
通过 IIS 身份验证设置在我的服务器上获得的脚本。我希望这个变量domain\username
在本地运行时包含我的变量,或者至少在我启动本地主机上的 PHP 内置服务器时有一种方法来设置它。
如何在我的机器上配置 PHP 以像通过 IIS 运行时一样获取和填充这个变量?
PS:我看过这个问题,但答案地址$_ENV
,没有$_SERVER
。
identityserver4 - 具有集成 Windows 身份验证的 IdentityServer4
我是相当新的 IdentityServer4,我正在尝试为我们不同的内部 API 配置访问控制。内部我的意思是它不是通过互联网。我选择了 IdentityServer4,因为它在处理不同的客户端和授权类型时似乎具有很大的灵活性。
现在我正在尝试让 Windows 身份验证(针对 AD)工作。首先让我向您展示我希望它如何工作,然后我将向您展示我尝试过的内容。
任何登录到 AD 的用户都应该能够从令牌端点请求令牌。因此,对于任何具有集成 Windows 身份验证的应用程序,它都应该自动运行。
这是我希望如何在 PowerShell 中工作的示例。我不确定身体应该是什么样子,但希望你明白这一点。
因此,我研究了 IdentityServer4 的快速入门示例,并阅读了有关Windows Authentication的文档。我采用了最简单的快速入门示例并尝试对其进行修改以使用 Windows 身份验证。
服务器的示例使用WebHost.CreateDefaultBuilder
,这意味着应该自动配置 Kestrel(根据文档)。然后我相应地修改ConfigureServices
:
在launchSettings.json
我设置
但是,这不起作用。当我运行服务器并尝试使用上述 PowerShell 脚本请求令牌时,我从 IdentityServer 收到以下错误日志:
我觉得有点无能为力,就像我在这里遗漏了一些东西(比如正确设置客户端?)。我将不胜感激这里的任何帮助!
xamarin - 连接到服务器时获得随机超时
向服务器发出请求时,我随机收到超时异常。我一直在尝试 httpwebrequest、restsharp 和 httpclient。我不能使用HttpClient
,因为我需要添加自定义证书并且它们没有实现。
这是我到目前为止发现的:
-requests 在控制台应用程序中工作正常
-requests 在 http url 中工作正常
- 请求不适用于带有 X-CSRF-Token 和 X-FORMS_BASED_AUTH_ACCEPTED 的客户端证书 (.pfx) 的 https(它似乎适用于 NTLM)
-在每次调用(不是 cookie)时仅使用 NTLM 身份验证时,请求似乎工作正常
初始化 RestClient:
拨打电话:
注意:我已经设法实现了自己的 AndroidClientHandler 以使用客户端证书,但我遇到了 NTLM 身份验证错误。
apache - JMeter v. 4 NTLM 身份验证
我遇到了 NTLM 身份验证问题,我正在使用 JMeter v. 4,这是我第一次使用 JMeter,所以我是初学者。
我试图遵循我在这里找到的几个解决方案,但我仍然面临问题。
HTTP 授权管理器具有以下值:
基本 URL:http:// [测试站点]
用户名:[我的用户名] -(甚至用 user@domain 测试过)
密码:[我的密码]
域:域
领域:空 -(甚至用 domain.local 测试过)
机制:BASIC_DIGEST -(甚至用 KERBEROS 测试过)
我的HTTP 请求具有以下内容:
基本
服务器名称或 IP:http:// [测试站点]
方法:GET
使用 KeepAlive 已启用
Browser.compatible headers 已启用
高级
实现:HttpClient4
我试图编辑 \bin\user.properties\ 并添加设置 httpclient4.auth.preemptive=true或httpclient4.auth.preemptive$Boolean=true但仍然有问题:
响应消息:未经授权
响应头:
HTTP/1.1 401 Unauthorized
Content-Type:text/html
服务器:Microsoft-IIS/8.5
WWW-Authenticate:协商
WWW-Authenticate:NTLM
X-Powered-By:ASP.NET
X-UA-Compatible:IE=Edge
日期:2018 年 3 月 2 日星期五 08:42:30 GMT
内容长度:1293
HTTPSampleResult 字段:
ContentType:text/html
DataEncoding:iso-8859-1
我拥有的配置基于JMeter NTLM authentication failed 1。版本之间有区别吗?我错过了什么?有什么问题?
json - Sharepoint 连接 - ValueError:无法解码 JSON 对象
我想使用 Python 2.7.3 从 Sharepoint 中提取数据。这是我的代码:
我可以成功登录到sharepoint站点,“sharepoint_get_request”结果的状态码是200,但问题是result.json()给了我错误:ValueError: No JSON object could be decoded。
200 状态码结果怎么可能没有有效的 json 对象?可以是 HTML 页面吗?在这种情况下,如何在 Python 2.7.3 中解析 HTML 页面?
先感谢您
git - git中的代理再次出现问题(在NTLM代理后面的Linux上)
在 Linux 机器上,我想在 NTLM 代理后面克隆 GitHub 存储库。
我知道关于和代理的 Stackoverflow(如A、B或C)上的答案git
,并且我按照他们做了以下事情:
在我的.gitconfig
我已经设置了代理信息的形式
(注意:我也尝试过没有禁用 SSL。)
此外,我已经设置了环境变量
用于基础curl
调用。
我仍然无法连接。例如我发出
export GIT_CURL_VERBOSE=1
如果事先我通过我得到以下错误消息输出打开调试输出:
奇怪的是,curl
靠自己的作品!那么通过 git 和 curl 获取有什么不同呢?我怎样才能git clone <URL>
在这种类型的代理后面工作?
jmeter - Jmeter 集成 Windows 身份验证 (NTLM)
我是 Jmeter 的新手,我正在努力让 HTTP 请求成功运行(即使是 1 次迭代)。
正在测试的站点是工作人员使用的 Intranet 站点。在通过任何浏览器访问时,主页会加载(通过我的域登录/密码将我认证为用户 - 通过登录到我的笔记本电脑)。从我可以从 FIDDLER 等工具中收集到的信息:
- 向服务器发送GET请求,服务器响应是401未授权(WWW-Authenticate: Negotiate)
- GET REQUEST 标头发送回授权:协商哈希,服务器响应为 401 未经授权,使用不同的 WWW-Authenticate:协商哈希
- GET REQUEST 使用相同的授权发回:协商在之前的 SERVER 响应中收到的 HASH。服务器以 HTTP 200 响应。
我正在努力让上述工作在 JMETER 中工作。我尝试通过捕获 Blazemeter Chrome 插件的输出并将其保存为 .jmx 文件,但重播会导致
div id="header">h1>服务器错误
h2>401 -未经授权:由于凭据无效,访问被拒绝。h3>您无权使用您提供的凭据查看此目录或页面。
任何关于我应该如何让它工作的想法将不胜感激......
docker - 如何为在 Docker 中运行的 .NET Core 应用启用 NTLM 身份验证?
我正在尝试在 Intranet 上设置一个 .NET Core 2.0 Web 应用程序(实际上是 WebAPI),并且我想使用单点登录。这意味着我必须为我的 .NET Core 应用启用 NTLM 身份验证。
这显然可以使用 HttpSys,并且在其他地方运行时似乎可以工作,但不能在 Microsoft Docker 映像上运行。
有任何想法吗?
javascript - 在 Chrome 66 中向 NTLM 身份验证服务器发出 API 请求
将我的浏览器升级到 Chrome 66 后,我在向最初需要 NTLM 身份验证的服务器创建任何 API 请求时遇到问题。我想知道是否有人对原因有任何解释。我认为这与添加到 Chrome 的广告拦截技术或安全性有关,或者可能是 Chrome 错误。
我在下面使用 Fetch 创建了一个基本示例。发生的情况是用户访问该站点,Chrome 将用户重定向到 API 进行身份验证(而不是像以前版本的 Chrome 一样留在同一站点上),当用户进行身份验证时页面变为空白并且 Chrome 似乎禁用了键盘(我无法按 cmd + w 关闭选项卡)。当我刷新此页面时,API 响应开始显示在浏览器中。用户通过身份验证后,他们可以返回创建 API 请求的初始页面,并且工作正常。
是否需要在标题中添加一些内容才能使其正常工作?
请不要只建议使用替代身份验证方法作为解决方案。
postman - 带有 Postman 的 NTLM 显示“JSONError | Unexpected token '<' at 1:1”
我有脚本通过从 CSV 文件中获取数据并将 JSON 响应与 POSTMAN 中的 CSV 文件中的数据进行比较来进行 API 自动化。我有 12 个场景/迭代要验证,每个场景发送 20 多个从 CSV 文件中挑选的数据,并从 JSON 响应中比较 10 多个数据。一切正常。
现在在代码中实现了安全功能,所以我必须发送请求并使用 ID/PWD 自动化脚本。所以我使用了带有 ID 和 PWD 的 NTML 身份验证。
当我使用 runner 运行脚本时,最初的两次迭代给出了完美的响应并且脚本通过了,然后从第 3 次迭代开始,所有脚本都失败并且没有得到响应。作为回应,当我在邮递员控制台中检查时它显示数据不可用,它显示以下详细信息。
可能是什么原因以及解决此问题的任何解决方案。
使用带有 ID/PWD 的 NTLM 身份验证 [BETA] 授权选项
以下是通行证场景的详细信息
以下是失败场景的详细信息