我从未使用过 ASP.NET,我们有一个使用 ASP.NET 开发的 Web 应用程序。由于没有人知道,我被要求重置数据库密码。
现在,我正在尝试找出
web.config
中的连接字符串出了什么问题。
这是整个
<connectionStrings>
部分在更改密码之前的样子:
<connectionStrings>
<add name="HR3conMain"
connectionString="7R2AR3D3AB5DB48245567F5DB733F21A2824543A77BAFA37537DA54D88FF7D672208870B8B5BC36708D2373664CD3372D77CD8CC265D045AB713871A12RB6DA00RAFD8DF28FRBC38R213667B4R5750R656RF10B07C76177RR880A86D1RB3A54C33467C711A727C34"
providerName="System.Data.SqlClient" />
<add name="Con2"
connectionString="metadata=res://*/Entity_Framework.HRFramework_Model.csdl|res://*/Entity_Framework.HRFramework_Model.ssdl|res://*/Entity_Framework.HRFramework_Model.msl;provider=System.Data.SqlClient;provider connection string=7R2AR3D3AB5DB48245567F5DB733F21A2824543A77BAFA37537DA54D88FF7D672208870B8B5BC36708D2373664CD3372D77CD8CC265D045AB713871A12RB6DA00RAFD8DF28FRBC38R213667B4R5750R656RF10B07C76177RR880A86D1RB3A54C33467C711A727C34"
providerName="System.Data.EntityClient" />
<add name="Con3"
connectionString="metadata=res://*/OHSEntityModel.csdl|res://*/OHSEntityModel.ssdl|res://*/OHSEntityModel.msl;provider=System.Data.SqlClient;provider connection string=7R2AR3D3AB5DB48245567F5DB733F21A2824543A77BAFA37537DA54D88FF7D672208870B8B5BC36708D2373664CD3372D77CD8CC265D045AB713871A12RB6DA00RAFD8DF28FRBC38R213667B4R5750R656RF10B07C76177RR880A86D1RB3A54C33467C711A727C34"
providerName="System.Data.EntityClient" />
</connectionStrings>
当然,我改变了哈希值。
我读过很多关于解密哈希的主题,但我的例子是这个命令
different.aspnet_regiis.exe (-pdf/-pef)
正在加密/解密整个
<connectionStrings>
部分。
我在
<add>
xml 标签内有哈希值。
如果我使用:
aspnet_regiis.exe -pdf "connectionString" "X:\path"
它会抛出这个错误:
未找到配置节“connectionString”。
我尝试添加未加密的连接字符串:
<add name="HR3KioskMainSqlHost"
connectionString="Data Source=server_name\SQLEXPRESS;Database=db_name;User ID=db_user;Password=@Not$Working#Con!;Persist Security Info = True;Integrated Security=True"
providerName="System.Data.SqlClient" />
有很多其他变体,但没有成功。
每次更改
web.config
后,我都会重新启动 IIS 服务器。
也许还有另一个选项可以禁用哈希值?
原因是节点名称 - 配置节点中右侧的名称是“connectionStrings”,而在查询命令中使用的是“connectionString”,没有“s”,因此无法识别使用该名称的任何节点 如果我们将“connectionString”替换为“connectionStrings”,它将起作用。
aspnet_regiis.exe -pdf“connectionStrings”“X:\路径”