美文网首页BI学习笔记
BI-SQL丨角色和用户

BI-SQL丨角色和用户

作者: Fabric丨白茶 | 来源:发表于2023-06-23 10:59 被阅读0次

角色和用户

在数仓的运维工作中,经常需要为用户开通不同权限的账号,使用户可以正常访问不同的数据,那么这就需要我们了解SQL Server的权限体系。

名词解释

登录名:用来登录服务器的用户账号,例:sa,这个就是默认的可以登录SQL Server服务器的超级管理员账号。

用户名:用来登录数据库的访问账号,例:有些时候,我需要赋予某些用户权限,只可以对某个数据库有操作,不能对服务器有操作,这种情况下就需要使用用户名。

登录名和用户名,在服务器层级的关系是一对多,在数据库层级的关系是一对一。

角色:角色分为两类,一类是服务器角色,一类是数据库角色。

服务器角色:指的是登录名登录到服务器后,对服务器所具有的权限。

数据库角色:指的是用户名访问到数据库后,对数据库所具有的权限。

系统中默认的角色分类如下:

类别 角色 描述
服务器 sysadmin 以在SQLServer中执行任何活动。
服务器 serveradmin 以设置服务器范围的配置选项,关闭服务器。
服务器 setupadmin 以管理链接服务器和启动过程。
服务器 securityadmin 以管理登录和CREATE、DATABASE权限,还以读取错误日志和更改密码。
服务器 processadmin 以管理在SQLServer中运行的进程。
服务器 dbcreator 以创建、更改和除去数据库。
服务器 diskadmin 以管理磁盘文件。
服务器 bulkadmin 以执行BULKINSERT语句。
数据库 db_owner 数据库中有全部权限。
数据库 db_accessadmin 以添加或删除用户ID。
数据库 db_securityadmin 以管理全部权限、对象所有权、角色和角色成员资格。
数据库 db_ddladmin 以发出ALLDDL,但不能发出GRANT、REVOKE或DENY语句。
数据库 db_backupoperator 以发出DBCC、CHECKPOINT和BACKUP语句。
数据库 db_datareader 以选择数据库内任何用户表中的所有数据。
数据库 db_datawriter 以更改数据库内任何用户表中的所有数据。
数据库 db_denydatareader 不能选择数据库内任何用户表中的任何数据。
数据库 db_denydatawriter 不能更改数据库内任何用户表中的任何数据。

数据库架构:

数据库架构(Schema)在不同的数据库中定义是不同的,这里只阐述SQL Server中架构的定义。

Schema官方的解释叫做数据库逻辑对象的集合,说的通俗一点就是将数据库中的对象进行分组,以方便管理和进行权限管控。

举个例子:
某个地方有一片工业园区,这个园区就是服务器
在园区内,有很多企业落户在这里,这些企业就是数据库
工业园区每天早上6点定时,大家可以进来工作,这个定时就是JOB
白茶是整个工业园区的负责人,负责整个园区的所有事务,这时候白茶的角色是服务器角色
除了负责园区以外,白茶也在这片园区里面开办了一家企业,或在里面的某家企业任职,这时候白茶的角色是数据库角色
在园区,白茶是登录名,在企业内,白茶是用户名,且白茶可以在多家企业任职,所以在服务器层面,登录名和用户名的关系是一对多,落到具体的数据库层面,登录名和用户名的关系是一对一。
每个企业内,又分为不同的行政部门,这些部门就是数据库架构,将有关联关系的人分配到一起进行工作。
办公室里面装有监控,记录着大家日常的工作行为,监控就是日志
某部门员工小A,在拿到合同以后,需要找主管审批,然后上报公司存档,这一过程就是存储过程

白茶描述的可能有些地方不是特别的准确,只是为了让大家可以有个类似的概念。

使用实例

案例数据:

在白茶本机的数据库中,存在名为“CaseData”的数据库。

例子1:

创建名为“Test”的登录名,使其具有服务器登录权限,不赋予数据库权限。

结果如下:

例子2:

更新“Test”登录名的权限,赋予其“CaseData”数据库的只读权限。

结果如下:

例子3:

更新“Test”登录名的权限,使其仅能查询“CaseData”数据库中的某张表。

结果如下:

例子4:

创建“Test”的Schema,并创建一张表,不对Test登录名开放。

CREATE SCHEMA Test

结果如下:

CREATE TABLE [Test].[BAICHATEST](
  [Result] [int] NULL
)

结果如下:

这里是白茶,一个PowerBI的初学者。


相关文章

  • 角色和用户角色接口

    角色接口 1. 新增角色接口 接口功能 新增角色 URL http://api.xxx.yyy/v1/role 支...

  • BI-SQL丨AND & OR & IN

    AND函数 & OR函数 & IN函数 AND函数、OR函数和IN函数都可以理解是WHERE函数的补充,当然也可以...

  • BI-SQL丨WITH AS

    WITH AS 在DAX函数中,有些时候我们写的DAX逻辑引用次数过多,或者是性能过差,我们都会选择使用VAR来定...

  • 博客系统之角色管理系统

    建立角色的实体 建立用户与角色的关系 创建用户时关联角色 修改用户的角色 初始化角色和用户的数据

  • 六、角色和用户

    前面几章分别介绍了服务程序的安装、管理、登录、密码修改等信息,后面的几章就开始深入学习数据库、表等数据库内部结构和...

  • BI-SQL丨INSERT INTO

    INSERT INTO语句 INSERT INTO语句通常可以用来在SQL的查询中针对表插入某些行数据。 看到这里...

  • BI-SQL丨ORDER BY

    ORDER BY语句 ORDER BY语句,在SQL中通常可以用来作为查询结果的排序依据。当然在PowerBI的D...

  • BI-SQL丨WHERE

    WHERE函数 WHERE函数,属于常用函数之一,通常可以用来进行条件查询。 其用途类似于DAX函数中的Filte...

  • BI-SQL丨SELECT

    白茶之前介绍过,无论是从PowerBI的角度来看,还是从职业发展规划的角度来讲,一个不会SQL的PowerBI分析...

  • BI-SQL丨DISTINCT

    DISTINCT函数 在SQL中,DISTINCT函数也是常见函数之一,通常可以用来进行对表或者列进行去重操作。 ...

网友评论

    本文标题:BI-SQL丨角色和用户

    本文链接:https://www.haomeiwen.com/subject/fmigcdtx.html