• 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登录用户名和密码时,输出结果是这样的

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

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

  • 相关阅读:
    -bash: fork: Cannot allocate memory 问题的处理
    Docker top 命令
    docker常见问题修复方法
    The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
    What's the difference between encoding and charset?
    hexcode of é î Latin-1 Supplement
    炉石Advanced rulebook
    炉石bug反馈
    Sidecar pattern
    SQL JOIN
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3855133.html
Copyright © 2020-2023  润新知