【发布时间】:2018-01-26 21:09:26
【问题描述】:
我的任务是创建一个用户组,数据库的用户可以在其中创建对象,但只能在他们自己的用户名的模式下。例如,用户 foo\bar 只能在模式 'foo\bar' 上创建对象。这是可以做到的吗?
我正在开发 MS SQL Server 2012。任何反馈都将不胜感激。
【问题讨论】:
标签: sql-server-2012 usergroups database-permissions
我的任务是创建一个用户组,数据库的用户可以在其中创建对象,但只能在他们自己的用户名的模式下。例如,用户 foo\bar 只能在模式 'foo\bar' 上创建对象。这是可以做到的吗?
我正在开发 MS SQL Server 2012。任何反馈都将不胜感激。
【问题讨论】:
标签: sql-server-2012 usergroups database-permissions
不是一个完整的答案,而是我想到的第一件事:创建用户时,还要创建架构并授予该用户对该架构的创建权限。
CREATE USER 'Foo\bar' --FOR LOGIN / WITHOUT LOGIN ?? see url below
CREATE SCHEMA 'Foo\bar'
GRANT CREATE TABLE ON 'Foo\bar' TO 'Foo\bar'
见:https://docs.microsoft.com/en-us/sql/t-sql/statements/create-user-transact-sql 和https://docs.microsoft.com/en-us/sql/t-sql/statements/grant-database-permissions-transact-sql
【讨论】: