Подтвердить что ты не робот

Как настроить конфиденциальные данные в коде приложения при создании модели ADO.NET? D some tag a

Я создаю модель для базы данных, и мне было любопытно следующую инструкцию в мастере Entity Model ADO.NET, где у вас есть варианты выбора "Да" или "Нет" для хранения конфиденциальных данных -

"Нет, исключить конфиденциальные данные из строки подключения. в моем коде приложения."

Я никогда не использовал этот параметр и просто хотел узнать, сделал ли я, где бы мне пришлось указывать свои конфиденциальные данные. Любые идеи?

4b9b3361

Ответ 1

Задайте аргумент строки подключения конструктора Model:

MyEntities1 db = new MyEntities1 ("metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=';Data Source=localhost;Initial Catalog=myDb;User ID=user1;Password=myPass;MultipleActiveResultSets=True';"); 

Ответ 2

Создать зашифрованную DLL для хранения строки подключения

Измените конструктор объектов

 // Separate Encrypted DLL file
 public static class secureData()
 {
    public static string ConString = @"Data Source=YOUR_SERVER;Initial 
    Catalog=YOUR_DB;Persist Security Info=True;User 
    ID=YOUR_USER;Password=YOUR_PASSWORD";
 }


 public sampleDBEntities() : base("name=sampleDBEntities")
    {
        this.Database.Connection.ConnectionString =  secureData.ConString ;
    }

Ответ 3

Это то, что я использовал в прошлом, хотя многие будут утверждать, что он небезопасен для хранения текстовых паролей в ваших исходных файлах. Есть способы защитить это путем шифрования строк подключения;

public db_entity()
            : base("name=db_entity")
        {
            this.Database.Connection.ConnectionString= "server=localhost;user id=<USERNAME>;Password=<PASSWORD.;persistsecurityinfo=True;database=<DB_NAME>";            
        }

Ответ 4

Это имя пользователя и пароль для строки подключения. Если у вас их нет в конфигурационном файле, вам придется предоставить их при создании контекста данных.