sql服务器用户login上需要最小权限是多少,才能运行实体框架代码先行数据库迁移?
我天真地以为,一个用户拥有db_datareader、db_datawriter、Grant Alter on the Schema和Grant Create Table这两个角色就足够允许了。
On-Prem: SQL服务器与ADsql登录
你需要在数据库上获得以下权限。
[db_datareader]
[db_datawriter]
[db_ddladmin]
为了完全控制数据库,请使用
[db_owner]
Azure可以。Azure SQL与ADD (编辑)
请在主数据库和用户数据库中添加[dbmanager]。
很明显,这取决于你的迁移是(将)做什么。在我的使用案例中,我最终创建了一个shema,并将迁移使用的用户限制为以下权限。
GRANT ALTER, INSERT, SELECT, DELETE, UPDATE, REFERENCES ON SCHEMA::schema_name TO migration_user
GRANT CREATE TABLE TO migration_user