重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
随着网络的不但发展、***技术的日益增长,针对于SQL Server数据库的***也越来越多,很多企业的机密数据受到一定的威胁。如何多方便的加强SQL Server的安全性呢?
创新互联服务项目包括广河网站建设、广河网站制作、广河网页制作以及广河网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,广河网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到广河省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
一、SQL Server的安全机制
SQL Server的安全机制主要包括以下四个方面:
(1)客户机的安全机制:用户必须能够登录客户机,然后使用应用程序或管理工具来访问数据库,对于Windows系统的客户来说,主要涉及到操作系统的安全,主要是Windows账号的安全
(2) 服务器的安全机制:用户登录服务器时,必须使用一个账号和密码,服务器会按照不同的身份验证方式判断这个账号和密码的正确性
(3) 数据库的安全机制:任何能够登录到服务器的账号和密码都对应着一个默认的数据库,SQL Server对数据库级的权限管理采用的是“数据库用户”的概念
(4) 数据对象的安全机制:用户通过前面三道防线才能访问数据库的数据对象(如表、视图),常见的访问权限包括数据的查询、更新、插入、删除
二、登录权限设置
SQL Server有两种身份验证模式:
Windows身份验证模式:使用操作系统中Windows用户和密码登录,SQL Server不要求提供密码,也不执行身份验证。Windows身份验证使用了Kerberos安全协议,比SQL Server身份验证更安全。适用于局域网内部(如AD域)访问数据库的情况
SQL Server和Windows身份验证模式:又称混合验证模式,允许使用用户使用Windows身份验证和SQL Server身份验证进行连接
打开SSMS,右击“SQL Server实例”,选择属性,选择安全性,可以设置身份验证模式,如图所示:
可以使用SSMS创建管理登录账户,依次展开“SQL Server实例”,安全性,右击登录名、新建登录名,如下图所示:
三、访问许可权限设置
访问许可权限设置可以分别从服务器、数据库、对象三个级别进行设置,可以把SQL Server比作一个酒店,如下图所示:
1. 服务器级别权限设置
在SQL Server中内置了一组服务器角色,用来执行服务器级别的管理,如创建数据库、管理和审核登陆账户等,作用于整台服务器,而非单个数据库。
为用户分配服务器级别的权限的步骤如下:
在SSMS中依次展开“SQL Server实例”,安全性,右击某个登录名,选择属性,选择服务器角色,设置需要赋予该用户的权限,如下图所示:
2. 数据库级别的权限设置
建立了SQL Server登录账户后,需要赋予用户权限,才能对数据库进行操作。如果需要访问某个数据库,则需要在该数据库中建立相应的数据库用户,数据库用户是映射到登录账户上的。
例如:在MySchool数据库上建立一个用户User2,则该用户对应到一个登录账户User2,依次展开数据库MySchool、安全性、右击用户,选择新建用户,打开“数据库-新建”窗口,进行相关设置,如下图所示:
为用户设置数据库级别的具体步骤如下:
在SSMS中依次展开“SQL Server实例”,安全性,右击某个登录名,选择属性,选择用户映射,设置需要赋予该用户的权限,如下图所示:
当数据库角色不能满足需求时,还可以创建数据库角色
依次展开数据库MySchool、安全性,右击角色,新建数据库角色
3. 对象级别权限设置
一个数据库中通常包含多个数据表、视图、存储过程等,可在单个表上为用户授予权限
(1)为表授权
在SSMS上找到需要授权的表,右击该表,选择属性、权限,单击搜索,添加需要授权的用户,在下方选择需要授予用户的权限
(2)为数据库授权
数据库本身也是对象,授权方式和表类似,右击数据库、属性、权限
(3)为存储过程授权
依次展开服务器 、数据库、选择数据库、可编程性、存储过程 、属性、权限