2014-10-30 69 views
0

我正在開發一個應用程序,它可以更改sql服務器用戶的密碼,如果提供了sql數據庫管理員用戶名和密碼如何使用asp.net訪問和修改託管在不同服務器上的項目的Web配置文件

這裏是代碼

string Connt = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); 

SqlConnection sqlConnection1 = new SqlConnection(Connt); 
SqlCommand cmd = new SqlCommand(); 
SqlDataReader reader; 

string newone = "pwd"; 
string username = "username"; 

cmd.CommandText = "alter login " + username + " with password = '" + newone + "' old_password= '" + old + "' "; 
cmd.CommandType = CommandType.Text; 
cmd.Connection = sqlConnection1; 

sqlConnection1.Open(); 

cmd.ExecuteNonQuery(); 
sqlConnection1.Close(); 

那麼我需要在使用同一個用戶的應用程序的Web配置文件中的連接字符串中更改此SQL用戶密碼。

string path = "path"; 
ExeConfigurationFileMap map = new ExeConfigurationFileMap(); 
map.ExeConfigFilename = path; 

Configuration config = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None); 

string connStr_App = config.AppSettings.Settings["ConnectionString"].Value; 
config.AppSettings.Settings.Remove("ConnectionString"); 
config.AppSettings.Settings.Add("ConnectionString", "conectionstringwithnewpassword"); 
config.Save(ConfigurationSaveMode.Modified); 

到目前爲止它的工作正常。 但問題是,我只能更改託管在同一臺計算機上的應用程序的Web配置文件。

我需要更改託管在不同服務器上的應用程序的Web配置文件,假設我有管理員密碼和用戶名。

此鏈接似乎有用 http://msdn.microsoft.com/en-us/library/ms228054%28v=vs.100%29.aspx 但我的應用程序需要在遠程server.How管理權限才能達到呢?現在它的顯示訪問被拒絕(來自HRESULT的異常:0x80070005(E_ACCESSDENIED))消息。 順便說一下,我激活了服務器上的遠程配置組件。

回答

相關問題