设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 5121|回复: 7

[ADO/DAO] 【源码】加强ODBC链接表安装性,链接表不存密码,全用代码链接链接表

[复制链接]

点击这里给我发消息

发表于 2015-6-24 16:38:23 | 显示全部楼层 |阅读模式
经常有网友会质疑ODBC链接表的安全性,担心链接表保存了链接到sql server数据库的用户名和密码,让sql server数据库不安全,以前专门写过这样的技巧,今天再重新整理出来,并做成通用的函数,分享给大家。这种方式我们从1999年的项目开始使用,一直使用到现在,基本上满足中小企业的安全要求。

1.将链接表(ODBC)连接的密码不保存在链接表中,而使用代码来连接,加强ODBC链接sql server的安全性。

  1. Public Function gf_LinkSqlServer() As Boolean
  2.    On Error GoTo Err_LinkSqlServer
  3.     Dim strConn As String, dbCurr As DAO.Database
  4.     strConn = "ODBC;" & _
  5.     "DRIVER=SQL Server;" & _
  6.     "SERVER=192.168.0.8,1433;" & _  '可设置自己的端口,默认为1433
  7.     "DATABASE=OfficeCn;" & _
  8.     "UID=OfficeCn;" & _  '用户ID
  9.     "PWD=123" '登录密码,而在链接表中请不要保存密码,以加强安全性
  10.     Set dbCurr = DBEngine.Workspaces(0).OpenDatabase("OfficeCn", False, False, strConn) 'OfficeCn 名称可随意给,只要有个名称就行
  11.     dbCurr.Close
  12.     Set dbCurr = Nothing
  13.     MsgBox "连接成功", vbInformation, "连接SQL Server"
  14.     gf_LinkSqlServer = True
  15.     Exit Function
  16. Err_LinkSqlServer:
  17.     Err.Clear
  18.     MsgBox "连接出错!", vbCritical, "连接SQL Server"
  19.     gf_LinkSqlServer = False
  20. End Function
复制代码

2. 以前写过的相关技巧


    1)代码自动创建ODBC源
        http://www.office-cn.net/thread-92751-1-1.html
   2)tsilon的Access-ODBC-SQL数据安全性可以如此提高的
        http://www.office-cn.net/thread-93957-1-1.html   
    3) sql server链接表的登录
       http://www.office-cn.net/thread-111016-1-1.html

发表于 2015-6-25 09:31:15 | 显示全部楼层
谢谢分享
回复

使用道具 举报

发表于 2015-6-25 11:03:23 | 显示全部楼层
赞一个!!站长大气!

点击这里给我发消息

发表于 2015-8-28 06:07:03 来自手机 | 显示全部楼层
今天试验了下,真是个好办法。还实现了 不建DSN 连接,很棒。
发表于 2015-12-13 21:14:18 | 显示全部楼层
学习了,很不错
发表于 2018-3-5 00:59:05 | 显示全部楼层
请问,使用函数连接sql后如何使用表呢
发表于 2023-5-21 22:40:39 | 显示全部楼层
谢谢大佬的分享!
发表于 2023-11-16 08:00:54 | 显示全部楼层
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-3-29 18:15 , Processed in 0.093835 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表