SQL sever2008中创建用户并赋权

一、创建数据库dream

CREATE DATABASE dream;

二、创建登录用户XZS

法一:使用SSMS创建

通过查询 sys.syslogins 系统视图来确定当前登录是否具有系统管理员权限。执行以下查询语句:

SELECT name, isntname FROM sys.syslogins WHERE sysadmin = 1;

 

选择管理员账户--【安全性】--【登录名】--右键--【新建登录名】

打开 登录名-新建 页面,按顺序输入需求。

法二:使用SQL命令创建

  • Ⅰ、在 SQL Server 2008 中使用 SQL 身份验证类型创建登录名,可以使用以下命令:
USE master;
CREATE LOGIN [XZS] WITH PASSWORD = 'YourPassword', CHECK_POLICY = OFF;

上述命令将创建一个名为 "XZS" 的登录名,并指定密码。CHECK_POLICY = OFF 参数用于禁用密码策略检查,允许设置简单的密码。请将 'YourPassword' 替换为你要设置的实际密码。此外,记住在生产环境中启用强密码策略以提高安全性。

  • Ⅱ、在 SQL Server 2008 中使用 Windows 身份验证类型创建登录名,可以使用以下命令:
USE master;
CREATE LOGIN [YourDomain\XZS] FROM WINDOWS;

上述命令中的 [YourDomain\XZS] 部分需要替换为你的域名和用户名。例如,如果你的域名是 "MyDomain",用户名是 "XZS",则应将其替换为 [MyDomain\XZS]。执行上述命令后,将成功创建一个使用 Windows 身份验证类型的登录名,该登录名与指定的 Windows 用户关联。

三、数据库dream中创建用户XZS

在 SQL Server 2008 中的 "dream" 数据库中创建用户 "ZS",可以使用以下命令:

USE dream;
CREATE USER XZS;

上述命令将在 "dream" 数据库中创建一个名为 "XZS" 的用户。请注意,此命令只会创建用户,但没有授予权限。

四、对用户XZS授权

访问特定表或执行存储过程,需要使用 GRANT 命令来授予相应的权限。

下面是示例:

比如向用户 "XZS" 授予对 "table_cp" 表的 SELECT 权限:

GRANT SELECT ON table_cp TO XZS;

检查用户当前所用权限,使用命令:

SELECT *
FROM sys.database_permissions
WHERE grantee_principal_id = USER_ID('XZS');

查询使用了 USER_ID 函数,它将根据用户名获取相应的用户 ID,并通过与 "sys.database_permissions" 系统视图中 "grantee_principal_id" 列进行比较来检索权限信息。

或者登录该用户测试验证:

如果对存储过程授予执行权限,可以执行命令:

GRANT EXECUTE ON YourStoredProcedure TO YourLogin;

YourDatabase 替换为包含目标存储过程的数据库名称,将 YourStoredProcedure 替换为要授予权限的存储过程名称,将 YourLogin 替换为要授予权限的登录名。执行上述命令后,登录名 YourLogin 将获得对 YourStoredProcedure 存储过程的执行权限,允许其调用和执行该存储过程。

下面还有一些其他常见的权限,可以根据需要逐个授予给用户 "XZS":

USE YourDatabase;-- 授予对表的 SELECT, INSERT, UPDATE 和 DELETE 权限
GRANT SELECT, INSERT, UPDATE, DELETE ON YourTable TO XZS;-- 授予创建表的权限
GRANT CREATE TABLE TO XZS;-- 授予创建视图的权限
GRANT CREATE VIEW TO XZS;-- 授予连接数据库的权限
GRANT CONNECT TO XZS;

如果要撤销之前授予给用户 "XZS" 的权限,可以使用 REVOKE 命令。以下是一些示例命令,用于撤销上述提到的权限:

USE YourDatabase;-- 撤销对表的 SELECT, INSERT, UPDATE 和 DELETE 权限
REVOKE SELECT, INSERT, UPDATE, DELETE ON YourTable FROM XZS;-- 撤销对存储过程的执行权限
REVOKE EXECUTE ON YourStoredProcedure FROM XZS;-- 撤销创建表的权限
REVOKE CREATE TABLE FROM XZS;-- 撤销创建视图的权限
REVOKE CREATE VIEW FROM XZS;-- 撤销连接数据库的权限
REVOKE CONNECT FROM XZS;

比如撤回XZS的SELECT权限:

--撤销用户 "XZS" 对表 "table_cp" 的 SELECT 权限
REVOKE SELECT ON dream.dbo.table_cp FROM XZS;

执行结果:

本篇简单编写一个小示例,加强对用户角色相关的应用,更多用户相关用法请看我的另一篇文章【SQL sever中用户管理】,里面更详细记录了一些使用方法,链接:http://t.csdnimg.cn/Gi3XR

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/450238.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一款轻量级、高性能、功能强大的内网穿透代理服务器

简介 nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网htt…

如何保证MySQL和Redis中的数据一致性?

文章目录 前言一、缓存案例1.1 缓存常见用法1.2 缓存不一致产生的原因 二、解决方案2.1 先删除缓存,再更新数据库2.2 先更新数据库,删除缓存2.3 只更新缓存,由缓存自己同步更新数据库2.4 只更新缓存,由缓存自己异步更新数据库2.5 …

Fink CDC数据同步(一)环境部署

1 背景介绍 Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。 Flink CDC 是 Apache Flink 的一组源连接器,基于数据库日志的…

K8S部署Harbor(三部曲之三:使用)

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

Cmake编译Opencv3.3.1遇到有些文件无法下载的错误解决:

前言: 对于,opencv有些配置文件错误并未致命,所以,有错误也不影响后续的编译:但是,后引用如果要用,在回过头来还是要解决的。 问题表述: 比如,有些文件下载的错误&am…

[官方精简母盘WIM]_Windows10_22H2_19045.3930

[官方精简母盘WIM]_Windows10_22H2_19045.3930 【原汁原味】不过多阐述了哈,谁用谁知道😉 zh-cn_windows_10_business_editions_version_22h2_updated_jan_2024_x64_dvd_fef73a09 链接:https://pan.baidu.com/s/19Qj6cBHzaU8Rkn8WZ7-o2w?pw…

three.js 精灵模型Sprite作为标签

效果&#xff1a; <template><div><el-container><el-main><div class"box-card-left"><divid"threejs"style"border: 1px solid red; position: relative"></div></div></el-main></…

C++ 动态规划 线性DP 最长共同子序列

给定两个长度分别为 N 和 M 的字符串 A 和 B &#xff0c;求既是 A 的子序列又是 B 的子序列的字符串长度最长是多少。 输入格式 第一行包含两个整数 N 和 M 。 第二行包含一个长度为 N 的字符串&#xff0c;表示字符串 A 。 第三行包含一个长度为 M 的字符串&#xff0c;表…

excel给数据库初始化/旧数据处理(自动sql拼装)

思路&#xff1a; 首先导出数据到excel编写单条数据操作的sql利用excel CONCATENATE 函数自动生成&#xff0c;每一行数据的操作sql 小技巧:对于需要套娃的字段值&#xff0c;可以加一个临时列同样使用CONCATENATE函数进行sql拼装 案例&#xff1a; 1.临时列:CONCATENATE(C2, …

MyBatis笔记梳理

文章目录 什么是 MyBatis&#xff1f;前期准备依赖配置文件mapper利用注解 增、删、改、查查增改删#{} 和 ${} 的区别类型别名 动态sqlwhere ifforeachsql引用不常用标签 多表查询多对一&#xff08;一对一&#xff09;一对多多对多多表查询 个人理解 延迟加载概念使用场景延迟…

下载、安装Jenkins

进入官网 下载Jenkins https://www.jenkins.io 直接点击Download 一般是下长期支持版 因为它是java写的&#xff0c;你要运行它&#xff08;Jenkins.war&#xff09;肯定要有java环境 有两种方式去运行它&#xff0c;一种是下载Tomcat&#xff08;是很经典的java容器或者jav…

顺序表:数据结构的建筑积木

朋友们大家好啊&#xff0c;本节内容我们进入数据结构的第二节&#xff0c;顺序表有关内容&#xff0c;同步我们会学习计组原理与cpp相关知识&#xff0c;求三连啊&#xff01; 本节我们重点探讨动态顺序表关于插入数据和删除数据的多种情况的分析 顺序表 线性表顺序表静态顺序…