NET Framework 4.5新特性 数据库的连接加密保护。

NET Framework 4.5新特性 (一) 数据库的连接加密保护。

NET Framework 4.5 ado.net数据库连接支持使用SecureString内存流方式保密文本。  一旦使用这类操作,文本加密是私有不能共享的,并在不再需要时从计算机内存中删除。  SecureString此类不能被继承。 下面做了一些演示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
private  void  Login_Click( object  sender, EventArgs e)
       {
           //登录参数
           string  userName = Username.Text;
           SecureString password = securestring(Password.Text); 
           password.MakeReadOnly();
           //SqlCredential  提供了更安全的方式来指定使用 SQL Server 身份验证的登录尝试密码。
           SqlCredential credential = new  SqlCredential(userName, password);
           //数据库连接
           using  (SqlConnection conn = new  SqlConnection( "Server=(local);Initial Catalog=DATABASE;" ))
           {
               conn.Credential = credential;
               conn.Open();
               MessageBox.Show( "连接成功" );
               conn.Close();
           }
       }
       /// <summary>
       /// 保密文本
       /// </summary>
       /// <param name="text">保密的字符串</param>
       /// <returns></returns>
       private  SecureString securestring( string  text)
       {
           char [] pChar = text.ToCharArray();
 
           SecureString password = new  SecureString();
 
           foreach  ( char  c in  pChar)
           {
 
               password.AppendChar(c);
 
           }
           return  password;
       }

 当输入一个正确sql登录用户名和密码时,输出结果是这样的

 

NET Framework 4.5新特性 数据库的连接加密保护。

 

当输入不正确的用户名或密码时,抛出一个sql异常

 

NET Framework 4.5新特性 数据库的连接加密保护。

 

下一篇继续讲解NET Framework 4.5新特性

你可能感兴趣的:(framework)