什么是基于角色的安全?

介绍

安全角色可以简化SQL Server中的权限。在本文中,解释了固定的服务器和数据库角色

管理SQL Server的安全是非常重要的。作为DBA或安全管理员,您需要为登录用户和数据库用户提供访问SQL Server中的资源的权限。SQL Server同时拥有服务器和数据库资源,其中可能需要授予访问权限。可以将对这些资源的访问权限授予单个登录用户或数据库用户,也可以授予角色(登录用户或数据库用户可以是角色的成员)。通过角色授予访问权称为基于角色的安全。

两种类型的角色:固定的或用户定义的。在本文中,我将讨论SQL server提供的不同的固定服务器和数据库角色,以及如何使用这些角色来支持基于角色的安全性,从而简化对不同SQL server资源的访问。在以后的文章中,我将讨论用户定义的服务器和数据库角色。

什么是基于角色的安全?

基于角色的安全是通过角色的成员来提供登录和/或数据库用户访问SQL Server资源的概念。角色是SQL Server中包含成员的对象,很像Windows组包含成员。当登录用户或数据库用户是角色的成员时,他们继承角色的权限。当使用基于角色的安全时,对SQL Server资源的实际访问权限被授予一个角色,而不是特定的登录或用户。当多个登录或用户需要对SQL Server资源进行相同的访问时,基于角色的安全性减少了授予和管理安全性所需的管理工作量。一旦设置了角色,并向其授予了适当的权限,只需将登录或用户添加到角色,就可以为其提供与角色相同的访问权限。如果不使用角色,管理员将需要向每个登录用户或数据库用户授予相同的权限,从而导致额外的管理工作。还可能会出现错误,导致一些登录和用户获得错误的权限集。SQL Server中有两种固定角色:服务器和数据库。固定的服务器角色提供对服务器资源的特定安全访问。相比之下,固定的数据库角色提供对数据库资源的访问。

固定的服务器角色

Fixed Server roles have server-wide scope. They come with a set of canned permissions tied to them. The permissions for server roles can’t be changed or extended.

There are nine different fixed server roles provided with SQL Server, which are shown in Table 1, along with a description. The information in the table is directly from the Microsoft SQL Server documentation.

固定的服务器角色具有服务器范围的作用域。它们附带了一组固定的权限。服务器角色的权限不能更改或扩展。

SQL server提供了9种不同的固定服务器角色,如表1所示,并提供了描述。表中的信息直接来自Microsoft SQL Server 文档

Table 1: 固定服务器橘色

Server Role

Description

sysadmin

sysadmin的成员可以执行服务器中的任何指令和操作。

serveradmin

可以更改服务器范围的配置选项并关闭服务器。

securityadmin

理登录及其属性。它们可以GRANT、DENY和REVOKE服务器级别的权限。如果他们有访问数据库的权限,他们还可以GRANT、DENY和REVOKE数据库级权限。此外,他们可以重置SQL Server登录的密码。 重要提示:授予对数据库引擎的访问权限和配置用户权限的能力允许安全管理员分配大多数服务器权限。securityadmin角色应被视为与sysadmin角色等同。

processadmin

可以终止SQL Server实例中运行的进程。

setupadmin

以使用Transact-SQL语句添加和删除链接服务器。(使用Management Studio时需要sysadmin成员身份。)

AI角色脑洞生成器 AI角色脑洞生成器

一键打造完整角色设定,轻松创造专属小说漫画游戏角色背景故事

AI角色脑洞生成器 176 查看详情 AI角色脑洞生成器

bulkadmin

可以执行BULK INSERT语句。

diskadmin

用于管理磁盘文件。

dbcreator

可以创建、修改、删除和恢复任何数据库。

public

每个SQL Server登录都属于公共服务器角色。当服务器主体未被授予或拒绝对安全对象的特定权限时,用户将继承该对象上授予public的权限。仅当您希望对象对所有用户可用时,才为该对象分配公共权限。您不能公开更改会员资格。 注意:public的实现与其他角色不同,可以从public fixed server角色中授予、拒绝或撤销权限。

每个固定的服务器角色提供一组唯一的固定权限,这些权限可以提供对服务器资源的不同类型的访问。固定服务器角色(公共服务器角色除外)关联的权限集不能修改。公共角色与所有其他固定服务器角色略有不同,因为您可以向该角色授予权限。当将权限授予该公共角色时,所有访问SQL Server的用户将继承该公共角色的权限。公共角色是为每次登录提供一些默认权限的好方法。当登录、Windows帐户或Windows组成为这些服务器角色之一的成员时,它们将继承与该角色关联的权限。如果某人需要与服务器角色拥有相同的权限,那么让他们成为角色的成员要比授予他们对与角色关联的每个权限的访问权限容易得多。此外,当您希望向多个登录授予相同的服务器权限时,将每个登录放在相同的服务器角色中可以很容易地实现这一点,确保它们获得完全相同的权限。用户定义的角色也可以添加为服务器角色的成员。关于用户定义角色的讨论将留到另一篇文章中讨论。有许多不同的存储过程、视图和函数可用于处理固定的服务器角色。

如果不确定与服务器角色关联的权限,可以使用系统存储过程sp_srvrolepermission来显示分配给单个固定服务器角色或所有固定服务器角色的权限。清单1中的代码显示了如何使用这个存储过程的两个不同示例。

Listing 1: 使用sp_srvrolepermission 展示单个或者全部角色权限

代码语言:javascript代码运行次数:0运行复制

-- Displaying all server role permissionsEXEC sp_srvrolepermission;GO-- Displaying permissions for only the dbcreator roleEXEC sp_srvrolepermission @srvrolename = 'dbcreator';

可以使用SQL server Management Studio (SSMS)或TSQL向固定服务器角色添加登录。要使用SSMS,请遵循以下步骤:

连接到一个实例

展开Security项 展开“服务器角色”项 右键单击固定服务器角色,然后单击属性选项 单击服务器角色属性页面上的Add按钮 选择要添加到固定服务器角色中的登录或自定义服务器角色 单击一系列Ok按钮,完成向角色添加新成员的操作

如下:

什么是基于角色的安全?

Figure 1: 添加一个新的成员到固定服务器角色

Alternatively, you can use the TSQL code to add a login to a fixed server role. The code in Listing 2 adds the Red-Gate login to the sysadmin fixed server role.

或者采用下面listing 2 的脚本添加。

Listing 2: 添加新的角色成员.

代码语言:javascript代码运行次数:0运行复制

ALTER SERVER ROLE sysadmin ADD MEMBER [Red-Gate];

Listing 3: 删除成员

代码语言:javascript代码运行次数:0运行复制

ALTER SERVER ROLE sysadmin DROP MEMBER [Red-Gate];

固定服务器角色是一种很好的方式,可以让dba、安全管理员和操作人员访问他们执行工作职责所需的服务器资源。通过使用服务器角色,可以简化对服务器资源的权限授予。除了固定的服务器角色外,还有固定的数据库角色。

以上就是什么是基于角色的安全?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/438764.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
VSCode有哪些特性和扩展能提升编写Shell脚本的效率和可靠性?
上一篇 2025年11月7日 17:42:10
小米max2s开启备份的简单步骤
下一篇 2025年11月7日 17:42:19

相关推荐

  • windows怎么开启或关闭休眠模式_休眠模式启用与禁用设置

    首先通过控制面板或命令提示符启用或禁用休眠功能,其次可设置自动休眠时间以节能;操作路径包括图形界面调整与管理员命令执行,适用于Windows 11系统环境。 如果您发现Windows系统的休眠功能未启用或希望禁用该功能以释放磁盘空间,可以通过系统电源设置或命令行工具进行配置。休眠模式会将当前系统状态…

    2026年9月22日
    000
  • VSCode如何调试JavaScript代码 VSCode调试功能的实战技巧

    要在vscode中调试javascript,首先需设置断点、配置launch.json文件、选择合适的调试环境并启动调试会话;2. launch.json至关重要,常见陷阱包括program路径错误、type类型不匹配、cwd设置不当、混淆launch与attach模式以及source map配置缺…

    2026年9月22日
    000
  • Linux内核13-进程切换

    进程切换,也称为任务切换、上下文切换或任务调度,本文将探讨linux内核中进程切换的实现。我们首先理解几个关键概念。 1.1 硬件上下文 每个进程都有自己的地址空间,但所有进程共享CPU寄存器。因此,在恢复进程执行前,内核必须确保挂起时的寄存器值被重新加载到CPU寄存器中。 这些需要加载到CPU寄存…

    2026年9月22日
    200
  • 如何修改MySQL的默认端口号?

    如何修改MySQL的默认端口号?如何修改MySQL的默认端口号?如何修改MySQL的默认端口号?如何修改MySQL的默认端口号?

    修改mysql默认端口号需编辑配置文件,核心步骤为:1.定位my.cnf或my.ini文件;2.在[mysqld]段落中修改或添加port参数;3.保存后重启mysql服务。更改端口主要出于避免冲突、提升安全性和适应网络策略考虑。连接时需在客户端工具或代码中指定新端口,如命令行加-p参数、编程语言连…

    2026年9月22日 用户投稿
    1200
  • windows怎么查看系统稳定性历史记录_windows可靠性监视器使用方法

    可通过控制面板、运行命令、搜索功能或事件查看器打开可靠性监视器,查看系统稳定性评分及崩溃记录。 如果您想了解Windows系统的运行状况和历史稳定性,可以通过内置的可靠性监视器来查看详细的系统事件和稳定性评分。该工具会记录应用程序崩溃、Windows故障、硬件驱动问题等信息,并以图表形式展示。 本文…

    2026年9月22日
    000
  • PHP匿名函数怎么用_PHP匿名函数使用场景分析

    PHP匿名函数是无名函数,可作为回调或赋值给变量,常用在数组处理、事件回调、逻辑封装等场景,支持use引入外部变量及fn短语法,结合bindTo可访问对象私有成员。 PHP匿名函数,也叫闭包函数(Closure),是一种没有名称的函数,通常作为回调使用或赋值给变量。它在实际开发中非常灵活,尤其适合用…

    2026年9月22日
    100
  • win10无法ping通局域网电脑怎么办_win10局域网ping不通故障排查教程

    首先检查本机网络协议栈与IP配置,再依次排查网关连通性;若正常,则需启用网络发现、配置防火墙ICMP规则或放行文件共享服务,必要时可临时关闭防火墙测试。 如果您尝试在局域网内使用ping命令测试与另一台电脑的连接,但收到“请求超时”或“无法访问目标主机”的提示,则可能是由于网络配置或系统安全设置导致…

    2026年9月22日
    000
  • c盘清理工具哪个好用_好用的C盘清理工具推荐与使用评测

    推荐C盘清理方案:系统自带工具如磁盘清理、存储感知和手动清%temp%目录安全可靠,适合日常维护;第三方工具CCleaner、金舟Windows优化大师、风云C盘清理大师和全能C盘清理专家提供一键深度清理,操作便捷且误删率低;空间分析工具WizTree、SpaceSniffer和TreeSize可可…

    2026年9月22日
    000
  • PHP如何实现视频留言评论_PHP实现视频留言评论功能

    答案:通过数据库设计、前端表单、后端处理和评论展示四步实现PHP视频留言功能。1. 创建comments表存储信息;2. 构建表单提交昵称与评论;3. 用add_comment.php接收并存入数据库;4. 在页面读取并安全输出评论,防止XSS。 要实现视频留言评论功能,PHP可以结合前端页面、数据…

    2026年9月22日
    000
  • WPS怎么免费使用模板_WPS免费模板下载与应用操作指南

    首先确认WPS模板库中的“免费”标识,通过搜索或分类查找目标模板,点击带“免费”标签的模板预览并使用“立即使用”功能下载,避免选择VIP或付费项;下载后可直接编辑,并通过“另存为”保存为.dotx或.potx格式以便重复调用,手机端登录账号还可同步收藏;注意部分模板含水印需会员去除,建议定期清理缓存…

    2026年9月22日
    000
  • Spring Boot 应用中的单元测试、Mockito 和集成测试:最佳实践

    第一段引用上面的摘要: 本文旨在帮助初学者理解在 Spring Boot 应用中何时以及如何使用 JUnit、Mockito 和集成测试。我们将探讨这些测试框架在 Controller、Service 和 Repository 层中的应用,并提供示例说明何时使用 Mockito 模拟对象,以及何时使…

    2026年9月22日
    000
  • PHP一键环境如何设置网站域名解析_本地域名解析配置

    配置本地域名需修改hosts文件并设置Web服务器虚拟主机。1. 在hosts添加“127.0.0.1 myproject.test”实现域名解析;2. Apache中编辑httpd-vhosts.conf添加VirtualHost指向项目目录,确保加载该配置文件后重启服务;3. Nginx中在vh…

    2026年9月22日
    700
  • mysql如何输入变量值 mysql交互式代码输入步骤详解

    mysql如何输入变量值 mysql交互式代码输入步骤详解mysql如何输入变量值 mysql交互式代码输入步骤详解mysql如何输入变量值 mysql交互式代码输入步骤详解mysql如何输入变量值 mysql交互式代码输入步骤详解

    在mysql命令行中交互式输入变量值可通过预处理语句或用户自定义变量实现。1. 使用预处理语句时,先用prepare定义含占位符的sql语句,再通过set设置变量值,最后用execute执行并传参,完成后需deallocate释放资源;2. 使用用户自定义变量时,直接通过set赋值并在sql语句中引…

    2026年9月22日 用户投稿
    100
  • windows11怎么开启或关闭Hyper-V虚拟机_windows11虚拟化功能设置教程

    windows11怎么开启或关闭Hyper-V虚拟机_windows11虚拟化功能设置教程windows11怎么开启或关闭Hyper-V虚拟机_windows11虚拟化功能设置教程windows11怎么开启或关闭Hyper-V虚拟机_windows11虚拟化功能设置教程windows11怎么开启或关闭Hyper-V虚拟机_windows11虚拟化功能设置教程

    首先确认硬件支持并开启CPU虚拟化,再根据系统版本通过图形界面或命令行启用Hyper-V,操作后重启生效,最后使用Hyper-V管理器验证状态。 如果您在使用Windows 11时需要运行虚拟机或兼容特定模拟器,可能需要开启或关闭Hyper-V功能。该功能依赖于系统版本和硬件支持,操作后需重启生效。…

    2026年9月22日 用户投稿
    100
  • VSCode配合Quartus开发FPGA(环境设置教程,提高开发效率)

    使用VSCode配合Quartus开发FPGA可提升效率,核心是结合VSCode的代码编辑功能与Quartus的编译仿真能力。首先安装Quartus、VSCode及Python,再安装VHDL/Verilog插件和Makefile Tools等扩展。配置系统环境变量,将Quartus命令路径加入PA…

    2026年9月22日
    100
  • 日本科幻战斗飞行游戏《G-Rebels》实机宣传片

    日本科幻战斗飞行游戏《G-Rebels》实机宣传片日本科幻战斗飞行游戏《G-Rebels》实机宣传片日本科幻战斗飞行游戏《G-Rebels》实机宣传片日本科幻战斗飞行游戏《G-Rebels》实机宣传片

    日本开发商reakktor studios公开了飞行模拟游戏《g-rebels》的实机宣传视频,该作是一款开放世界战斗飞行模拟游戏,玩家可以一览《g-rebels》中活力四射和密集的城市群,从精英家园伊甸园到饱受战争蹂躏和被海啸淹没的城市威尼斯。 《G-Rebels》将登陆PC Steam平台,目前…

    2026年9月22日 用户投稿
    100
  • mysql安装完成如何卸载 mysql完全删除数据库的方法

    mysql安装完成如何卸载 mysql完全删除数据库的方法mysql安装完成如何卸载 mysql完全删除数据库的方法mysql安装完成如何卸载 mysql完全删除数据库的方法mysql安装完成如何卸载 mysql完全删除数据库的方法

    彻底卸载mysql需多步骤操作一、停止并卸载服务:windows执行net stop mysql和mysqld –remove,linux用systemctl stop mysql并卸载软件包二、手动删除数据和配置文件:包括数据目录/var/lib/mysql、配置文件/etc/mysq…

    2026年9月22日 用户投稿
    100
  • php-gd怎么应用复古滤镜_php-gd图像怀旧色调处理

    使用PHP-GD库实现复古滤镜主要通过色调偏移和色彩调整模拟老照片效果。1. 色调偏黄褐色:先转灰度,再用imagefilter添加棕黄色调;2. 手动像素级调整:逐像素计算灰度并赋予暖色系值,降低饱和度;3. 增强质感:结合对比度降低与轻微模糊提升真实感;4. 示例流程包括加载图像、应用滤镜、输出…

    2026年9月22日
    200
  • win11家庭版怎么升级到专业版_win11家庭版升级到专业版操作方法

    可通过系统设置输入专业版密钥升级,2. 或使用Media Creation Tool就地升级保留文件,3. 企业用户还可通过命令提示符部署KMS密钥激活,三种方法均能将Windows 11家庭版升级为专业版。 如果您希望在保留现有文件和设置的情况下,将功能较为基础的Windows 11家庭版升级为支…

    2026年9月22日
    1400
  • VSCode调试FPGA的UART通信(串口数据分析,调试技巧)

    使用VSCode调试FPGA的UART通信,核心是通过其扩展生态集成串口监视与数据分析。首先确保FPGA的UART模块正常工作并输出调试信息,然后在VSCode中安装“Serial Monitor”等串口扩展,配置波特率、端口号以捕获数据。为解析十六进制或自定义协议数据,可结合Python脚本通过t…

    2026年9月22日
    000

发表回复

登录后才能评论
关注微信