当前位置:首页 » 编程语言 » sql角色组
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql角色组

发布时间: 2022-09-21 12:13:03

1. sql中一组具有相同权限的用户称为什么

sql中一组具有相同权限的用户称为角色,主要是为了便于对用户及权限进行管理。

SQL语言不仅能独立应用于终端,还可以作为子语言为其他程序设计提供有效助力,该程序应用中,SQL可与其他程序语言一起优化程序功能,进而为用户提供更多更全面的信息。

(1)sql角色组扩展阅读:

SQL作为一种操作命令集, 以其丰富的功能受到业内人士的广泛欢迎, 成为提升数据库操作效率的保障。SQL Server数据库的应用,能够有效提升数据请求与返回的速度,有效应对复杂任务的处理,是提升工作效率的关键。

由于SQL Servers数据库管理系统具有较高的数据管理性能,因其优越的性能,应用范围非常广,大量应用于服务器和客户体系结构中。

2. SQL如何使角色组对所有表具有SELECT权限

grant select any table to rolename

3. SQL 角色有哪几种 角色和用户有哪些关系

这个不太好说,没有系统的总结过,简单的说一下个人理解吧

角色可以分:固定服务器级别、固定数据库级别
服务器级别角色用户无法创建,而数据库级别角色用户可以自定义

角色是权限的集合,是一个组,用户从属于角色,是组的成员
数据库用户是数据库级别上的主体,每个数据库用户都是 public 角色的成员,
如果未向某个用户授予或拒绝对安全对象的特定权限时,该用户将继承授予该对象的 public 角色的权限

简单的说,每个角色都有一定的权限,其中的用户成员享有其角色拥有的权限
用户可以从属于多个角色,也就是可以同时享有多重权限

4. sql server里 服务器角色都是什么意思

各个角色是对应不同权限的,sql server中有很多权限,可以把这些权限组合或单独赋给各个角色,从而使不同角色的用户的权限不同,你列出的都是内置角色。你看看下面这些对你有没有帮助,希望你解决你的问题。
为便于管理数据库中的权限,SQL Server 提供了若干“角色”,这些角色是用于分组其他主体的安全主体。它们类似于 Microsoft Windows 操作系统中的组。数据库级角色的权限作用域为数据库范围。

SQL Server 中有两种类型的数据库级角色:数据库中预定义的“固定数据库角色”和您可以创建的“灵活数据库角色”。

固定数据库角色是在数据库级别定义的,并且存在于每个数据库中。db_owner 和 db_securityadmin 数据库角色的成员可以管理固定数据库角色成员身份。但是,只有 db_owner 数据库角色的成员能够向 db_owner 固定数据库角色中添加成员。msdb 数据库中还有一些特殊用途的固定数据库角色。

您可以向数据库级角色中添加任何数据库帐户和其他 SQL Server 角色。固定数据库角色的每个成员都可向同一个角色添加其他登录名。

重要提示:
请不要将灵活数据库角色添加为固定角色的成员。这会导致意外的权限升级。

下表显示了固定数据库级角色及其能够执行的操作。所有数据库中都有这些角色。

数据库级别的角色名称 说明
db_owner
db_owner 固定数据库角色的成员可以执行数据库的所有配置和维护活动,还可以删除数据库。

db_securityadmin
db_securityadmin 固定数据库角色的成员可以修改角色成员身份和管理权限。向此角色中添加主体可能会导致意外的权限升级。

db_accessadmin
db_accessadmin 固定数据库角色的成员可以为 Windows 登录名、Windows 组和 SQL Server 登录名添加或删除数据库访问权限。

db_backupoperator
db_backupoperator 固定数据库角色的成员可以备份数据库。

db_ddladmin
db_ddladmin 固定数据库角色的成员可以在数据库中运行任何数据定义语言 (DDL) 命令。

db_datawriter
db_datawriter 固定数据库角色的成员可以在所有用户表中添加、删除或更改数据。

db_datareader
db_datareader 固定数据库角色的成员可以从所有用户表中读取所有数据。

db_denydatawriter
db_denydatawriter 固定数据库角色的成员不能添加、修改或删除数据库内用户表中的任何数据。

db_denydatareader
db_denydatareader 固定数据库角色的成员不能读取数据库内用户表中的任何数据。

有关数据库级固定角色权限的特定信息,请参阅固定数据库角色的权限(数据库引擎)。

msdb 角色
msdb 数据库中包含下表显示的特殊用途的角色。

msdb 角色名称 说明
db_ssisadmin

db_ssisoperator

db_ssisltser
这些数据库角色的成员可以管理和使用 SSIS。从早期版本升级的 SQL Server 实例可能包含使用 Data Transformation Services (DTS)(而不是 SSIS)命名的旧版本角色。有关详细信息,请参阅 使用 Integration Services 角色。

dc_admin

dc_operator

dc_proxy
这些数据库角色的成员可以管理和使用数据收集器。有关详细信息,请参阅数据收集器的安全性。

PolicyAdministratorRole
db_ PolicyAdministratorRole 数据库角色的成员可以对基于策略的管理策略和条件执行所有配置和维护活动。有关详细信息,请参阅使用基于策略的管理来管理服务器。

ServerGroupAdministratorRole

ServerGroupReaderRole
这些数据库角色的成员可以管理和使用注册的服务器组。有关详细信息,请参阅创建服务器组。

重要提示:
db_ssisadmin 角色和 dc_admin 角色的成员也许可以将其权限提升到 sysadmin。之所以会发生此权限提升,是因为这些角色可以修改 Integration Services 包,而 SQL Server 可以使用 SQL Server 代理的 sysadmin 安全上下文来执行 Integration Services 包。若要防止在运行维护计划、数据收集组和其他 Integration Services 包时出现此权限提升,请将运行包的 SQL Server 代理作业配置为使用拥有有限权限的代理帐户,或只将 sysadmin 成员添加到 db_ssisadmin 和 dc_admin 角色。

使用服务器级角色
下表说明了用于服务器级角色的命令、视图和函数。

功能 类型 说明
sp_helpdbfixedrole (Transact-SQL)
元数据
返回固定数据库角色的列表。

sp_dbfixedrolepermission (Transact-SQL)
元数据
显示固定数据库角色的权限。

sp_helprole (Transact-SQL)
元数据
返回当前数据库中有关角色的信息。

sp_helprolemember (Transact-SQL)
元数据
返回有关当前数据库中某个角色的成员的信息。

sys.database_role_members (Transact-SQL)
元数据
为每个数据库角色的每个成员返回一行。

IS_MEMBER (Transact-SQL)
元数据
指示当前用户是否为指定 Microsoft Windows 组或 Microsoft SQL Server 数据库角色的成员。

CREATE ROLE (Transact-SQL)
命令
在当前数据库中创建新的数据库角色。

ALTER ROLE (Transact-SQL)
命令
更改数据库角色的名称。

DROP ROLE (Transact-SQL)
命令
从数据库中删除角色。

sp_addrole (Transact-SQL)
命令
在当前数据库中创建新的数据库角色。

sp_droprole (Transact-SQL)
命令
从当前数据库中删除数据库角色。

sp_addrolemember (Transact-SQL)
命令
为当前数据库中的数据库角色添加数据库用户、数据库角色、Windows 登录名或 Windows 组。

sp_droprolemember (Transact-SQL)
命令
从当前数据库的 SQL Server 角色中删除安全帐户。

public 数据库角色
每个数据库用户都属于 public 数据库角色。如果未向某个用户授予或拒绝对安全对象的特定权限时,该用户将继承授予该对象的 public 角色的权限。

5. SQL sever中 什么是权限和角色,分别说出一下。

--什么是角色?

例如,一个公司可能成立慈善活动委员会,其中包括来自不同部门,来自组织中各种不同级别的职员。这些职员需要访问数据库中特殊的项目表。没有只包括这些职员的现有 Windows NT 4.0 或 Windows 2000 组,而且没有其它理由在 Windows NT 4.0 或 Windows 2000 中创建这样一个组。可以为此项目创建一个自定义 SQL Server 数据库角色 CharityEvent,并将个别的 Windows NT 和 Windows 2000 用户添加到此数据库角色。当应用权限后,数据库角色中的用户便获得对表的访问权限。其它数据库活动的权限不受影响,只有 CharityEvent 用户可以使用该项目表。

SQL Server 角色存在于一个数据库中,不能跨多个数据库。

使用数据库角色的好处包括:

1.对于任何用户,都可以随时让多个数据库角色处于活动状态.如果所有用户、组和角色都在当前数据库中,则 SQL Server 角色可以包含 Windows NT 4.0 或 Windows 2000 组和用户,以及 SQL Server用户和其它角色。

2.在同一数据库中,一个用户可属于多个角色。

3.提供了可伸缩模型以便在数据库中设置正确的安全级别。

说明:数据库角色要么在创建角色时由明确指定为所有者的用户所拥有,要么在未指定所有者时为创建角色的用户所拥有。角色的所有者决定可以在角色中添加或删除谁。但是,因为角色不是数据库对象,不能在同一数据库中创建由不同用户所拥有的多个同名角色。

权限--
是指为了保证职责的有效履行,任职者必须具备的,对某事项进行决策的范围和程度。它常常用“具有批准……事项的权限”来进行表达。例如,具有批准预算外5000元以内的礼品费支出的权限。

6. SQL Server 2000的角色分哪两种各自的功能是什么

SQL SERVER 2000 使用哪三种类型的角色 ?每种角色的作用是什么? 固定的服务器角色 固定的数据库角色 应用程序角色 难道是这3种么?

7. 怎样设置 sql 2005 服务器角色 数据库

/*服务器角色*/
sysadmin
--在 SQL Server 中进行任何活动。该角色的权限跨越所有其它固定服务器角色。
serveradmin
--配置服务器范围的设置。
setupadmin
--添加和删除链接服务器,并执行某些系统存储过程(如 sp_serveroption)。
securityadmin
--管理服务器登录。
processadmin
--管理在 SQL Server 实例中运行的进程。
dbcreator
--创建和改变数据库。
diskadmin
--管理磁盘文件。
bulkadmin
--执行 BULK INSERT 语句。
/*数据库角色*/
public
public 角色
--public 角色是一个特殊的数据库角色,每个数据库用户都属于它。public 角色:
--捕获数据库中用户的所有默认权限。
--无法将用户、组或角色指派给它,因为默认情况下它们即属于该角色。
--含在每个数据库中,包括 master、msdb、tempdb、model 和所有用户数据库。
--无法除去。
db_owner
--进行所有数据库角色的活动,以及数据库中的其它维护和配置活动。
--该角色的权限跨越所有其它固定数据库角色。
db_accessadmin
--在数据库中添加或删除 Windows NT 4.0 或 Windows 2000 组和用户以及 SQL Server 用户。
db_datareader
--查看来自数据库中所有用户表的全部数据。
db_datawriter
--添加、更改或删除来自数据库中所有用户表的数据
db_ddladmin
--添加、修改或除去数据库中的对象(运行所有 DDL)
db_securityadmin
--管理 SQL Server 2000 数据库角色的角色和成员,并管理数据库中的语句和对象权限
db_backupoperator
--有备份数据库的权限
db_denydatareader
--拒绝选择数据库数据的权限
db_denydatawriter
--拒绝更改数据库数据的权限

8. SQL中什么角色没有成员

SQL中的角色:
当几个用户需要在某个特定的数据库中执行类似的动作时(这里没有相应的Windows用户组),就可以向该数据库中添加一个角色(role)。数据库角色指定了可以访问相同数据库对象的一组数据库用户。

数据库角色的成员可以分为如下几类:

Windows用户组或用户账户

SQL Server登录

其他角色

SQL Server的安全体系结构中包括了几个含有特定隐含权限的角色。除了数据库拥有者创建的角色之外,还有两类预定义的角色。这些可以创建的角色可以分为如下几类:

固定服务器

固定数据库

用户自定义

9. SQL数据库的角色的定义,分类及角色的权限分配操作

角色是一个强大的工具,使您得以将用户集中到一个单元中,然后对该单元应用权限。对一个角色授予、拒绝或废除的权限也适用于该角色的任何成员。可以建立一个角色来代表单位中一类工作人员所执行的工作,然后给这个角色授予适当的权限。当工作人员开始工作时,只须将他们添加为该角色成员,当他们离开工作时,将他们从该角色中删除。而不必在每个人接受或离开工作时,反复授予、拒绝和废除其权限。权限在用户成为角色成员时自动生效。

Microsoft® Windows NT® 和 Windows® 2000 组的使用方式与角色很相似。有关更多信息,请参见组。

如果根据工作职能定义了一系列角色,并给每个角色指派了适合这项工作的权限,则很容易在数据库中管理这些权限。之后,不用管理各个用户的权限,而只须在角色之间移动用户即可。如果工作职能发生改变,则只须更改一次角色的权限,并使更改自动应用于角色的所有成员,操作比较容易。

在 Microsoft® SQL Server™ 2000 和 SQL Server 7.0 版中,用户可属于多个角色。

以下脚本说明登录、用户和角色的添加,并为角色授予权限。

USE master

GO

sp_grantlogin 'NETDOMAIN\John'

GO

sp_defaultdb 'NETDOMAIN\John', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Sarah'

GO

sp_defaultdb 'NETDOMAIN\Sarah', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Betty'

GO

sp_defaultdb 'NETDOMAIN\Betty', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Ralph'

GO

sp_defaultdb 'NETDOMAIN\Ralph', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Diane'

GO

sp_defaultdb 'NETDOMAIN\Diane', 'courses'

GO

USE courses

GO

sp_grantdbaccess 'NETDOMAIN\John'

GO

sp_grantdbaccess 'NETDOMAIN\Sarah'

GO

sp_grantdbaccess 'NETDOMAIN\Betty'

GO

sp_grantdbaccess 'NETDOMAIN\Ralph'

GO

sp_grantdbaccess 'NETDOMAIN\Diane'

GO

sp_addrole 'Professor'

GO

sp_addrole 'Student'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\John'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\Sarah'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\Diane'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Betty'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Ralph'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Diane'

GO

GRANT SELECT ON StudentGradeView TO Student

GO

GRANT SELECT, UPDATE ON ProfessorGradeView TO Professor

GO

该脚本给 John 和 Sarah 教授提供了更新学生成绩的权限,而学生 Betty 和 Ralph 只能选择他们自己的成绩。Diane 因同时教两个班,所以添加到两个角色中。ProfessorGradeView 视图应将教授限制在自己班学生的行上,而 StudentGradeView 应限制学生只能选择自己的成绩。

SQL Server 2000 和 SQL Server 7.0 版在安装过程中定义几个固定角色。可以在这些角色中添加用户以获得相关的管理权限。下面是服务器范围内的角色。

固定服务器角色
描述

sysadmin
可以在 SQL Server 中执行任何活动。

serveradmin
可以设置服务器范围的配置选项,关闭服务器。

setupadmin
可以管理链接服务器和启动过程。

securityadmin
可以管理登录和 CREATE DATABASE 权限,还可以读取错误日志和更改密码。

processadmin
可以管理在 SQL Server 中运行的进程。

dbcreator
可以创建、更改和除去数据库。

diskadmin
可以管理磁盘文件。

bulkadmin
可以执行 BULK INSERT 语句。

可以从 sp_helpsrvrole 获得固定服务器角色的列表,可以从 sp_srvrolepermission 获得每个角色的特定权限。

每个数据库都有一系列固定数据库角色。虽然每个数据库中都存在名称相同的角色,但各个角色的作用域只是在特定的数据库内。例如,如果 Database1 和 Database2 中都有叫 UserX 的用户 ID,将 Database1 中的 UserX 添加到 Database1 的 db_owner 固定数据库角色中,对 Database2 中的 UserX 是否是 Database2 的 db_owner 角色成员没有任何影响。

固定数据库角色
描述

db_owner
在数据库中有全部权限。

db_accessadmin
可以添加或删除用户 ID。

db_securityadmin
可以管理全部权限、对象所有权、角色和角色成员资格。

db_ddladmin
可以发出 ALL DDL,但不能发出 GRANT、REVOKE 或 DENY 语句。

db_backupoperator
可以发出 DBCC、CHECKPOINT 和 BACKUP 语句。

db_datareader
可以选择数据库内任何用户表中的所有数据。

db_datawriter
可以更改数据库内任何用户表中的所有数据。

db_denydatareader
不能选择数据库内任何用户表中的任何数据。

db_denydatawriter
不能更改数据库内任何用户表中的任何数据。

可以从 sp_helpdbfixedrole 获得固定数据库角色的列表,可以从 sp_dbfixedrolepermission 获得每个角色的特定权限。

数据库中的每个用户都属于 public 数据库角色。如果想让数据库中的每个用户都能有某个特定的权限,则将该权限指派给 public 角色。如果没有给用户专门授予对某个对象的权限,他们就使用指派给 public 角色的权限。

10. 如何创建自定义SQL Server数据库角色

◆没有适用的 Microsoft Windows NT�0�3 4.0 或 Windows�0�3 2000 组。
◆没有管理 Windows NT 4.0 或 Windows 2000 用户帐户的权限。
说明 请避免角色的深层嵌套以免影响性能。
例如,一个公司可能成立慈善活动委员会,其中包括来自不同部门,来自组织中各种不同级别的职员。这些职员需要访问数据库中特殊的项目表。没有只包括这些职员的现有 Windows NT 4.0 或 Windows 2000 组,而且没有其它理由在 Windows NT 4.0 或 Windows 2000 中创建这样一个组。可以为此项目创建一个自定义 SQL Server 数据库角色 CharityEvent,并将个别的 Windows NT 和 Windows 2000 用户添加到此数据库角色。当应用权限后,数据库角色中的用户便获得对表的访问权限。其它数据库活动的权限不受影响,只有 CharityEvent 用户可以使用该项目表。
SQL Server 角色存在于一个数据库中,不能跨多个数据库。
使用数据库角色的好处包括:
◆对于任何用户,都可以随时让多个数据库角色处于活动状态。
◆如果所有用户、组和角色都在当前数据库中,则 SQL Server 角色可以包含 Windows NT 4.0 或 Windows 2000 组和用户,以及 SQL Server 用户和其它角色。
◆在同一数据库中,一个用户可属于多个角色。
◆提供了可伸缩模型以便在数据库中设置正确的安全级别。
说明 数据库角色要么在创建角色时由明确指定为所有者的用户所拥有,要么在未指定所有者时为创建角色的用户所拥有。角色的所有者决定可以在角色中添加或删除谁。