非Intranet环境下MSAccess数据库连接SQL Server后端可行性咨询
MSAccess外网连接公网SQL Server 实现说明
可以实现,但需要完成服务器、网络、Access端三类配置调整,无法直接发送原内网用的Access文件就完成连接。
所需配置步骤
1. SQL Server 端配置
- 打开SQL Server配置管理器,启用对应实例的TCP/IP协议,设置固定监听端口(默认1433,建议修改为自定义端口降低攻击风险),修改后重启SQL Server服务生效。
- 将SQL Server身份验证模式调整为「SQL Server和Windows身份验证模式」,不要仅使用Windows集成验证。新建独立的对外访问账号,仅授予该账号所需的最小数据库权限,禁止直接使用sa账号对外提供访问。
2. 网络与防火墙配置
- 如果你的SQL Server服务器部署在内网环境下,需要在出口路由器上配置端口映射,将SQL Server监听的TCP端口映射到服务器的内网IP对应端口。
- 确认服务器所在网络有公网IP,如果是动态公网IP,可配置动态域名解析服务保证访问地址稳定。
- 放开服务器系统防火墙、公网出口防火墙的对应TCP端口入站权限,可限定仅允许你好友的公网IP访问,进一步降低安全风险。
3. Access 数据库端调整
- 修改Access内的链接表、查询所用的连接字符串,将原内网环境下的服务器地址(内网IP/计算机名)替换为你的公网IP/动态域名,同时将身份验证参数调整为SQL Server账号密码模式。
- 参考ODBC连接字符串格式如下:
Driver={ODBC Driver 17 for SQL Server};Server=你的公网IP,自定义端口;Database=目标库名;Uid=对外访问账号;Pwd=对应密码;
重要安全提示:直接将SQL Server端口暴露在公网会面临大量漏洞扫描、暴力破解攻击,非必要情况下建议优先使用VPN方案,让好友先接入VPN再访问SQL Server,安全性远高于直接开放公网端口。
内容的提问来源于stack exchange,提问作者Johnny Bones
相关产品推荐
相关产品推荐

