我有一些服务(比如 S1 和 S2),我想将它们与使用 NTLM 身份验证的第三方服务(比如 S3)连接起来。我的问题是我可以使用 Basic Auth 或 Oauth。我想知道是否有一个代理可以进行此身份验证转换(从 NTLM 到 BasicAuth)。
|s1|<--|
|--BasicAuth--> |Proxy| <--NTLM--> |s3|
|s2|<--|
目前,我正在使用 Curl (--ntlm) 来实现这一点,但我想按照说明进行更改。
S1 和 S2 在 Debian 主机中运行。
干杯!
最佳答案
我设法通过安装 Cntlm 解决了这个问题.它是一个代理,几乎可以完成我所描述的事情。
我按照 this blog post 中的说明配置了代理
主要区别是我只设置了Domain
,并在Password
和User
参数中注释:
Domain mySoapNTLMdomain
# Username
# Password
# NOTE: Use plaintext password only at your own risk
# Use hashes instead. You can use a "cntlm -M" and "cntlm -H"
# command sequence to get the right config for your environment.
# See cntlm man page
# Example secure config shown below.
# PassLM
# PassNT
# PassNTLMv2
所以我可以通过使用基本身份验证获得授权。例如
curl http://soap.mydomain:1234/my/path --proxy http://127.0.0.1:3128 --user soapuser:andpass --proxy-user soapuser:andpass
关于oauth - 基本身份验证或 Oauth 的 NTLM 代理转换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24265024/