SQL Server 2005从入门到精通 -- 学习笔记2 -- 数据库安全基本原则

    技术2022-05-11  75

    在SQL Server 2005中,有以下几个概念需要区分:

    登录(Login) 数据库用户(User) 数据库角色(Role) 应用程序角色(Application Role) 登录是在使用混合验证模式时候,登录到SQL Server的用户。使用语句如下: CREATE  LOGIN Mary WITH  PASSWORD  =   ' asdflk '  MUST_CHANGE,CHECK_EXPIRATION  =   ON ,CHECK_POLICY  =   ON ; 可以使用如下的语句查看登录名: select   *   from  sys.sql_logins 以下是一些授权语句: -- 在服务器角色中增加登录名 EXECUTE  sp_addsrvrolemember  ' Mary '  ,  ' sysadmin ' ; -- 从服务器角色中删除掉登录名 EXECUTE  sp_dropsrvrolemember  ' Mary ' ' sysadmin ' ; -- 单独授予权限 GRANT   ALTER  TRACE  TO  Mary;   数据库用户和角色:单单可以让用户登录到数据库是不够的,我们需要对这些登录进行更加细致的权限的控制,这里使用了数据库用户和角色的方法。这里使用了RBAC(基于角色的权限控制),将权限赋予到角色身上,在将用户赋予角色,从而减少了维护权限结构的工作量。创建用户并联系到登录 CREATE  LOGIN Peter  WITH  PASSWORD  =   ' asdf ' ; USE  DBNAME; GO CREATE   USER  Peter  FOR  LOGIN Peter; 授权操作: -- 增加用户到角色 EXECUTE  sp_addrolemember  ' Auditors ' ' Peter ' ; -- 检查是否是角色 SELECT   IS_MEMBER ( ' db_owner ' ) --  去掉用户 EXECUTE  sp_droprolemember  ' Auditors ' , ‘Peter’; -- 小权限粒度的授予 GRANT   BACKUP   DATABASE   TO  Peter   应用程序角色应用程序角色权限是特殊的数据库劫色,用户允许用户通过特定应用程序获取特定的数据。以下是一些代码: USE  DBNAME GO CREATE  APPLICATION ROLE FinancialRole WITH  PASSWORD  =   ' ASDF '

    最新回复(0)