2016-04-26 65 views
0

我有解决方案,其中包含多个数据库。我想为该项目添加登录/用户/权限。我有一个DB项目,它引用为同一服务器上但不同数据库中的数据库创建的数据库项目。在多数据库SSDT解决方案中处理登录

当我添加登录和第一个项目的用户一切正常。之后,我将用户添加到第二个数据库项目中(因为服务器是相同的,我不需要再次创建登录)。然后该构建投诉用户有o登录。如果我添加登录第二个项目则抱怨对象已经存在......

我不知道什么是我的问题的解决方案,但我想有这样的:

  1. 项目“DbA”具有项目中的登录和用户;
  2. 项目“DbB”在使用来自项目“DbA”的项目的项目中拥有用户。

欢迎任何其他建议。

编辑: 作为一种解决方法,我已经创建了一个新项目,我添加了这个登录名,并且添加了这个项目作为所有需要的数据库的参考,但是我不太喜欢这个解决方案。

回答

0

我将解决方案中的登录/用户信息取出,主要是因为我们根据环境使用了不同的解决方案。然后我们用后期部署脚本添加/调整了它们。这是基于杰米汤姆森的工作,但可能会对您有所帮助:http://schottsql.blogspot.com/2013/05/ssdt-setting-different-permissions-per.html

或者,您可以将登录信息添加到每个项目,但也可能会在一段时间后维护麻烦。如果SSDT已经存在,SSDT应该足够聪明以免混淆登录。

+0

是的,通常我正在使用你正在谈论的方法。但是在那种情况下,我尝试着解决问题。正如我在问题中所标记的那样,我发现了解决方法并且它可以工作,但是它不是很容易维护。 –