EF Code First DropCreateDatabaseIfModelChanges的最小数据库权限

Tom*_*les 4 entity-framework ef-code-first entity-framework-4.3

我们正在使用EF4.3和Code First.

我们的DBA热衷于减少开发人员对开发数据库的权限.但是我们遇到过很多情况,当我们打电话时,我们无法创建数据库DropCreateDatabaseIfModelChanges

什么都能够调用都需要用户的最低数据库权限DropCreateDatabaseIfModelChangesDropCreateDatabaseAlways

这些需要不同的权限吗?

是否有任何文档可以引用我们的DBA来帮助解释所需的内容?

Lad*_*nka 5

两个初始化程序都需要删除和创建数据库的权限.这些操作需要非常不同的权限:

  • 数据库可以由其所有者删除 - 此权限已本地化到数据库(db_owner在SQL Server中).
  • 数据库只能由具有全局服务器权限的用户创建,以创建数据库 - 通常只向高权限用户提供权限(dbcreatorSQL Server中的角色)

您还需要在Master数据库上具有读访问权限.

顺便说一句.如果这与开发环境有关,则应使用自己的本地数据库服务器.