捍卫数据安全

本篇文章主要分享捍卫数据安全,通过本文您将了解到有关数据服务器服务务器的相关内容,下面开始文章正文。

应用服务器受到攻击,我们采取的措施大致分为以下几个步骤:

1、服务器隔离

   检查端口,禁掉网卡

2、修改账号、密码,防火墙策略等

3、杀毒

4、应用重新部署

 

当然,这些工作大部分是由服务器维护人员来做,对于我们开发人员来说,也是可以贡献自己一份力量的,

比如部署应用配置项的时候数据库连接采用加密手段(本文以entity framework从数据库自动生成实体数据模型为例):

 

项目中添加完实体数据模型edmx以后,配置文件会生成如下的连接字符串:

<connectionStrings>

    <add name="testEntities" connectionString="metadata=res://*/TestDb.csdl|res://*/TestDb.ssdl|res://*/TestDb.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=192.198.110.123;initial catalog=test;persist security info=True;user id=sa;password=Password01!;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

  </connectionStrings>

 

这样的写法部署到服务器上以后,数据库的IP地址,连接数据库的用户名、密码全都暴露出来,这样对于数据来说是很不安全的

我们将数据库的连接字符串配置成如下的写法:

<appSettings>

    <add key="testEntities" value="res://*/TestDb.csdl|res://*/TestDb.ssdl|res://*/TestDb.msl;System.Data.SqlClient;192.198.110.123;test;ExUeYbu5sxY=;QMpp1xTZ0ROSl1JNeGawDEmFJWg="   />

  </appSettings>

 

其中,value由metadata;Provider;data source;initial catalog;user;password6个部分组成,分号隔开,后面2个是用户和密码,配置成加密的字符串。

 

edmx里面需修改的配置如下:

 1、修改

public testEntities() : base("name=testEntities")

        {

        }

 

public testEntities() : base(Config.DbCon)

        {

        }

 

 

2、Config类(连接数据库用户名、密码此处采用xxtea加密算法,也可选用其他加密算法):

 

  public class Config
    {
        private static string m_dbcon = string.Empty;

        public static string DbCon
        {
            get
            {
                if (m_dbcon == string.Empty)
                {


                    m_dbcon = ConfigurationManager.AppSettings["testEntities"];
                    string[] m_dbcon_arr = m_dbcon.Split(';');
                    m_dbcon = string.Format("metadata={0};provider={1};provider connection string='data source={2};initial catalog={3};persist security info=True;user id={4};password={5};MultipleActiveResultSets=True;App=EntityFramework';",
                        m_dbcon_arr[0], m_dbcon_arr[1], m_dbcon_arr[2], m_dbcon_arr[3],XXTeaHelper.Decrypt( m_dbcon_arr[4]),XXTeaHelper.Decrypt( m_dbcon_arr[5])
                        );

                }

                return m_dbcon;
            }

        }


    }

 

有关捍卫数据安全的文章就介绍到这儿,文章由web开发乐园收集自网络,希望对您有参考价值。

您可以选择一种方式赞助本站

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: