Информация о строке подключения конфигурации NHibernate - PullRequest
0 голосов
/ 11 марта 2010

Как лучше всего хранить информацию о строке подключения?

Я бы предпочел не просто хранить пароль БД в файле NHib.config.

Ответы [ 2 ]

4 голосов
/ 11 марта 2010

Используйте шифрование пароля и / или строки подключения и сохраните зашифрованный пароль / строку подключения в каком-либо файле конфигурации. Затем используйте мой ответ здесь, чтобы добавить значение строки подключения к объекту конфигурации NHibernate после его расшифровки:

Как загрузить настройки приложения в объект NHibernate.Cfg.Configuration?

Как:

nHibernateConfiguration.SetProperty( 
  NHibernate.Cfg.Environment.ConnectionString,
  Util.Decrypt(encryptedConnectionString)); 
2 голосов
/ 11 марта 2010

Обычно вы вводите пароль, если вы подключаетесь к базе данных SQL Server с именем входа SQL, если вы не решите использовать проверку подлинности Windows.

    <connectionStrings><add name="MyDbConn1" 
       connectionString="Server=MyServer;Database=MyDb;Trusted_Connection=Yes;"/>
<add name="MyDbConn2" 
      connectionString="Initial Catalog=MyDb;Data Source=MyServer;Integrated Security=SSPI;"/>
</connectionStrings> 

Вы должны заблокировать разрешения / роли для того, что может сделать логин сервера sql.

Если вам нужно использовать логин в стиле сервера sql, вы можете зашифровать пароль следующим образом.

Шифрование строки подключения в web.config

или некоторые другие ссылки ..

http://www.kodyaz.com/articles/Encrypting-in-web-configuration-file.aspx

http://www.codeproject.com/KB/cs/Configuration_File.aspx

http://www.velocityreviews.com/forums/t84120-how-to-encrypt-database-password-in-web-config-file.html

РЕДАКТИРОВАТЬ:

Чтобы использовать строку подключения из элемента connectionstring в файле web.config, это покажет вам ..

http://www.martinwilley.com/net/code/nhibernate/appconfig.html

АЛЬТЕРНАТИВА

использовать fluentnhibernate. :)

...