如何为RDP普通用户授予SQL Server数据库连接权限
如何为RDP普通用户授予SQL Server数据库连接权限
我来帮你搞定这个问题~ 你的应用用的是Windows集成身份验证(也就是连接字符串里的Integrated Security=True),普通RDP用户连不上数据库的核心原因是:这些Windows用户没有被授予SQL Server的登录权限,以及对应数据库的访问权限,咱们一步步来配置:
第一步:为Windows用户创建SQL Server登录名
- 用你的管理员账号打开SQL Server Management Studio(SSMS)
- 展开左侧导航栏的「安全性」→「登录名」,右键点击「新建登录名」
- 在「常规」选项卡选择「Windows身份验证」,点击「搜索」按钮,输入普通RDP用户的账号(比如
ad\thisuser),确认选中该用户 - (进阶技巧)如果有多个RDP用户需要访问,建议把他们加到同一个Windows安全组里,直接给这个安全组创建登录名,后续管理会更省心
第二步:授予登录用户数据库访问权限
- 找到刚创建的登录名,右键点击「属性」,切换到「用户映射」选项卡
- 找到你的目标数据库(就是连接字符串里的
DB),勾选它 - 在下方的「数据库角色成员身份」区域,至少勾选
db_datareader和db_datawriter(满足应用的基本读写需求),如果不需要高权限,别选db_owner哦 - 点击「确定」保存所有设置
第三步:验证权限是否生效
让普通RDP用户重新登录服务器,打开应用测试连接就行。如果还是有问题,可以检查下SQL Server的身份验证模式:右键服务器→「属性」→「安全性」,确认选中的是「SQL Server和Windows身份验证模式」
另外补充一句:因为你的数据库是本地的(Data Source=localhost),所以之前开启TCP/IP确实没必要,SQL Server用共享内存协议就能正常通信啦。
备注:内容来源于stack exchange,提问作者Mambo Software
相关产品推荐
相关产品推荐

