我们在C#中创建了一个用于与用户共享数据的Web服务。数据以csv或Excel格式提供。
数据将转换为XML并通过Web服务提供给用户。用户将仅使用浏览器类型的接口来获取数据。没有客户端应用程序来调用Web服务。用户只需使用如下的普通网址:
HTTP:///WebService.asmx/HelloWorld表=用户
我们希望实现数据级安全性。因此,调用相同Web服务的不同用户将获得不同的数据。我们需要根据Windows NT名称对用户进行身份验证。
我们不想在网络服务网址中传递任何凭据。 "是否有方法捕获用户NT调用Web服务的用户的名称?" 基于该名称,我们希望在将数据传递给用户时限制数据。
如果有任何其他可能,请提出建议。
Prabhu Appu
答案 0 :(得分:2)
您可以将应用程序设置为使用Windows身份验证。
阅读How to: Configure an XML Web Service for Windows Authentication。
基本上,您必须将此添加到您的web.config:
<authentication mode= "Windows">
</authentication>
并更改客户端的身份验证,以包含正确的NetworkCredential
。