• ADO数据库连接中的Integrated Security和Persist Security Info参数的作用


    关于sql连接语句中的Integrated Security=SSPI

    解决方法:

    即:Security Support Provider Interface

    设置Integrated Security为 True 的时候,连接语句前面的 UserID, PW 是不起作用的,即采用windows身份验证模式。

    只有设置为 False 或省略该项的时候,才按照 UserID, PW 来连接。

    Integrated Security 可以设置为: True, false, yes, no ,这四个的意思很明白了,还可以设置为:sspi ,相当于 True,建议用这个代替 True。

    initial catalog与database的区别是什么

            Initial Catalog:

    DataBase:

    两者没有任何区别只是名称不一样,就好像是人类的真实姓名与曾用名一样。。都可以叫你。

    ********************************************

    Integrated Security=SSPI 这个表示以当前WINDOWS系统用户身去登录SQL SERVER服务器,如果SQL SERVER服务器不支持这种方式登录时,就会出错。

    你可以使用SQL SERVER的用户名和密码进行登录,如:

    "Provider=SQLOLEDB.1;Persist Security Info=False;Initial Catalog=数据库名;Data Source=192.168.0.1;User ID=sa;Password=密码"

    ***************************************************

    Integrated   Security     -   或   -    Trusted_Connection   'false'   当为   false   时,将在连接中指定用户   ID   和密码。当为   true   时,将使用当前的   Windows   帐户凭据进行身份验证。   可识别的值为   true、false、yes、no   以及与   true   等效的   sspi(强烈推荐)。  

    *************************************************

    Persist Security Info属性的意思是表示是否保存安全信息,其实可以简单的理解为"ADO在数据库连接成功后是否保存密码信息",

    True表示保存,False表示不保存

    ADO缺省为True
    (ADO.net缺省为False,未测试,根据参考资料上说的)

    具体可以通过ADO的Connect对象的ConnectString属性进行验证,如下所示(以下在Delphi7中测试通过):

    ----------------------------------------------------------------------------------------------------------

    数据库连接前

    ConnectString="Provider=MSDAORA.1;Password=mypassword;User ID=yzs;Data Source=ydgl22;Persist Security Info=false"

    数据库连接成功后

    ConnectString="Provider=MSDAORA.1;User ID=yzs;Data Source=ydgl22"

    ----------------------------------------------------------------------------------------------------------

    数据库连接前

    ConnectString="Provider=MSDAORA.1;Password=mypassword;User ID=yzs;Data Source=ydgl22;Persist Security Info=true"

    数据库连接成功后

    ConnectString="Provider=MSDAORA.1;Password=mypassword;User ID=dlyx;Data Source=ydgl22"

    ----------------------------------------------------------------------------------------------------------

    总体来说,如果数据库连接成功后不再需要连接的密码,出于安全性考虑,还是建议将Persist Security Info设为false,以防止后门程序取得数据库连接的密码(windows2003在sp1前就发生过这个问题)。

  • 相关阅读:
    服务器端接受Json数据的绑定实现
    SQL 学习笔记
    asp.net mvc下的多语言方案 包含Html,Javascript和图片
    设计和创建自己的Sharepoint Site
    SharePoint类库简要总结
    TED-谷歌创始人演示谷歌眼睛
    为什么要有战争
    跨云应用部署:共享数据存储
    使用VNET-to-VNET连接Microsoft Azure国际版和中国版
    MySQL Database on Azure新功能
  • 原文地址:https://www.cnblogs.com/qixin622/p/1684829.html
Copyright © 2020-2023  润新知