我正在尝试建立一个平滑的部署过程,我们可以使用单个部署脚本部署到生产或开发 SQL 服务器。
但我不知道如何最好地管理两个环境之间的用户和权限。例如,在开发中,我们希望开发人员组具有db_owner
数据库角色。在生产中,我们要么不想要访问权限,要么只想要datareader
角色。
我认为最简单的方法是在每台服务器上设置一次用户,然后不将它们保留在数据库项目中。但随后它们在部署过程中被丢弃。
有什么方法可以使用 Visual Studio 中的项目配置来做到这一点?
我们正在使用完整的 Microsoft 堆栈
- Visual Studio 2010 数据库项目
- SQL Server 2008
- TFS 版本控制和构建服务器
vsdbcmd
用于部署