C# – 安全地连接到远程SQL Server?
发布时间:2020-12-15 08:04:59 所属栏目:百科 来源:网络整理
导读:我知道连接到SQL Server数据库很容易但是我不确定我应该如何远程同时进行…以安全的方式. SqlConnection sqlConnection = this.sqlcon();SqlCommand insertCommand = new SqlCommand("use " + database_telecaster.ToString() + " SELECT Top 1 sid from dbo
我知道连接到SQL Server数据库很容易但是我不确定我应该如何远程同时进行…以安全的方式.
SqlConnection sqlConnection = this.sqlcon(); SqlCommand insertCommand = new SqlCommand("use " + database_telecaster.ToString() + " SELECT Top 1 sid from dbo.Item order by sid desc",sqlConnection); sqlConnection.Open(); insertCommand.ExecuteNonQuery(); SqlDataReader reader = insertCommand.ExecuteReader(); while (reader.Read()) { MaxSid = (reader.GetInt64(0) + 100).ToString(); } reader.Close(); sqlConnection.Close(); SQL Server con函数: public SqlConnection sqlcon() { var doc = new XPathDocument(Application.StartupPath + "/DBConn.xml"); var navigator = doc.CreateNavigator(); var serverName = navigator.SelectSingleNode("//appsettings/servername"); var username = navigator.SelectSingleNode("//appsettings/username"); var password = navigator.SelectSingleNode("//appsettings/password"); var database = navigator.SelectSingleNode("//appsettings/database"); object[] objArray = new object[] { serverName,database,username,password }; return new SqlConnection(string.Format("Data Source={0};Initial Catalog={1};User Id={2};Password={3};MultipleActiveResultSets = True",objArray)); } 假设SQL Server安装在Windows VPS上,我将把我的软件提供给不同的人,我希望他们都能访问该SQL服务器……如何在不打开SQL Server端口的情况下做到这一点?因为据我所知,打开端口会导致被黑客入侵,因为所有人都可以远程连接到该服务器. 解决方法
当我开始时,这个问题让我想起了我……
无论你做什么,都不要直接连接到数据库,因为要直接连接你必须在你的应用程序中存储数据库连接字符串(和密码)……你可能会混淆它,让它像你想的那样模糊,它不会有所作为……你基本上将钥匙交给了城堡. 相反,您需要开始学习如何创建API,对客户端进行身份验证并代表客户端连接到数据层,执行请求的操作,然后返回结果. 就个人而言,我会使用ASP.NET Web API,这是适合这项工作的工具.它有一个轻微的学习曲线,但只是坚持下去,你会在几天内弄明白.从这些PluralSight videos开始,它们是一个非常好的资源,完全免费归功于微软,它们肯定会让你忙碌! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |