首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

单用户多角色权限的MSSQL实现

本文转载:http://www.cnblogs.com/tonyqus/archive/2005/08/22/218271.html 数据表设计 分为用户表、角色表、角色拥有权限表、权限表、用户所属角色表...表名:Users(用户表) 字段 类型 长度 说明 ID int 自动编号,主键 UserName varchar 20 Password varchar 20 表名:Roles(角色表) 字段...类型 长度 说明 ID int 自动编号,主键 Name varchar 50 表名:UsersRoles(用户所属角色表) 字段 类型 长度 说明 ID int 自动编号,主键 UserID...Roles.ID做外键 表名:Permissions(权限表) 字段 类型 长度 说明 ID int 自动编号,主键 Name varchar 50 权限的名称 表名:RolesPermissions(角色权限表...假设用户A现在同时有两个角色Programmer和Contractor的权限 Permission名称 角色Programmer权限 角色Contractor权限 组合后权限 查看文件 允许(Allowed

94610

数据库安全之MSSQL渗透

本篇文章是MSSQL数据库漏洞提权复现记录,记录了实际中常见的MSSQL数据库漏洞并如何利用,对漏洞底层的原理简单分析,主要分为五个部分:MSSQL简介、MSSQL各版本安装、MSSQL基本操作、MSSQL...接着,开始我们的MSSQL数据库渗透学习!!...一、MSSQL简介 MSSQL(MicroSoft SQL Server数据库),是微软开发的关系型数据库管理系统DBMS,是一个较大型的数据库,提供数据库的从服务器到终端的完整的解决方案,数据库管理系统...MSSQL权限级别 sa权限:数据库操作,文件管理,命令执行,注册表读取等价于system,SQLServer数据库的最高权限 db权限:文件管理,数据库操作等价于 users-administrators...永远不要在tempdb数据库建立需要永久保存的表。 MSSQL注入 MSSQL注入与普通的MYSQL注入类似,但在数据结构特定函数名称上有些差异。

6.3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据库角色

    数据库角色 为了帮助管理数据库级别的安全性,SQL Server具有数据库角色。就像服务器角色一样,也有两种不同类型的数据库角色:固定的和用户定义的。...固定的数据库角色就像固定的服务器角色一样,这意味着它们拥有一组特定的权限,这些权限不能被更改。 固定的数据库角色只提供对特定数据库中的数据库资源的权限。...如果数据库用户是固定数据库角色的成员,则它们继承为固定数据库角色预定义的权限。每个数据库包含相同的固定数据库角色集。表2包含每个固定数据库角色定义的名称和定义,如Microsoft文档中所示。...要确定数据库用户是否为数据库角色的成员,可以使用SSMS检查角色成员关系,具体步骤如下 连接到一个实例 扩展数据库 展开要查看固定数据库角色数据库 展开Security项 展开Roles项...预定义的服务器或数据库角色 SQL server中提供了几种预定义的服务器角色数据库角色。这些预定义的角色为成员提供了一组基于角色的固定权限。

    78110

    oushudb-数据库角色和权限-数据库角色

    数据库角色从概念上与操作系统用户是完全无关的,在实际使用中把它们对应起来可能比较方便。...数据 库角色在整个数据库集群中是全局的,我么可以通过执行SQL 命令CREATE ROLE来创建一个角色,如 : CREATE ROLE name; 要删除一个现有角色,可以使用DROP ROLE命令:...我们可以在 shell 命令上直接 调用它们: 要检查现有角色的集合,可以检查pg_roles系统表,使用SQL命令: psql的元命令du也可以用于列出现有角色。...为了能创建初始数据库系统,新建立的数据库总是包含一个预定义的”超级用户”角色, 通常这个角色名 叫gpadmin。 为了创建更多角色,你必须首先以这个初始用户角色连接。...每一个和数据库的连接都必须用一个角色身份进行,这个角色决定在该连接上的初始访问权限。 一个客 户端连接可以使用的角色集合是由客户认证设置决定的, 这个我们后续会讲到。

    31910

    数据库PostrageSQL-数据库角色

    数据库角色 PostgreSQL使用角色的概念管理数据库访问权限。一个角色可以被看成是一个数据库用户或者是一个数据库用户组,这取决于角色被怎样设置。...角色可以拥有数据库对象(例如,表和函数)并且能够把那些对象上的权限赋予给其他角色来控制谁能访问哪些对象。...更多角色权限在多个数据库对象上的效果可以在Section 5.6中找到。 21.1. 数据库角色 数据库角色在概念上已经完全与操作系统用户独立开来。...数据库角色在一个数据库集簇安装范围内是全局的(而不是独立数据库内)。...为了引导数据库系统,一个刚刚被初始化好的系统总是包含一个预定义角色。这个角色总是一个“superuser”,并且默认情况下(除非在运行initdb时修改)它的名字和初始化数据库集簇的操作系统用户相同。

    1.6K10

    数据库PostrageSQL-默认角色

    默认角色 PostgreSQL提供了一组默认角色,它们提供对特定的、通常需要的、需要特权的功能和信息的访问。...管理员可以把这些角色GRANT给其环境中的用户或者其他角色,让这些用户能够访问指定的功能和信息。 Table 21.1中描述了默认的角色。...pg_read_server_files、pg_write_server_files以及pg_execute_server_program角色的目的是允许管理员有一些可信但不是超级用户的角色来访问文件以及以运行数据库的用户在数据库服务器上运行程序...由于这些角色能够防伪服务器文件系统上的任何文件,因此在直接访问文件时它们会绕过任何数据库级别的权限检查并且它们可以被用来得到超级用户级别的访问,因此在把这些角色授予给用户时应当非常小心。...pg_monitor、pg_read_all_settings、pg_read_all_stats和pg_stat_scan_tables角色的目的是允许管理员能为监控数据库服务器的目的很容易地配置角色

    98810

    数据库PostrageSQL-角色属性

    角色属性 一个数据库角色可以有一些属性,它们定义角色的权限并且与客户端认证系统交互。 login privilege 只有具有LOGIN属性的角色才能被用于一个数据库连接的初始角色名称。...一个带有LOGIN属性的角色可以被认为和一个“数据库用户”相同。...database creation 一个角色必须被显式给予权限才能创建数据库(除了超级用户,因为它们会绕开所有权限检查)。...数据库口令与操作系统命令独立。在角色创建时指定一个口令:CREATE ROLE name PASSWORD 'string'。 在创建后可以用ALTER ROLE修改一个角色属性。...一个好习惯是创建一个具有CREATEDB和CREATEROLE权限的角色,而不是创建一个超级用户,并且然后用这个角色来完成对数据库角色的例行管理。

    57000

    数据库PostrageSQL-删除角色

    删除角色 由于角色可以拥有数据库对象并且能持有访问其他对象的特权,删除一个角色 常常并非一次DROP ROLE就能解决。...由于 REASSIGN OWNED不能访问其他数据库中的对象,有必要 在每一个包含该角色所拥有对象的数据库中运行该命令(注意第一个这样的 REASSIGN OWNED将更改任何在数据库间共享的该角色拥...再次,由于这个命令不能 访问其他数据库中的对象, 有必要在每一个包含该角色所拥有对象的数据库中运行 该命令。...还有,DROP OWNED将不会删除整个数据库或者表空间, 因此如果该角色拥有任何还没有被转移给新拥有者的数据库或者表空间,有必要手工删除它们。...总之,移除曾经拥有过对象的角色的方法是: REASSIGN OWNED BY doomed_role TO successor_role; DROP OWNED BY doomed_role; – 在集簇中的每一个数据库中重复上述命令

    54720

    JSW - 基于WEB的MSSQL数据库查询平台

    一般做法都是: 通过数据库账号限制查询人员、限制查询的表和字段。但不好统计开发人员都查询了什么数据 使用跳板机,所有查询都要在跳板机上进行。进出跳板机数据文件要过审查机制。...我们想使用第三级,但能支持的数据库只有MySql没有发现能支持微软SqlServer的。本项目就是在这个基础上进行开发的。 目前支持的功能列表 多账号登录,强制二次验证【OTP】保证登录的安全。...查询的目标数据库支持SqlServer和MySql。...使用druid数据库连接池 数据库记录每次SQL执行脚本,并限制返回的结果数量 支持查询结果的csv格式导出 脚本输入框语法高亮,智能提醒 存储过程查看,表数据大小快速查看 项目部署 环境安装 本项目使用...我们返回前台,看看主界面,主界面分为左右两部分,左侧主要为数据库和表的导航。右侧主要为SQL语句书写区,执行结果展示区。

    2.5K10

    oushudb-数据库角色和权限

    ; /--查看所有角色/ /du --在命令格式下查看所有角色的命令 角色的权限 一个数据库角色可以有很多权限,这些权限定义了角色和拥有角色的用户可以做的事情。...role db_role3 CREATEDB; --创建具有创建数据库权限的角色 create role db_role4 CREATEROLE --创建具有创建角色权限的角色 alter role...db_role1 nologin nocreatedb; --修改角色取消登录和创建数据库权限 用户 其实用户和角色都是角色,只是用户是具有登录权限的角色。...; --从用户1移除角色1,用户不在拥有角色1的权限 OushuDB 使用 角色 的概念管理数据库访问权限。...根据角色自身的设置不同,一个角色可以看做是一个 或者一组数据库用户。 角色可以拥有数据库对象(比如表)以及可以把这些对象上的权限赋予其它角色, 以控制谁拥有访问哪些对象的权限。

    26140

    数据库PostrageSQL-角色成员关系

    . ; 你也可以为其他组角色授予成员关系(因为组角色和非组角色之间其实没有任何区别)。...数据库将不会让你设置环状的成员关系。另外,不允许把一个角色中的成员关系授予给PUBLIC。 组角色的成员可以以两种方式使用角色的权限。...第一,一个组的每一个成员可以显式地做SET ROLE来临时“成为”组角色。在这种状态中,数据库会话可以访问组角色而不是原始登录角色的权限,并且任何被创建的数据库对象被认为属于组角色而不是登录角色。...joe连接后,一个数据库会话将立即拥有直接授予给joe的权限,外加任何授予给admin的权限,因为joe“继承了” admin的权限。...角色属性LOGIN、SUPERUSER、CREATEDB和CREATEROLE可以被认为是一种特殊权限,但是它们 从来不会像数据库对象上的普通权限那样被继承。

    54710
    领券