首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Server登录保存在代码中(C#)

将Server登录保存在代码中(C#)
EN

Stack Overflow用户
提问于 2018-11-01 19:27:00
回答 1查看 66关注 0票数 1

我是一个相当新的开发人员,目前正在开发一个用以下代码连接到MYSQL的C#程序:

代码语言:javascript
复制
    class MySql
{
    private MySqlConnection connection;
    private string server;
    private string database;
    private string uid;
    private string password;

    //Constructor
    public MySql()
    {
        Initialize();
    }

    //Initialize values
    private void Initialize()
    {
        server = "mydomain.com";
        database = "dbName";
        uid = "Username";
        password = "Password";
        string connectionString;
        connectionString = "SERVER=" + server + ";" + "DATABASE=" +
        database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";

        connection = new MySqlConnection(connectionString);
    }

    //open connection to database
    private bool OpenConnection()
    {
        try
        {
            connection.Open();
            return true;
        }
        catch (MySqlException ex)
        {
            //When handling errors, you can your application's response based 
            //on the error number.
            //The two most common error numbers when connecting are as follows:
            //0: Cannot connect to server.
            //1045: Invalid user name and/or password.
            switch (ex.Number)
            {
                case 0:
                    MessageBox.Show("Cannot connect to server.  Contact administrator");
                    break;

                case 1045:
                    MessageBox.Show("Invalid username/password, please try again");
                    break;
            }
            return false;
        }
    }

    //Close connection
    private bool CloseConnection()
    {
        try
        {
            connection.Close();
            return true;
        }
        catch (MySqlException ex)
        {
            MessageBox.Show(ex.Message);
            return false;
        }
    }

现在,我不太清楚如何安全地保存服务器登录。正如您所看到的,在我的代码中,域名、用户名和密码在代码中都是公开的。

据我所知,不应该是这样的。

我该怎么纠正呢?还是这样存钱?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-01 19:32:30

在.NET中,连接字符串通常存储在应用程序的.config文件中(web.config用于ASP.NET,app.config用于桌面)。配置文件中的MySQL连接字符串的示例如下所示:

代码语言:javascript
复制
<connectionStrings>  
  <add name="MySqlConnectionString"
   providerName="MySql.Data.MySqlClient"
   connectionString="server=127.0.0.1;uid=root;password=bpdash;database=sample" />
</connectionStrings>

然后,支持对配置文件的该部分进行加密的方法。在本文中讨论了使用连接字符串和加密连接字符串:连接字符串和配置文件

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53108102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档