我已经阅读了一些关于冒充的帖子,但我不确定我是否完全理解它是如何运作的。
我们在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冒充?其他建议是受欢迎的。感谢
答案 0 :(得分:1)
标识标记正在以该用户身份运行整个Web应用程序。 Application_Start
为时已晚,因为框架已经尝试冒充该用户。您无法使用应用程序中的代码完成此操作。
根据<identity>
元素上此页面的备注部分,您应该在注册表中store your impersonation credentials in encrypted form。
答案 1 :(得分:0)
使用以下链接中记录的模拟类方案结束。谢谢http://www.codeproject.com/articles/10090/