欢迎投稿

今日深度:

Chapter 2 User Authentication, Authorization, and Security(

Chapter 2 User Authentication, Authorization, and Security(9):防止登录名和用户查看元数据,authentication


原文出处:http://blog.csdn.net/dba_huangzj/article/details/39003679,专题目录:http://blog.csdn.net/dba_huangzj/article/details/37906349

未经作者同意,任何人不得以“原创”形式发布,也不得已用于商业用途,本人不负责任何法律责任。

        前一篇:http://blog.csdn.net/dba_huangzj/article/details/38944121

 

前言:

 

在SQL Server 2005之前,所有服务器和数据库元数据都是所有人可见的。当基于网银的系统把SQL Server实例共享给客户时,有可能可以看到其他用户的信息。从2005开始,可以通过控制权限来限制登录名或用户查看不必要的元数据。

 

实现:

 

如果你需要把数据库对所有登录名隐藏,可以移除public角色上的VIEW ANY DATABASE权限:

USE master; 
GO 
REVOKE VIEW ANY DATABASE TO public;

允许某些帐号查看所有数据库时,可以创建一个用户自定义服务器角色:

USE master; 
CREATE SERVER ROLE [DatabaseViewer]; 
GO 
GRANT VIEW ANY DATABASE TO [DatabaseViewer]; 
ALTER SERVER ROLE [DatabaseViewer] ADD MEMBER [Fred];


 

注意,master和tempdcb总是对所有登录可见。

 

你不能选择性地对某些数据库设置可见,一个登录要么能从【对象资源管理器】中看到所有数据库,要么所有库都不能被看到。如果一个登录名被授予VIEW ANY DATABASE服务器权限,那么可以在【对象资源管理器】中看到服务器所有数据库,或者从sys.databases 目录视图中查询所有的数据库。如果登录名没有这个权限但是映射到某个数据库的用户中,那么它依旧不能看到所有数据库,但是可以使用sys.databases返回数据库信息,并且使用USE 数据库命令来切换数据库。

允许选择性地可见数据库的唯一方式是让登录名作为数据库的owner:

ALTER AUTHORIZATION ON DATABASE::marketing TO [Fred];

数据库的owner有数据库内所有权限,但是一个数据库只有一个owner。不能让多个登录名同时对一个数据库进行owner设置。 

在数据库内,可以定义特定数据库对象为某些用户可见,在SSMS中,右键数据库的【安全性】节点,选择【用户】→【属性】中的【安全对象】,然后在【查找】中添加特定对象,比如表、存储过程或者架构。然后勾选【查看定义】的【授予】列:

image

 

也可以用命令实现,这里注意上图中的【脚本】,当你不记得命令时,可以点一下这个按钮,会自动生成代码:

use [AdventureWorks2012] 
GO 
GRANT VIEW DEFINITION ON [dbo].[AWBuildVersion] TO [test] 
GO

原理:

可以用下面语句查看可被授权的元数据权限:

SELECT  parent_class_desc AS parent , 
        class_desc AS class , 
        permission_name AS permission 
FROM    sys.fn_builtin_permissions(NULL) 
WHERE   permission_name LIKE 'VIEW%' 
ORDER BY CASE parent_class_desc 
           WHEN '' THEN 0 
           WHEN 'SERVER' THEN 1 
           WHEN 'DATABASE' THEN 2 
           WHEN 'SCHEMA' THEN 3 
         END , 
        class , 
        permission;


 

【查看定义】的权限是可以在非服务器范围内查看的权限。如果需要在所有范围内查看,需要使用【VIEW ANY DEFINITION】,授予这个权限可以允许登录查看实例中的所有定义,【查看所有数据库】适合那些仅需要访问数据库但是不需要访问服务器其他对象的登录名。

在数据库中,用户可以看到自己有权限的对象,默认情况下,一个用户仅是public数据库角色的成员,是没有权限的。使用db_datareader固定数据库角色可以允许这个用户看到所有表,授予VIEW DEFINITION给存储过程、函数或者触发器,允许你看到其底层代码。如果你不想让别人看到,可以在创建对象时使用WITH ENCRYPTION(在后续介绍。)


帮忙翻译一下(3)

类型的问题:
基本概念-选择题;
推理和简单的计算:选择题。这类型的问题会更加清晰当您看到的选择,在试验;您能做什么,现在是熟悉的概念和理论提到,在检讨的问题。
讨论,总结,计算( ? ) :散文的问题
议题将包括:
第一章, 5月1日
1 。 5层:他们是什么和做些什么
2 。比较层(利用一张桌子,我创建)
3 。共同的标准为每五个层次:为HTTP 。的SMTP ,的FTP的IP ,以太网
4 。媒体存取控制:争论与控制:哪一个是更好地在什么情况?
5 。差错控制:来源的错误和他们的补救措施(方法,以防止错误) ,侧重于第1张投影片约事业的控制对
calclation的数据丢失是由于突发性错误(冲动; “穗” ) -简单的计算将提供,你的任务就是要了解他们,并选择正确的一
可能征文:
描述了如何基于Web的电子邮件工程
第一章, 5月2日
1 。标题栏位,在TCP数据包
2 。标题栏位,在IP数据包
3 。类型的地址,互联网上使用;改建或“决议”的地址,特别是申请地址,网络地址
4 。 DHCP的:它是什么,以及它如何工程
5 。局域网组件
6 。以太网:基本功能:如何邮件转发和处理;碰撞和反应,给它们的任务;如何避免更多的碰撞后,发生了一
第一章7
1 。一般安全目标(中央情报局)
2 。基本安全的活动或职能:识别,验证,授权,问责制,保证
3 。脆弱性,利用和攻击
4 。纵深防御
可能征文:
讨论为什么信息安全/网络安全是一个更大的问题相比,今天与20年前,由于提高计算/通信技术。
第8章
1 。社会工程:是什么秒;如何抵御它
2 。 “三原则” -的原则,容易渗透,的原则,及时性,效力原则;关系与密码与加密(我们聘请的密码和加密,因为上述原则)
3 。流密码和博克密码
可能征文问题:
1 。网络安全技术研究内容及相互关系
2 。安全威胁的类型
3 。的可能性和成本的威胁
4 。设计的密码至少为8个字符,与上下游情况下,和数字,并强调不会在开始或结束时的密码,即可以很容易记住,给您自己,但很难猜测,由他人。国家的原因设计(手法如何,您可以很容易记住的密码) 。
5 。了解的机制,数字签名
第9章
所有类型的问题:
的目的是什么主机扫描吗?
的目的是什么端口扫描?
的目的是什么(作业系统)指纹
打破程式:如何;管理“漏洞”后,突破在
拒绝服务攻击-单讯息D oS攻击; s murf水浸D oS攻击;分布式拒绝- -服务( D DoS)攻击
阻止DoS攻击
防火墙的基本功能和局限性
包过滤包过滤防火墙;代理代理防火墙;两种防火墙技术的对比
访问控制列表( ACL ) (幻灯片9-71 〜 9-75 )
在学习中的幻灯片,利用Notes的“隐藏”在幻灯片-如下:
 

谁可以帮忙翻译一段计算机英语,了

看来你是IT行当的。你不可能完全看不懂。正如你所说,仅是有些细节看不明白。建议你只问你真不明白之处。这样,才有更多真懂的人帮你解决,而你也不用费很多时间去鉴别那些回答是机译忽悠。

比如,你肯定知道SW是软件,而非西南。
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/3007.html NewsArticle Chapter 2 User Authentication, Authorization, and Security(9):防止登录名和用户查看元数据,authentication 原文出处:http://blog.csdn.net/dba_huangzj/article/details/39003679 ,专题目录: http://blog.csdn.net/db...
评论暂时关闭