有没有办法通过Windows Authentication
传递postman
?
我已将其添加到标题中,但仍然是401 Unauthorized
。
Authorization: NTLM TkFcYWRtaW46dGVzdA==
正如this链接所建议的那样。我加密为Unicode (UTF-16, little-endian)
但没有用。
任何想法?
答案 0 :(得分:95)
我通过首先运行Fiddler来实现这一目标。
答案 1 :(得分:28)
答案 2 :(得分:17)
我认为没有办法做到这一点。但是,你并不孤单......
https://github.com/postmanlabs/postman-app-support/issues/1137
[编辑] 在添加此编辑时,Postman在其最新版本中具有测试版的NTLM身份验证。
https://www.getpostman.com/docs/v6/postman/sending_api_requests/authorization
答案 3 :(得分:5)
我建议使用insomnia。它是免费的,您可以在此处查看有关如何添加NTLM Auth的文档:https://insomnia.rest/documentation/authentication/
答案 4 :(得分:3)
NTLM身份验证适用于Postman的Chrome插件版本,因为内置的Chrome NTLM身份验证可以与插件一起使用。但是,Chrome不再支持插件,因此无法再安装和使用此版本。
Postman的当前应用版本(Chrome应用和原生应用版本)不支持NTLM身份验证。
答案 5 :(得分:1)
您还可以更改互联网选项并将登录设置为: 使用当前用户名和密码自动登录
取自: https://sysadminspot.com/windows/google-chrome-and-ntlm-auto-logon-using-windows-authentication/
如果网站使用https,您可以将其添加到可信站点并将其设置在那里,否则您可以将其添加到本地Intranet站点并设置自定义级别......那里。
单击自定义级别...并滚动到底部:
答案 6 :(得分:0)
Postman现在仅在其桌面应用程序上执行NTLM。
答案 7 :(得分:0)
我将对Hala
's answer进行改进,因为由于在请求中存储凭据而导致问题,如果使用凭据,这些凭据可能会保存在共享存储库中。
一种方法是输入凭据-用户名,密码和域-进行请求并删除它们。随后的请求将起作用,这可能是由于使用了与Postman相同的NTLM身份验证标头。临时授权标头(模糊),其值如下:NTLM some_base64_content
定义类似于以下内容的使用和配置环境:
在请求中使用配置的环境变量:
答案 8 :(得分:0)
此was added至5.3.0中的Postman应用程序。但是,此支持在5.4.1中已被打破,在Postman App issue #4355的最新版本的Postman中仍然被打破。
仍然可以从Postman站点下载该应用程序的较早工作版本,其中5.3.2版是使用NTLM身份验证的最后一个版本:
答案 9 :(得分:-3)
如果您使用C#开发API,则可以在基本控制器上使用以下内容
#if !DEBUG
[Authorize]
#endif