繁体   English   中英

如何使用来自WebAPI的域的用户对WebAPI上不同计算机上的客户端进行身份验证?

[英]how can authenticate a client on a different machine on a WebAPI with a user from WebAPI's domain?

我有一个启用Windows身份验证的ASP.NET Web Api 2.2。

而且,我有一个具有.NET Framework 4.0的客户端来连接到此WebAPI:

HttpClientHandler handler = new HttpClientHandler()
{
    UseDefaultCredentials = true
};

// Llamar al servicio web para obtener los códigos.
using (var client = new HttpClient(handler))
{
}

但是客户端将在与Web API不在同一域中的计算机上运行。

UseDefaultCredentials = true足够?还是我必须将用户,密码和域传递给Web服务?

IIS将尝试使用Windows身份验证来验证传入的HTTP请求,但由于该框位于其他域中而将失败。 您的服务器端代码都不会执行。 查看Fiddler或浏览器开发人员工具中的HTTP请求/响应流,以更好地了解Windows身份验证的过程。

您可以在启用了匿名访问的服务器上创建一个页面,该页面可以运行一些身份验证代码,但是您需要考虑如何安全地发送用户名和密码...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM