2010-03-11 180 views

回答

3

對密碼和/或連接字符串使用加密,並將加密的密碼/連接字符串存儲在某種配置文件中。然後用我的答案在這裏對其進行解密後的連接字符串值添加到NHibernate的配置對象:

How to load application settings to NHibernate.Cfg.Configuration object?

像:

nHibernateConfiguration.SetProperty( 
    NHibernate.Cfg.Environment.ConnectionString, 
    Util.Decrypt(encryptedConnectionString)); 
2

一般來說,如果您要連接到使用sql登錄說一個sql server數據庫,除非您決定使用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 Server登錄可以執行的權限/角色。

如果必須使用SQL Server風格的登錄,你可以加密這樣的密碼..

Encrypting Connection String in 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

編輯:

要在web.config文件中的ConnectionString元素中使用一個連接字符串,那麼這說明你..

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

或者

使用fluentnhibernate。 :)

相關問題