日期:2014-05-17 浏览次数:20608 次
--对权限这块一直是糊里糊涂的,没整怎么明白,以前也看过一些资料,始终没弄懂
--所有步骤都是在SSMS下操作的,我先说说我的步骤,再说说我的疑惑
--(利用SA用户)创建登录名appuser1
--数据库DBTEST中有一张表dbo.t1
--在数据库DBTEST中--创建架构app1
--在数据库DBTEST中--创建用户名appuser1,默认架构为app1
--此时用户appuser1可以登录DBtest,但是没有任何建表以及增删查改的权限
--到这里也没问题,毕竟没有任何权限
--修改AppUser1授权为数据库角色成员的db_ddladmin
--可以create table了,因为有默认架构,创建的表为app1.t1
--同时也可以操作dbo.t1,包括增删查改,也可以drop dbo.t1
--我要怎么授权appuser1?
--让appuser1操作自己的架构app1下的数据库对象,
--“行使”其权限(创建app1下的数据库对象,对app1下的表增删查改等,但是不能操作甚至访问dbo.t1)
--目的就是,使这个用户在其指定的schema下,有足够的(创建数据库对象的)权限
--而不干涉不属于他的schema下的数据库对象
--这里的问题就是授权db_ddladmin后,权限似乎过大了。
--如果我要授权,这个步骤是否可行?或者有其他的授权方式?
--新建一个空库,在当前库中建个schema schema1,
--新建一个用户,授权db_ddladmin,默认架构为schema1
--让这个用户在这个库中随便折腾,是否可行?
--假如一个服务器上有数十个数据库,数百个呢?
--因为确实存在几百个“数据库”
--(我这里目前是oracle,oracle是表空间,就是在同一个实例下,几百个表空间)
--主要是我在想,换做sqlserver的话,改怎么管理这些库
--这个权限改如何管理?