如题,本文简记一下SQL Sever里面登录用户(login)的创建,数据库用户(DBUser)的创建,以及给数据库用户分配权限(Grant)。

数据库有三层保护机制:

第一层:登录用户以及登录密码的保护,比如:你拥有进去小区大门的权限;

第二层:数据库的权限,比如:小区有很多楼栋,你只拥有进去指定楼栋的权限;

第三层:数据库操作的权限,比如:你进了指定的楼栋之后,只能做被允许的事情。

第一层里面,用户登录分为windows登录与SQLSever登录,windows登录不说,主要说SQLSever登录。

--第一层:登录用户创建--可以进小区了
use master
go
exec sp_addlogin 'test','123456'
--exec sp_droplogin 'test' --删除登录用户
--第二层:数据库用户创建--可以进房子了
use TSMS
go
exec sp_grantdbaccess 'test','testUser01'
--exec sp_dropuser 'testUser01' --删除数据库用户
--第三层:权限分配--可以在房子里干一些已被许可的事情了
use TSMS
go
grant select on Students to testUser01
--revoke select on Students to testUser01 --权限收回

ok,现在知道如何创建与删除登录用户、数据库用户、数据库权限了。继续补充一点东西,一个登录用户如果需要取得多个DB的操作权限,就需要创建多个DBUser,简单说:一个login可以拥有多个DBUser,每个DBUser对应一个DB。这就可以解释,在sa账号下,为什么每个数据库都有一个dbo(DB Owner)了,这样sa账号就可以操作所有数据库啦!

指定DB→安全性→查看用户

继续引入问题:如果登录用户超级多,难道要一个一个来给他们赋予权限?那太挫了!SQLSever定义了一组用户角色来解决这些问题,如下:

角色赋予与删除:

代码示例:

--用户角色管理
use TSMS
go
exec sp_addrolemember 'db_owner','testUser01' --赋予db_owner权限
exec sp_droprolemember 'db_owner','testUser01' --删除db_owner权限

SQLSever--基础学习--创建登录用户&创建数据库用户&分配权限的更多相关文章

  1. MySql添加用户,新建数据库,用户授权,删除用户,修改密码

    转自:http://www.cnblogs.com/fly1988happy/archive/2011/12/15/2288554.html MySql中添加用户,新建数据库,用户授权,删除用户,修改 ...

  2. Chapter 2 User Authentication, Authorization, and Security(8):创建映射到登录名的数据库用户

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

  3. sqlserver使用SQL语句创建数据库登录对象、数据库用户以及对为该用户赋予操作权限

    --创建登录名USE masterGO--PbMaster,密码123456CREATE LOGIN PbMaster with PASSWORD='1234GO --创建数据库用户USE E_Mar ...

  4. CREATE USER - 创建一个新的数据库用户帐户

    SYNOPSIS CREATE USER name [ [ WITH ] option [ ... ] ] where option can be: SYSID uid | [ ENCRYPTED | ...

  5. 【MySQL】MySQL无基础学习和入门之一:数据库基础概述和实验环境搭建

    数据库基础概述  大部分互联网公司都选择MySQL作为业务数据存储数据库,除了MySQL目前还有很多公司使用Oracle(甲骨文).SQLserver(微软).MongoDB等. 从使用成本来区分可以 ...

  6. SQL Server客户端登录名与数据库用户关联

    数据库迁移之后,在新的SQL Server客户端工具设置关联时,往往会报错: 用户.组或角色 'XXX' 在当前数据库中已存在. 解决方法: 首先介绍一下sql server中“登录”与“用户”的区别 ...

  7. MySql中添加用户,新建数据库,用户授权,删除用户,修改密码

    1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 创建用户: mysql> insert into mysql.user(Host,User,Passw ...

  8. MySql 5.7中添加用户,新建数据库,用户授权,删除用户,修改密码

    转自http://blog.csdn.net/w690333243/article/details/76576952 1.新建用户 创建test用户,密码是1234. MySQL -u root -p ...

  9. es6零基础学习之项目目录创建(一)

    和大家分享一下在学习es6的过程中所积累的东西,也希望更多的朋友能够互相学习 首先创建项目目录 打开你的命令行,什么文件下都可以,大家请随意,我自己用的git,输入 mkdir es6 创建一个完整的 ...

  10. CAS单点登录之mysql数据库用户验证及常见问题

    前面已经介绍了CAS服务器的搭建,详情见:搭建CAS单点登录服务器.然而前面只是简单地介绍了服务器的搭建,其验证方式是原始的配置文件的方式,这显然不能满足日常的需求.下面介绍下通过mysql数据库认证 ...

随机推荐

  1. 浅谈CLOSE_WAIT

    浅谈CLOSE_WAIT 发表于2016-01-19 TCP 有很多连接状态,每一个都够聊十块钱儿的,比如我们以前讨论过 TIME_WAIT 和 FIN_WAIT1,最近时不时听人提起 CLOSE_W ...

  2. CSPS模拟94

    我好菜啊...... %%%迪神AK 虽然考试成绩不太好,但至少能想到正解了,也不会菜到打不出暴力. T1:想了半天不会,发现直接打高精可以拿到80分,就赶紧码完扔了,结果正解是利用double避免了 ...

  3. ZROI Day6比赛总结

    比赛还没结束而且我没有参加比赛就来这里了. T1 略 T2 设\(ans_d\)表示\(d|b_i\)的方案数(最后反演一下就可以) 设\(d\not|a_i\)的个数为\(l\)(可以\(O(n\l ...

  4. CF891C Envy【最小生成树】

    题目链接 我们知道,根据Kruskal的贪心,对于最小生成树,每一种权值的边数是一样的,而且如果将\(\leq x\)的边做最小生成树,合法方案的联通性是一样的.所以我们可以对于所有边分开考虑. 对于 ...

  5. PHP全栈学习笔记28

    数据库Mysql概述,数据库操作,数据表操作,数据类型,管理数据库 order by asc; 升序 desc 降序 sql标准语言: 数据查询语言 select 数据定义语言 create/alte ...

  6. [bzoj 1861][zjoi2006] 书架

    传送门 Description 1. Top S--表示把编号为S的书放在最上面. 2. Bottom S--表示把编号为S的书放在最下面. 3. Insert S T--T∈{-1,0,1},若编号 ...

  7. mysql5.7 源码安装步骤

    操作系统:centos 7 mysql版本:5.7  下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-gli ...

  8. WebRTC MediaStream接口

    MediaStream API旨在方便地从用户本地摄像机和麦克风访问媒体流.getUserMedia()方法是访问本机输入设备的主要方式. API有几个关键点: 1. 实时视频或音频以流对象的形式表示 ...

  9. Spring|IOC与DI

    一.IOC IOC(Inversion of Control),控制反转,是Spring的核心内容之一. 什么是“控制反转”? [示例] package com.my; /** * @Author j ...

  10. CMMI基础知识扫盲

    CMMI全称是Capability Maturity Model Integration,CMMI是个好东西来的,但行内人士对她的认识并不全面,甚至有种种的误解.尽管网上有很多CMMI相关介绍,但一般 ...