Sql server 为不具有sysadmin角色的用户提供使用SSM(或类似)从外部源附加/分离数据库的能力

Sql server 为不具有sysadmin角色的用户提供使用SSM(或类似)从外部源附加/分离数据库的能力,sql-server,permissions,ssms,sysadmin,Sql Server,Permissions,Ssms,Sysadmin,我到处寻找如何做到这一点。让我介绍一些背景知识,这样我们就可以避免重复同样的老东西 在我的公司,我们有时每月从外部来源收到数百个数据库,也就是说,我们不知道这些数据库上存在哪些数据库用户,而且永远不会。我希望让我的分析师使用SSM或其他图形工具连接这些数据库,而不给他们系统管理员服务器角色 根据我的研究,服务器角色dbcreator和bulkadmin???附加数据库时需要使用;但是,对于没有sysadmin服务器角色的用户,SSMS似乎甚至不会显示“附加”对话框 尽管我更喜欢一组允许没有系统管

我到处寻找如何做到这一点。让我介绍一些背景知识,这样我们就可以避免重复同样的老东西

在我的公司,我们有时每月从外部来源收到数百个数据库,也就是说,我们不知道这些数据库上存在哪些数据库用户,而且永远不会。我希望让我的分析师使用SSM或其他图形工具连接这些数据库,而不给他们系统管理员服务器角色

根据我的研究,服务器角色dbcreator和bulkadmin???附加数据库时需要使用;但是,对于没有sysadmin服务器角色的用户,SSMS似乎甚至不会显示“附加”对话框

尽管我更喜欢一组允许没有系统管理员角色的用户使用SSM或其他GUI工具来连接/分离数据库的权限,但我对任何方法都感兴趣


有什么想法吗?谢谢。

您是否考虑过创建一个存储过程,使用EXECUTE AS附加或分离数据库,授予他们执行权限,并让他们学习如何执行存储过程,而不是浏览SSMS UI?如果这是不可能的,你可以随时使用C或VB编写一个调用存储过程的快速windows窗体应用程序……你的第二部分——编写一个调用使用执行方式的存储过程的自定义应用程序——正是我脑子里想的。我不想做,因为即使我认为我能做,我也没有太多的时间来投入这样的项目。我还担心编写一些允许用户从远程服务器选择多个文件的内容。虽然我知道有一些组件可以用于此,但我不是一名开发人员,我是一名多面手IT管理员。关于这种东西的现成工具有什么想法吗?我不知道。但是你肯定可以教你的用户执行几行代码吗?:-好吧,即使我也不愿意输入20多个完整路径名。当然,如果我修改我的附加数据库脚本(我不久前编写的PowerShell脚本),它们只需将*.mdf的目录输出转储到脚本中,它就可以调用存储的进程。我希望不用再写脚本了。哈哈,好吧。因此,您不希望必须键入任何内容,也不希望用户必须键入任何内容。我想你应该重新贴上标签-