需要动态设置模拟密码值

时间:2014-05-05 18:39:13

标签: c# impersonation

我已经阅读了一些关于冒充的帖子,但我不确定我是否完全理解它是如何运作的。

我们在IIS下运行现有的Web应用程序。我们在Web.config文件中使用identity impersonate作为数据库连接id,如下所示:

<identity impersonate="true" userName="MY_DBID" password="mypassword"
xdt:Transform="SetAttributes(impersonate,userName,password)" />

我们现在正尝试从应用程序中删除明文硬编码密码。

我们有第三方软件包,用于存储/管理帐户密码。我从Global.asax.cs中的Application_Start调用该服务并获取MY_DBID的密码。

我有没有办法在密码=&#34; mypassword&#34;中传递/使用此密码?模仿Web.config冒充?其他建议是受欢迎的。感谢

2 个答案:

答案 0 :(得分:1)

标识标记正在以该用户身份运行整个Web应用程序。 Application_Start为时已晚,因为框架已经尝试冒充该用户。您无法使用应用程序中的代码完成此操作。

根据<identity>元素上此页面的备注部分,您应该在注册表中store your impersonation credentials in encrypted form

答案 1 :(得分:0)

使用以下链接中记录的模拟类方案结束。谢谢http://www.codeproject.com/articles/10090/