SQL Server的权限模型

创建登录名

USE [master]
GO
/* For security reasons the login is created disabled and with a random password. */
/****** Object:  Login [lee]    Script Date: 2020/1/1 21:43:33 ******/
CREATE LOGIN login1 WITH
PASSWORD=N‘login1‘,--密码
DEFAULT_DATABASE=[TestDb],--默认登录数据库
DEFAULT_LANGUAGE=[简体中文],
CHECK_POLICY=ON
GO

此时如果直接用此登录名登录,则会报错;原因是没有与数据库【TestDb】中的任何用户建立映射关系。

USE [TestDb]
GO

/****** Object:  User [User1]    Script Date: 2020/1/1 21:58:13 ******/
CREATE USER [User1] FOR LOGIN [login1] --与登录名建立映射关系
WITH DEFAULT_SCHEMA=[schema1]--设置用户的Schema
GO

再次登录则可以登录成功TestDb,此时没有任何权限,什么也看不到。

执行以下代码进行授权

USE [TestDb]
GO
--创建schema,将其所有者设置为用户user1
CREATE SCHEMA [schema1] AUTHORIZATION user1
--创建角色
CREATE ROLE [role1]
--设置角色权限
grant create table,create procedure,create view to [role1]
--将用户User1添加到role1角色中
 exec sp_addrolemember ‘role1‘,‘User1 ‘ 

原文地址:https://www.cnblogs.com/zlgan/p/12130836.html

时间: 2024-11-11 01:06:29

SQL Server的权限模型的相关文章

SQL Server 中心订阅模型(多发布单订阅)

原文:SQL Server 中心订阅模型(多发布单订阅) 大多数SQL Server 复制拓扑都是基于中心发布模型,它是由一个发布复制到一个或者多个订阅.另一个复制模型是中心订阅模型,它使用事务复制由多个发布复制到一个订阅中. 中心订阅模型用于从多个数据源中合并数据,例如: >从多个数据仓库中汇总库存到企业总部的中心服务器: >同一个公司中从持续发送远程办公数据到中心办公系统中: >合并订单信息到同一个地方集中处理. 默认情况下,订阅通过快照代理初始化生成快照并被分发代理应用.当快照被应

SQL Server的权限管理和数据恢复

一.SQL Server权限设置 SQL Server与其他服务器不同,通常保存着运营.开发.市场等重要数据,其中大量数据还涉及机密.因此掌握SQL Server的权限设置是DBA必备的关键技能. 1.SQL Server的安全机制 SQL Server的安全性是建立在认证和访问许可两种安全机制之上的.其中,认证是用来确定登录SQL Server的用户的登录账号和密码是否正确,以此来验证其是否具有连接SQL Server的权限:访问许可用来授予用户或组能够在数据库中执行哪些操作,如创建表.查询数

SQL SERVER数据库权限

在数据库开发中,经常要设置用户对数据库的操作权限,通常有以下2种办法: 1.在数据库中,建立一个权限表,记录每个用户对相应模块(界面)的操作权限,然后在程序中使用. 我看到的一些公司的数据库开发(用友也是这样实现)就用这种方式. 2.直接在SQL SERVER中建立数据库用户,配置每个用户对数据表的操作权限. 在这里我主要讲述第2种方式,可能使用到的SQL语句,直接配置数据表的权限,然后通过SQL语句返回用户对表的操作权限,可以在应用程序中使用. select * from sys.sysuse

第四篇 SQL Server安全权限

本篇文章是SQL Server安全系列的第四篇,详细内容请参考原文. 权限授予主体访问对象,以执行某些操作.SQL Server有大量你可以授予给主体的权限,你甚至可以拒绝或回收权限.这听起来有点复杂,但在这一系列,你将知道SQL Server权限是如何工作的,你可以非常精细地控制对象创建.数据访问.以及其他类型操作在数据库和服务器对象上.权限权限像一个签证允许你访问外国,通常有一些基本条件.比如,你只有六个月的期限,你被限制在3/7的地区旅行.类似的,SQL Server权限给主体访问数据库对

关于 sql server 数据库权限乱七八糟的一些东西

研究权限这些东西主要是因为今天正好在折腾数据库备份相关的东西,备份好说,备份完了就完了. 但是恢复备份的时候,需要先让数据库脱机,然后恢复,然后再联机,嗯,问题就出在联机上了. 根据 MSDN 的说法:https://msdn.microsoft.com/zh-cn/library/bb522682.aspx OFFLINE 只需要拥有本数据库的 ALTER DATABASE 权限,但是 ONLINE 却需要拥有服务器级别的 ALTER ANY DATABASE 权限. 感觉好坑的样子...  

SQL Server 数据库权限设置

一.登录权限:SQL server的身份验证模式有以下两种: 1. Windows身份验证模式: 当使用Windows身份验证时,SQL server会使用操作系统中的Windows用户和密码.也就是说,当用户身份由Windows进行验证,SQL server不要求提供密码,也不执行身份验证.Windows身份验证是比SQL server身份验证更为安全的,可以保护SQL server免受大部分来自Internet的 攻 击.Windows身份验证适合用于在局域网内部(如AD域)访问数据库的情况

sql server 账号权限处更新与更改的区别

简单来说就是update与alter的区别,如下图 右键属性 update EveryMatchInfo SET MatchNO=111 --更新权限 ALTER table EveryMatchInfo add idd int  --更改权限 实际就是DDL.DML的区别,附一些简要说明 DML(data manipulation language)是数据操纵语言:它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言.

SQL Server提升权限相关命令及防范

exec master..xp_cmdshell "net user name password /add"-- ;exec master..xp_cmdshell "net localgroup administrators name /add"-- 程序代码开启cmdshell的SQL语句 EXEC sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll' 判断存储扩展是否存在 select count(*)

SQL SERVER数据库权限分配

1,新建 只能访问某一个表的只读用户. --添加只允许访问指定表的用户:         exec     sp_addlogin     '用户名','密码','默认数据库名'               --添加到数据库         exec     sp_grantdbaccess     '用户名'           --分配SELECT整表权限         GRANT     SELECT     ON  表名  TO   [用户名]         --分配SELECT权限