Создать новый вход в базу данных и настроить его в коде SQL Server?C#

Место общения программистов C#
Ответить
Гость
 Создать новый вход в базу данных и настроить его в коде SQL Server?

Сообщение Гость »


Я пытаюсь создать проект C# Windows Forms с .NET 4.5, Entity Framework и SQL Server 2019.

В настоящее время я создаю установочный файл с автоматической установкой, выполняющей всю работу автоматически, и все работает отлично.

Теперь я хочу защитить свою базу данных после первого запуска и создания. Я хочу создать новое имя входа на SQL Server, а затем назначить его своей базе данных. После слишком многих попыток и ошибок я использовал этот код, но получаю ошибку, потому что не знаю, какой пароль по умолчанию Sa. Я нашел этот (RPSsql12345) пароль по умолчанию в Интернете.

Я тоже не знаю, правильный это подход или нет?

пространство имен DataAccessLayer { общедоступный класс DACcheckDatabase { публичная недействительность CreateDatabase() { // Проверяем, существует ли база данных если (!DatabaseExists()) { // Создаем новую базу данных используя (var context = новая БД()) { string ConnectionString = "Источник данных=DESKTOP-JU6B73e\\SQL2019;Исходный каталог=master;ID пользователя=sa;Пароль=RPSsql12345;"; Соединение SqlConnection = новый SqlConnection (connectionString); соединение.Открыть(); строка имя пользователя = «тест»; строковый пароль = «1234»; string createLoginQuery = $"СОЗДАТЬ ВХОД {имя пользователя} С ПАРОЛЕМ = '{пароль}'"; SqlCommand createLoginCommand = новый SqlCommand (createLoginQuery, соединение); createLoginCommand.ExecuteNonQuery(); контекст.База данных.Создать(); строка имя_базы данных = "testDB"; строка AssignLoginQuery = $"USE {databaseName}; CREATE USER {username} ДЛЯ ВХОДА {username}; EXEC sp_addrolemember 'db_owner', '{username}'"; SqlCommand AssignLoginCommand = новый SqlCommand (assignLoginQuery, соединение); AssignLoginCommand.ExecuteNonQuery(); } } } частная база данных bool DatabaseExists() { используя (var context = новая БД()) { вернуть context.Database.Exists(); } } } } Это моя строка подключения в файле app.config:
"источник данных=DESKTOP-JU6B73e\SQL2019;начальный каталог=testDB;идентификатор пользователя=test;пароль=1234;Trusted_Connection=False;"
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»