У меня есть проект веб-установки, устанавливающий веб-приложение. В пользовательском действии я выполняю сценарий SQL для создания базы данных.
Простой, в основном пример кода MS. Работает нормально.
private void ExecuteSql(string serverName, string dbName, string Sql)
{
System.Data.SqlClient.SqlConnection masterConnection = new System.Data.SqlClient.SqlConnection();
masterConnection.ConnectionString = "Server=" + serverName + "; Database=" + dbName + ";Integrated Security=SSPI";
System.Data.SqlClient.SqlCommand Command = new System.Data.SqlClient.SqlCommand(Sql, masterConnection);
Command.Connection.Open();
Command.Connection.ChangeDatabase(dbName);
try
{
Command.ExecuteNonQuery();
}
finally
{
Command.Connection.Close();
}
}
Проблема в том, что пользователь, отправляемый на SQL Server, имеет имя «DOMAIN \ MACHINENAME $», например «AMBER \ CHAOS $», а не «AMBER \ corwin».
Если я добавлю «AMBER \ CHAOS $» в качестве имени входа на SQL Server и предоставлю пользователю достаточные права, все будет работать нормально. Это невозможно в конечном окружении.
Итак, что мне нужно сделать, чтобы мои веб-настройки подключались к серверу SQL как «AMBER \ corwin», а не «AMBER \ CHAOS $»?