You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

其他用户无法连接迁移至SQL Server的Access数据库:SQL Server错误4060

解决多用户通过Access前端连接SQL Server的权限问题

核心排查方向:SQL Server身份验证与权限配置

  • 确认SQL Server身份验证模式
    打开SQL Server Management Studio(SSMS),右键目标服务器→属性→安全性,确保选中「SQL Server和Windows身份验证模式」。若修改,需重启SQL Server服务生效。
  • 为用户Windows账号创建SQL登录并映射数据库权限
    1. 在SSMS的「安全性→登录名」右键→新建登录名
    2. 选择「Windows身份验证」,输入用户的域/本地账号(格式:DOMAIN\Username或SERVERNAME\Username)
    3. 切换到「用户映射」标签,勾选需要访问的目标数据库
    4. 在「数据库角色成员身份」中分配必要权限:至少勾选db_datareader和db_datawriter(满足基础读写需求),避免过度授权
    5. 确认默认架构为dbo或业务对应的架构,点击确定

修正ODBC File DNS配置问题

  • 匹配Access位数的ODBC版本
    若使用32位Access,必须用32位ODBC管理器配置/使用File DNS,路径为:C:\Windows\SysWOW64\odbcad32.exe。64位Access则用C:\Windows\System32\odbcad32.exe。确保分发给用户的File DNS是对应版本创建的。
  • 验证DNS的身份验证设置
    打开File DNS文件,确认连接选项中选中「使用Windows NT集成安全设置」,而非SQL Server身份验证。

检查SQL Server与Windows服务器配置

  • 确认SQL Server服务账户权限
    打开「服务」(services.msc),找到SQL Server服务,查看登录账户应为域账户或具有身份验证权限的账户,避免使用本地系统账户导致域用户验证失败。
  • 启用登录审计排查具体失败原因
    在SSMS中右键服务器→属性→安全性,将「登录审计」设为「失败的登录」,重启SQL Server服务。用户尝试连接后,查看「管理→SQL Server日志」,日志会明确标注拒绝原因(如登录名不存在、权限不足等)。

调整Access前端连接设置

  • 确认链接表的连接字符串
    在Access中,右键链接表→设计视图→属性,查看连接字符串是否包含Trusted_Connection=Yes或Integrated Security=SSPI,确保使用Windows集成身份验证。
  • 确保File DNS路径可访问
    若将File DNS放在共享文件夹,需确认所有用户对该文件夹有读取权限,Access前端能正确加载该DNS文件。

内容的提问来源于stack exchange,提问作者Hariharan Iyer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 22:36:33