0

我有一个应用程序,它基本上是一个 Web 服务,它连接到一个 sql db,它在 Web 配置的模拟标记中具有特定的用户凭据。

我想知道的是是否可以获取调用此 Web 服务的用户名。

我的网络配置如下所示:

<identity impersonate="true" userName="db_user" password="db_pass" />

我使用以下凭据发出 http 请求:

request.Credentials = new NetworkCredential("request_user", "request_pass");

在网络服务的网络方法中,我尝试使用以下代码行来获取请求用户,但它们都返回相同的用户,即模拟用户-(

System.Security.Principal.WindowsIdentity.GetCurrent().Name //returns db_user
System.Environment.UserName //returns db_user
HttpContext.Current.User.Identity.Name //returns db_user

我说清楚了吗?希望有人可以帮助我,谢谢!

4

2 回答 2

0

将用户名传递给 web 服务。

于 2012-04-23T17:44:16.577 回答
0

我所做的是在 IIS 中创建一个新的应用程序池,并使其以访问数据库所需的用户身份运行,然后只模拟 Web 服务。

于 2012-05-03T22:16:28.977 回答