SQL-Server系统安全管理ppt课件.ppt
《SQL-Server系统安全管理ppt课件.ppt》由会员分享,可在线阅读,更多相关《SQL-Server系统安全管理ppt课件.ppt(56页珍藏版)》请在咨信网上搜索。
第第10章章 系统安全管理系统安全管理10.1 SQL Server 2014的安全机制的安全机制10.2 建立和管理用户账户建立和管理用户账户10.3 角角 色色 管管 理理10.4 数据库权限的管理数据库权限的管理10.5 数据库架构的定义和使用数据库架构的定义和使用110.1 SQL Server 2014的安全机制的安全机制10.1.1 SQL Server 身份验证模式身份验证模式身份验证模式是指系统确认用户的方式。SQLServer有两种身份验证模式:Windows验证模式和SQLServer验证模式。这是在安装SQLServer的过程中由“数据库引擎配置”确定的,如图10.1所示。210.1.1 SQL Server 身份验证模式身份验证模式1Windows验证模式验证模式用户登录Windows时进行身份验证,登录SQLServer时就不再进行身份验证了。注意:(1)必须将Windows账户加入到SQLServer中,才能采用Windows账户登录SQLServer。(2)如果使用Windows账户登录到另一个网络的SQLServer,则必须在Windows中设置彼此的托管权限。2SQL Server验证模式验证模式在SQLServer验证模式下,SQLServer服务器要对登录的用户进行身份验证。系统管理员必须设定登录验证模式的类型为混合验证模式。当采用混合模式时,SQLServer系统既允许使用Windows登录名登录,也允许使用SQLServer登录名登录。310.1.2 SQL Server安全性机制安全性机制1服务器级别服务器级别服务器级别所包含的安全对象主要有登录名、固定服务器角色等。其中,登录名用于登录数据库服务器,而固定服务器角色用于给登录名赋予相应的服务器权限。SQLServer中的登录名主要有两种:第一种是Windows登录名,第二种是SQLServer登录名。Windows登录名对应Windows验证模式,该验证模式所涉及的账户类型主要有Windows本地用户账户、Windows域用户账户、Windows组。2数据库级别数据库级别数据库级别所包含的安全对象主要有用户、角色、应用程序角色、证书、对称密钥、非对称密钥、程序集、全文目录、DDL事件、架构等。用户安全对象是用来访问数据库的。如果某人只拥有登录名,而没有在相应的数据库中为其创建登录名所对应的用户,则该用户只能登录数据库服务器,而不能访问相应的数据库。410.1.2 SQL Server安全性机制安全性机制3架构级别架构级别架构级别所包含的安全对象有表、视图、函数、存储过程、类型、同义词、聚合函数等。在创建这些对象时可设定架构,若不设定则系统默认架构为dbo。数据库用户只能对属于自己架构中的数据库对象执行相应的数据操作。至于操作的权限则由数据库角色决定。例如,若某数据库中的表A属于架构S1,表B属于架构S2,而某用户默认的架构为S2,如果没有授予用户操作表A的权限,则该用户不能对表A执行相应的数据操作。但是,该用户可以对表B执行相应的操作。510.1.3 SQL Server数据库安全验证过程数据库安全验证过程一个用户如果要对某一数据库进行操作,则必须满足以下三个条件:(1)登录SQLServer服务器时必须通过身份验证。(2)必须是该数据库的用户,或者是某一数据库角色的成员。(3)必须有对数据库对象执行该操作的权限。610.1.3 SQL Server数据库安全验证过程数据库安全验证过程不管使用哪种验证方式,用户都必须具备有效的Windows用户登录名。SQLServer有两个常用的默认登录名:sa和计算机名Windows管理员账户名。其中,sa是系统管理员,在SQLServer中拥有系统和数据库的所有权限,如图10.2所示。710.2 建立和管理用户账户建立和管理用户账户10.2.1 以界面方式管理用户账户以界面方式管理用户账户1建立建立Windows验证模式的登录名验证模式的登录名(1)创建Windows的用户。以管理员身份登录到Windows,打开控制面板,完成新用户“liu”的创建。(2)将Windows账户加入到SQLServer中。以管理员身份登录到“SSMS”,在“对象资源管理器”中,在“安全性”下选择“登录名”项。右击鼠标,在弹出的快捷菜单中选择“新建登录名”,打开“登录名-新建”窗口。可以通过单击“常规”选项页的“搜索”按钮,在“选择用户或组”对话框的“输入要选择的对象名称”中输入“liu”,然后单击“检查名称”按钮,系统生成“PC-201412101514liu”(如图10.3所示),单击“确定”按钮,回到“登录名-新建”窗口。810.2.1 以界面方式管理用户账户以界面方式管理用户账户在登录名中就会显示完整名称。选择默认数据库为“pxscj”,如图10.4所示。910.2.1 以界面方式管理用户账户以界面方式管理用户账户2建立建立SQL Server验证模式的登录名验证模式的登录名(1)将验证模式设为混合模式。以系统管理员身份登录“SSMS”,在“对象资源管理器”中选择要登录的SQLServer服务器图标,右击鼠标,在弹出的快捷菜单中选择“属性”菜单项,打开“服务器属性”窗口。选择“安全性”选项页。选择服务器身份验证为“SQLServer和Windows身份验证模式”,如图10.5所示。1010.2.1 以界面方式管理用户账户以界面方式管理用户账户(2)创建SQLServer验证模式的登录名。在“对象资源管理器”中“安全性”下的“登录名”上按右键,选择“新建登录名”,系统显示“登录名-新建”对话框。选择“SQLServer身份验证”,登录名输入“SQL_liu”,输入密码和确认密码“123”,并将“强制密码过期”复选框中的钩去掉,默认数据库为“pxscj”,如图10.6所示。单击“确定”按钮即可。1110.2.1 以界面方式管理用户账户以界面方式管理用户账户3管理数据库用户管理数据库用户(1)以登录名新建数据库用户。以系统管理员身份连接SQLServer,展开“数据库”这里可选“pxscj”“安全性”,选择“用户”,右击鼠标,选择“新建用户”菜单项,进入“数据库用户-新建”窗口。在“登录名”框中填写一个能够登录SQLServer的登录名,如“SQL_liu”。在“用户名”框中填写一个数据库用户名“User_SQL_liu”。一个登录名在本数据库中只能创建一个数据库用户。这里可选择默认架构为dbo,如图10.7所示。1210.2.1 以界面方式管理用户账户以界面方式管理用户账户图10.7新建数据库用户(SQLServer登录名)1310.2.1 以界面方式管理用户账户以界面方式管理用户账户也可采用上述方法在pxscj数据库下新建Windows登录名“liu”对应的用户“User_liu”,如图10.8所示。1410.2.1 以界面方式管理用户账户以界面方式管理用户账户(2)数据库用户显示。)数据库用户显示。数据库用户创建成功后,可以通过选择“pxscj”“安全性”,选择“用户”栏查看到该用户。在“用户”列表中,还可以修改现有数据库用户的属性,或者删除该用户。(3)以)以SQL Server登录名连接登录名连接SQL Server。重启SQLServer,在对话框的“身份验证”框中选择“SQLServer身份验证”,“登录名”填写为“SQL_liu”,输入密码“123”,单击“连接”按钮,即可连接SQLServer,如图10.9所示。1510.2.1 以界面方式管理用户账户以界面方式管理用户账户此时的“对象资源管理器”如图10.10所示。1610.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER1登录名创建登录名创建1)创建登录名)创建登录名语法格式:CREATELOGIN登录名WITHPASSWORD=密码HASHEDMUST_CHANGE,./*WITH子句用于创建SQLServer登录名*/|FROM/*FROM子句用于创建其他登录名*/WINDOWSWITH,.|CERTIFICATE证书名|ASYMMETRICKEY非对称密钥名1710.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER其中::=SID=登录GUID|DEFAULT_DATABASE=数据库|DEFAULT_LANGUAGE=语言|CHECK_EXPIRATION=ON|OFF|CHECK_POLICY=ON|OFFCREDENTIAL=凭据名:=DEFAULT_DATABASE=数据库|DEFAULT_LANGUAGE=语言1810.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER(1)创建)创建Windows验证模式登录名。验证模式登录名。创建Windows登录名使用FROM子句,在FROM子句的语法格式中,WINDOWS关键字指定将登录名映射到Windows登录名,其中,为创建Windows登录名的选项,DEFAULT_DATABASE指定默认数据库,DEFAULT_LANGUAGE指定默认语言。【例10.1】以命令方式创建Windows登录名tao(假设Windows用户tao已经创建,本地计算机名为“PC-201412101514”),默认数据库设为pxscj。USEpxscjGOCREATELOGINPC-201412101514taoFROMWINDOWSWITHDEFAULT_DATABASE=pxscj命令执行成功后,在“登录名”“安全性”列表上就可以查看到该登录名。1910.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER(2)创建)创建SQL Server验证模式登录名。验证模式登录名。创建SQLServer登录名使用WITH子句,其中,PASSWORD:用于指定正在创建的登录名的密码,“密码”为密码字符串。HASHED选项指定在PASSWORD参数后输入的密码已经过哈希运算。:用于指定在创建SQLServer登录名时的如下选项。SID:指定新SQLServer登录名的全局唯一标识符。如果未选择此选项,则自动指派。DEFAULT_DATABASE:指定默认数据库。如果未指定此选项,则默认数据库将设置为master。DEFAULT_LANGUAGE:指定默认语言。如果未指定此选项,则默认语言将设置为服务器的当前默认语言。CHECK_EXPIRATION:指定是否对此登录名强制实施密码过期策略,默认值为OFF。CHECK_POLICY:指定应对此登录名强制实施运行SQLServer的计算机的Windows密码策略,默认值为ON。【例10.2】创建SQLServer登录名SQL_tao,密码为123456,默认数据库设为pxscj。CREATELOGINSQL_taoWITHPASSWORD=123456,DEFAULT_DATABASE=pxscj2010.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER2)删除登录名)删除登录名删除登录名使用DROPLOGIN命令。语法格式:DROPLOGIN登录名例如,删除Windows登录名tao和SQLServer登录名SQL_tao。DROPLOGINPC-201412101514taoDROPLOGINSQL_tao2110.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER2数据库用户创建数据库用户创建1)创建数据库用户)创建数据库用户创建数据库用户使用CREATEUSER命令。语法格式:CREATEUSER用户名FOR|FROMLOGIN登录名|CERTIFICATE证书名|ASYMMETRICKEY非对称密钥名|WITHOUTLOGINWITHDEFAULT_SCHEMA=架构名2210.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER【例10.3】使用SQLServer登录名SQL_tao和Windows登录名PC-201412101514tao在pxscj数据库中创建数据库用户User_SQL_tao和User_tao,默认架构名使用dbo。USEpxscjGOCREATEUSERUser_SQL_taoFORLOGINSQL_taoWITHDEFAULT_SCHEMA=dboCREATEUSERUser_taoFORLOGINPC-201412101514taoWITHDEFAULT_SCHEMA=dbo命令执行成功后,可以在数据库pxscj的“安全性”下的“用户”列表中查看到该数据库用户。2310.2.2 以命令方式管理用户账户:以命令方式管理用户账户:CREATE LOGIN/USER2)删除数据库用户)删除数据库用户删除数据库用户使用DROPUSER语句。语法格式:DROPUSER用户名“用户名”为要删除的数据库用户名,在删除之前要使用USE语句指定数据库。例如,删除pxscj数据库的数据库用户User_SQL_tao。USEpxscjGODROPUSERUser_SQL_tao,User_tao2410.3 角角 色色 管管 理理10.3.1 固定服务器角色固定服务器角色SQLServer提供了以下固定服务器角色。(1)sysadmin:系统管理员,角色成员可对SQLServer服务器进行所有的管理工作,为最高管理角色。(2)securityadmin:安全管理员,角色成员可以管理登录名及其属性,可以授予、拒绝、撤销服务器级和数据库级的权限,还可以重置SQLServer登录名的密码。(3)serveradmin:服务器管理员,角色成员具有对服务器进行设置及关闭服务器的权限。(4)setupadmin:设置管理员,角色成员可以添加和删除链接服务器,并执行某些系统存储过程。(5)processadmin:进程管理员,角色成员可以终止SQLServer实例中运行的进程。(6)diskadmin:用于管理磁盘文件。(7)dbcreator:数据库创建者,角色成员可以创建、更改、删除或还原任何数据库。(8)bulkadmin:可执行BULKINSERT语句,但是这些成员对要插入数据的表必须有INSERT权限。(9)public:其角色成员可以查看任何数据库。2510.3.1 固定服务器角色固定服务器角色1界面方式添加服务器角色成员界面方式添加服务器角色成员(1)以系统管理员身份登录到SQLServer服务器,在“对象资源管理器”中展开“安全性”“登录名”,选择登录名,例如“PC-201412101514tao”,双击或右击选择“属性”菜单项,打开“登录属性”窗口。(2)在打开的“登录属性”窗口中选择“服务器角色”选项页,在“登录属性”窗口右边列出了所有的固定服务器角色,用户可以根据需要,在服务器角色前的复选框中打钩,来为登录名添加相应的服务器角色。此处默认已经选择了“public”服务器角色。单击“确定”按钮完成添加。2610.3.1 固定服务器角色固定服务器角色2利用利用“系统存储过程系统存储过程”添加固定服务器角色成员添加固定服务器角色成员利用系统存储过程sp_addsrvrolemember可将一登录名添加到某一固定服务器角色中,使其成为固定服务器角色的成员。语法格式:sp_addsrvrolemember登录名=login,角色名=role参数含义:login指定添加到固定服务器角色role的登录名,login可以是SQLServer登录名或Windows登录名;对于Windows登录名,如果还没有授予SQLServer访问权限,将自动对其授予访问权限。【例10.4】将SQLServer登录名“SQL_tao”添加到sysadmin固定服务器角色中。EXECsp_addsrvrolememberSQL_tao,sysadmin2710.3.1 固定服务器角色固定服务器角色3利用利用“系统存储过程系统存储过程”删除固定服务器角色成员删除固定服务器角色成员利用sp_dropsrvrolemember系统存储过程可从固定服务器角色中删除SQLServer登录名或Windows登录名。语法格式:sp_dropsrvrolemember登录名=login,角色名=role参数含义:login为将要从固定服务器角色删除的登录名。role为服务器角色名,默认值为NULL,必须是有效的固定服务器角色名。例如,从sysadmin固定服务器角色中删除SQLServer登录名SQL_tao。EXECsp_dropsrvrolememberSQL_tao,sysadmin2810.3.2 固定数据库角色固定数据库角色(1)db_owner:数据库所有者,这个数据库角色的成员可执行数据库的所有管理操作。(2)db_accessadmin:数据库访问权限管理者,角色成员具有增加、删除数据库使用者、数据库角色和组的权限。(3)db_securityadmin:数据库安全管理员,角色成员具有可管理数据库中的权限,如设置数据库表的增加、删除、修改和查询等存取权限。(4)db_ddladmin:数据库DDL管理员,角色成员可增加、修改或删除数据库中的对象。(5)db_backupoperator:数据库备份操作员,角色成员具有执行数据库备份的权限。(6)db_datareader:数据库数据读取者,角色成员可以从所有用户表中读取数据。(7)db_datawriter:数据库数据写入者,角色成员具有对所有用户表进行增加、删除、修改的权限。(8)db_denydatareader:数据库拒绝数据读取者,角色成员不能读取数据库中任何表的内容。(9)db_denydatawriter:数据库拒绝数据写入者,角色成员不能对任何表进行增加、删除、修改操作。(10)public:一个特殊的数据库角色,每个数据库用户都是public角色的成员,因此不能将用户、组或角色指派为public角色的成员,也不能删除public角色的成员。通常,将一些公共的权限赋给public角色。2910.3.2 固定数据库角色固定数据库角色1以界面方式添加固定数据库角色成员以界面方式添加固定数据库角色成员(1)以系统管理员身份登录到SQLServer服务器,在“对象资源管理器”中展开“数据库”“pxscj”“安全性”“用户”,选择一个数据库用户,如“User_tao”,双击或单击右键选择“属性”菜单项,打开“数据库用户”窗口。(2)在打开的窗口中,在“常规”选项页的“数据库角色成员身份”栏中,用户可以根据需要,在数据库角色前的复选框中打钩,为数据库用户添加相应的数据库角色,单击“确定”按钮完成添加。(3)查看固定数据库角色的成员。在“对象资源管理器”中,在pxscj数据库下的“安全性”“角色”“数据库角色”目录下,选择“数据库角色”,如“db_owner”,右击选择“属性”菜单项,在“属性”窗口中的“角色成员”栏下可以看到该数据库角色的成员列表。3010.3.2 固定数据库角色固定数据库角色2利用系统存储过程添加固定数据库角色成员利用系统存储过程添加固定数据库角色成员利用系统存储过程sp_addrolemember可以将一个数据库用户添加到某一固定数据库角色中,使其成为该固定数据库角色的成员。语法格式:sp_addrolemember角色名=role,成员名=security_account参数含义:role为当前数据库中的数据库角色的名称。security_account为添加到该角色的安全账户,可以是数据库用户或当前数据库角色。【例10.5】将pxscj数据库上的数据库用户User_sql_tao、User_tao添加为固定数据库角色db_owner的成员。USEpxscjGOEXECsp_addrolememberdb_owner,User_SQL_taoEXECsp_addrolememberdb_owner,User_tao3110.3.2 固定数据库角色固定数据库角色3利用系统存储过程删除固定数据库角色成员利用系统存储过程删除固定数据库角色成员利用系统存储过程sp_droprolemember可以将某一成员从固定数据库角色中去除。语法格式:sp_droprolemember角色名=role,成员名=security_account例如,将数据库用户User_SQL_tao从db_owner中去除。EXECsp_droprolememberdb_owner,User_SQL_taoEXECsp_droprolememberdb_owner,User_tao3210.3.3 自定义数据库角色:自定义数据库角色:CREATE/DROP ROLE1界面方式创建数据库角色界面方式创建数据库角色(1)创建数据库角色。)创建数据库角色。以Windows系统管理员身份连接SQLServer,在“对象资源管理器”中展开“数据库”,选择要创建角色的数据库(如pxscj),展开其中的“安全性”“角色”,右击鼠标,在弹出的快捷菜单中选择“新建”菜单项,在弹出的子菜单中选择“新建数据库角色”菜单项,进入“数据库角色-新建”窗口。在“数据库角色-新建”窗口中,选择“常规”选项页,输入要定义的角色名称(如ROLE1),所有者默认为dbo。直接单击“确定”按钮,完成数据库角色的创建,如图10.11所示。3310.3.3 自定义数据库角色:自定义数据库角色:CREATE/DROP ROLE图10.11新建数据库角色3410.3.3 自定义数据库角色:自定义数据库角色:CREATE/DROP ROLE(2)将数据库用户加入数据库角色。)将数据库用户加入数据库角色。将用户加入自定义数据库角色的方法与将用户加入固定数据库角色的方法类似。例如,将pxscj数据库的用户User_tao加入ROLE1角色。此时数据库角色ROLE1的成员还没有任何的权限,当授予数据库角色权限时,这个角色的成员也将获得相同的权限。当数据库用户成为某一数据库角色的成员之后,该数据库用户就获得该数据库角色所拥有的对数据库操作的权限。3510.3.3 自定义数据库角色:自定义数据库角色:CREATE/DROP ROLE2命令创建数据库角色命令创建数据库角色(1)定义数据库角色。创建用户自定义数据库角色可以使用CREATEROLE语句。语法格式:CREATEROLE角色名AUTHORIZATION所有者名【例10.6】在当前数据库中创建名为ROLE2的新角色,并指定dbo为该角色的所有者。USEpxscjGOCREATEROLEROLE2AUTHORIZATIONdbo(2)给数据库角色添加成员。向用户定义数据库角色添加成员也使用存储过程sp_addrolemember,用法与之前介绍的基本相同。【例10.7】将SQLServer登录名创建的pxscj的数据库用户User_SQL_tao添加到数据库角色ROLE1中。将数据库角色ROLE2添加到ROLE1中。EXECsp_addrolememberROLE1,User_SQL_taoEXECsp_addrolememberROLE1,ROLE23610.3.3 自定义数据库角色:自定义数据库角色:CREATE/DROP ROLE3命令删除数据库角色命令删除数据库角色要删除数据库角色可以使用DROPROLE语句。语法格式:DROPROLE角色名其中,“角色名”为要删除的数据库角色的名称。【例10.8】删除数据库角色ROLE2。在删除ROLE2之前,首先需要将ROLE2中的成员删除,可以使用界面方式,也可以使用命令方式。若使用界面方式,只需在ROLE2的属性页中操作即可。确认ROLE2可以删除后,使用以下命令删除ROLE2:DROPROLEROLE23710.3.4 应用程序角色应用程序角色创建应用程序角色步骤如下:(1)以系统管理员身份连接SQLServer,在“对象资源管理器”窗口中展开“数据库”“pxscj”“安全性”“角色”,右击“应用程序角色”,选择“新建应用程序角色”。(2)在“应用程序角色-新建”窗口中输入应用程序角色名称“APPRole”,默认架构“dbo”,设置密码为“123”,如图10.12所示。3810.3.4 应用程序角色应用程序角色图10.12 新建应用程序角色(常规)3910.3.4 应用程序角色应用程序角色在“安全对象”选项页中,可以单击“搜索”按钮,添加“特定对象”,选择对象为xsb表。单击“确定”按钮回到“安全对象”选项页中,授予xsb表的“选择”权限(如图10.13所示),完成后单击“确定”按钮。4010.3.4 应用程序角色应用程序角色(3)添加User_SQL_tao用户为db_denydatareader数据库角色的成员,使用“SQL_tao”登录名连接SQLServer。此后,在查询窗口中输入如下语句:USEpxscjGOSELECT*FROMxsb运行结果显示出错信息。(4)使用系统存储过程sp_setapprole激活应用程序角色,语句如下:EXECsp_setapproleAPPRole,123(5)在查询窗口中重新输入第(3)步中的查询语句,成功地执行了查询。4110.4 数据库权限的管理数据库权限的管理10.4.1 授予权限:授予权限:GRANT1以命令方式授予权限以命令方式授予权限利用GRANT语句可以给数据库用户或数据库角色授予数据库级别或对象级别的权限。语法格式:GRANTALLPRIVILEGES|权限(列,.),.ON安全对象TO主体,.WITHGRANTOPTIONAS主体【例10.9】给pxscj数据库上的用户User_liu和User_SQL_liu授予创建表的权限。以系统管理员(sa)身份登录SQLServer,新建一个查询,输入以下语句:USEpxscjGOGRANTCREATETABLETOUser_liu,User_SQL_liu,Role1GO说明:授予数据库级权限时,CREATEDATABASE权限只能在master数据库中被授予。4210.4.1 授予权限:授予权限:GRANT【例10.10】首先在pxscj数据库中给public角色授予xsb表的SELECT权限。然后,将其他一些权限授予用户User_liu和User_SQL_liu,使用户有对xsb表的所有操作权限。以系统管理员身份登录SQLServer,新建一个查询,输入以下语句:USEpxscjGOGRANTSELECTONxsbTOpublic,Role2GOGRANTINSERT,UPDATE,DELETE,REFERENCESONxsbTOUser_liu,User_SQL_liuGO4310.4.1 授予权限:授予权限:GRANT2以界面方式授予语句权限以界面方式授予语句权限1)授予数据库的权限)授予数据库的权限【例10.11】数据库用户User_SQL_tao授予pxscj数据库的CREATETABLE语句的权限(即创建表的权限)。(1)选择“pxscj”数据库,右击鼠标,选择“属性”菜单项进入pxscj数据库的“数据库属性”窗口,选择“权限”页。在“用户或角色”栏中选择需要授予权限的用户或角色:User_SQL_tao,在窗口下方列出的“权限”列表中找到相应的权限:创建表,在复选框中打钩,单击“确定”按钮即可完成,如图10.14所示。(2)如果需要授予权限的用户在列出的“用户或角色”列表中不存在,则可以单击“搜索”按钮将该用户添加到列表中再选择。单击“有效”选项卡可以查看该用户在当前数据库中有哪些权限。4410.4.1 授予权限:授予权限:GRANT图10.14“数据库属性”窗口4510.4.1 授予权限:授予权限:GRANT2)授予数据库对象上的权限)授予数据库对象上的权限【例10.12】给数据库用户User_SQL_tao授予kcb表上的SELECT、INSERT的权限。(1)选择“pxscj”数据库“表”“kcb”,右击鼠标,选择“属性”菜单项进入kcb表的属性窗口,选择“权限”选项页。(2)单击“搜索”按钮,在弹出的“选择用户或角色”窗口中单击“浏览”按钮,选择需要授权的用户或角色:User_SQL_tao),选择后单击“确定”按钮回到kcb表的“表属性”窗口。(3)如图10.15所示,在“权限”列表中选择需要授予的权限,如“插入”,单击“确定”按钮完成授权。(4)如果要授予用户在表的列上的SELECT权限,可以选择“选择”权限后单击“列权限”按钮,在弹出的“列权限”对话框中选择要授予权限的列。4610.4.2 拒绝权限拒绝权限使用DENY命令可以拒绝给当前数据库内的用户授予的权限,并防止数据库用户通过其组或角色成员资格继承权限。语法格式:DENYALLPRIVILEGES|权限(列,.),.ON安全对象TO主体,.CASCADEAS主体【例10.13】对User_SQL_liu用户和ROLE2角色成员不允许使用CREATEVIEW和CREATETABLE语句。DENYCREATEVIEW,CREATETABLETOUser_SQL_liu,ROLE2GO4710.4.2 拒绝权限拒绝权限【例10.14】拒绝用户User_SQL_liu、PC-201412101514liu对xsb表的一些权限,这样,这些用户就没有对xsb表的操作权限了。USEpxscjGODENYSELECT,INSERT,UPDATE,DELETEONxsbTOUser_SQL_liu,PC-201412101514liuGO4810.4.3 撤销权限撤销权限利用REVOKE命令可撤销以前给当前数据库用户授予或拒绝的权限。语法格式:REVOKEGRANTOPTIONFORALLPRIVILEGES|权限(列,.),.ON安全对象TO|FROM主体,.CASCADEAS主体4910.4.3 撤销权限撤销权限【例10.15】取消已授予用户权限。(1)取消授予多个用户的多个语句权限。REVOKECREATETABLE,CREATEDEFAULTFROMUser_liu,User_SQL_liuGO(2)取消User_liu授予或拒绝的在xsb表上的SELECT权限。REVOKESELECTONxsbFROMUser_liu5010.5 数据库架构的定义和使用数据库架构的定义和使用10.5.1 以界面方式创建架构以界面方式创建架构1创建架构创建架构【例10.16】在pxscj数据库中创建架构。步骤如下:(1)以系统管理员身份登录SQLServer,在“对象资源管理器”中展开“数据库”“pxscj”“安全性”,选择“架构”,右击鼠标,在弹出的快捷菜单中选择“新建架构”菜单项。(2)在打开的“架构-新建”窗口中选择“常规”选项页,在窗口右边“架构名称”下面的文本框中输入架构名称(如Sch_test)。单击“搜索”按钮,在打开的“搜索角色和用户”对话框中单击“浏览”按钮,在打开的“查找对象”对话框中,在用户“User_SQL_liu”前面的复选框中打钩,单击“确定”按钮,返回“搜索角色和用户”对话框。单击“确定”按钮,返回“架构-新建”窗口,如图10.16所示。(3)创建完后,在“数据库”“pxscj”“安全性”“架构”中,可以找到该创建后的新架构,打开该架构的属性窗口可以更改架构的所有者。5110.5.1 以界面方式创建架构以界面方式创建架构图10.16新建架构5210.5.1 以界面方式创建架构以界面方式创建架构2架构应用架构应用【例10.17】架构创建完后,可以新建一个测试表来测试如何访问架构中的对象。(1)在“表属性”窗口中将其架构修改为Sch_test。设置完成后保存该表,保存后的表可以在“对象资源管理器”中找到,此时表名就已经变成Sch_test.table_1。(2)打开表Sch_test.table_1,在表中输入一行数据“测试架构的使用”。(3)在“对象资源管理器”中展开数据库“pxscj”“安全性”“架构”,选择新创建的架构Sch_test,右击鼠标,在弹出的快捷菜单中选择“属性”菜单项,打开“架构属性”窗口,在该架构属性的“权限”选项页中,单击“搜索”按钮,选择用户User_SQL_tao,为用户分配“选择”权限。单击“确定”按钮,保存上述设置。5310.5.1 以界面方式创建架构以界面方式创建架构(4)重新启动“SSMS”,使用SQLServer身份验证方式,以SQL_tao的登录名连接SQLServer。在连接成功后,创建一个新的查询,在“查询分析器”窗口中输入查询表Sch_test.table_1中数据的T-SQL语句。USEpxscjGOSELECT*FROMSch_test.table_1查询成功,结果正确。再新建一个SQL查询,在查询编辑器中输入删除表Sch_test.table_1的T-SQL语句:DELETEFROMSch_test.table_1很明显,由于用户User_SQL_tao所属的架构没有相应的DELETE权限,因此无法对表Sch_test.table_1执行删除操作。5410.5.2 命令方式创建架构:命令方式创建架构:CREATE SCHEMA可以使用CREATESCHEMA语句创建数据库架构。语法格式:CREATESCHEMA,.其中::=架构名|AUTHORIZATION所有者名|架构名AUTHORIZATION所有者名:=表定义|视图定义|grant语句revoke语句|deny语句5510.5.2 命令方式创建架构:命令方式创建架构:CREATE SCHEMA【例10.18】创建架构sch1,其所有者为用户User_liu。以系统管理员身份登录SQLServer,新建一个查询,输入以下语句:USEpxscjGOCREATESCHEMAsch1AUTHORIZATIONUser_liu另外,要删除可以使用DROPSCHEMA语句,例如:DROPSCHEMAsch156- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL Server 系统安全 管理 ppt 课件
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文