定义SQL Server数据库用户的权限的方法有哪些

定义SQL Server数据库用户的权限的方法有哪些,第1张

1把你的用户自定义数据库放入一个系统提供的数据库。系统提供的数据库有:db_owner,db_accessadmin,db_securityadmin,db_ddladmin,db_backupoperator,db_datareader,db_datawriter,db_denydatareader和db_denydatawriter。

2把你的用户自定义数据库添加到将作为开发环境的db_datareader和db_datawriter中。如果你已经有一个可以添加和/或删除用户自定义数据库对象的开发环境,你就只需要取消这个权限或是把你的用户自定义数据库添加到db_ddladmin系统数据库中。

3把数据库用户作为数据库成员添加到你的用户自定义数据库中。

4取消所有的公共权限。

不要向公共用户发出DENY命令。如果你向公共用户发出了DENY命令,用户将不能读取用户自定义数据库的对象。用REVOKE命令代替DENY命令来取消读取公共数据库的权限。这样设置后,数据库的用户就是用户自定义数据库的成员了。用户自定义数据库具有读取用户自定义数据库对象的权限。因此这个用户自定义数据库允许数据库用户读取用户自定义数据库的对象。

一般最高权限需要connect,resource,dba这三个即可。

语句:

grant connect,resource,dba to 用户;

权限说明:

dba:拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。

resource:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。

connect:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。

db_owner 拥有数据库的所有许可

db_securityadmin 能建立架构、更改角色

db_accessadmin 能添加或删除用户、组或成员

db_backupoperator 能备份数据库

db_datareader 能从数据库表中读数据

db_datawriter 能修改数据库表中的数据

db_ddladmin 能添加、修改或删除数据库对象

db_denydatareader 不能从数据库表中读数据

db_denydatawriter 不能修改数据库表中的数据

Public 维护默认的权限

怎样允许他人查看或执行查询,但不能更改数据或查询设计?

答:在安全工作组里,可以指定他人查看查询返回数据的权限。如果是 *** 作查询,还可以允许他们执行查询,即使限制他们不得查看查询的基表或基础查询。

1、在“设计”视图中打开查询。

2、在查询“设计”视图中单击设计网格与字段列表外的任何地方,以选定查询。

3、单击工具栏上的“属性”按钮 ,以显示查询的属性表。

4、将“执行权限”属性设置为“所有者的”。

设置了此属性后,应出现以下情形:

所有用户都具有查询所有者的查看或执行查询权限。

只有查询所有者才能保存更改过的查询。

只有查询所有者才能更改查询的所有权。

注释 也可以设置所有新查询的默认权限。请在“工具”菜单上单击“选项”,再单击“表/查询”选项卡,然后单击想要使用的“执行权限”选项。

问:怎样定义用户级安全?

答:

1、加入一个安全工作组或新建一个工作组信息文件。

要点 要完全确保数据库的安全,请不要使用安装 Microsoft Access

时创建的工作组信息文件所定义的默认工作组。而应该确保定义所加入的工作组的工作组信息文件是使用唯一的工作组 ID (WID) 创建的,否则应该创建一个新的工作组。

2、激活“登录”对话框。

*** 作方法:启动 Microsoft Access ,打开数据库,

单击“工具”菜单“安全”子菜单中的“用户与组帐号”命令,单击“用户”选项卡,确保在“名称”框中预定义的“管理员”用户帐号呈高亮度显示,单击“更改登录密码”选项卡,单击“新密码”框,然后键入新密码。不要在“旧密码”框中输入任何内容,

在“验证”框中再次键入密码进行确认,然后单击“确定”按钮。退出ACCESS并重新启动ACCESS,就会出现“登录”对话框。

3、创建管理员的用户帐号。

*** 作方法:

1)打开工作组管理器,按下“联接。。。”按钮,选择 使用在第1 步骤中创建的安全工作组信息文件,退出管理器,启动 Microsoft Access。

要点 如果要确保数据库是完全安全的,请不要使用安装 Microsoft Access

时创建的工作组信息文件中定义的默认工作组,并确保定义所用工作组的工作组信息文件是以唯一的工作组 ID (WID) 创建的,否则就应该重新创建一个工作组信息文件。

2)选择“工具”菜单“安全”子菜单中的“用户与组帐号”命令,单击“用户”选项卡上的“新建”按钮, 在“新用户/组”对话框中,键入管理员帐号名称和个人 ID

(PID),然后单击“确定”按钮新建帐号。

警告 一定要记住正确的帐号名和 PID,包括字母的大小写,并其将其放在安全的地方。如果要重新创建帐号,必须提供其名称和 PID。遗忘或丢失了帐号名和 PID

将无法恢复。

3)在“可用的组”框中,单击“管理员组”,然后单击“添加”按钮。Microsoft Access

将把新的管理员帐号添加到管理员组并在“隶属于”框中显示“管理员组”。

4)单击“确定”按钮新建管理员帐号。

4、退出 Microsoft Access 并以新建的管理员身份登录。

5、删除管理员组中的管理员帐号。

*** 作方法:选择“工具”菜单“安全”子菜单中的“用户与组帐号”命令,在“用户”选项卡上的“名称”框中输入要移去的用户。在“隶属于”框中,选择要“管理员组”的组,然后单击“删除”按钮。

6、打开要设置安全的数据库。

7、单击“工具”菜单“安全”子菜单中的“用户级安全性向导”命令。

8、根据向导对话框中的指示完成各个步骤。 ]

“用户级安全性向导”将创建一个新的数据库,并将原有数据库中所有对象的副本导出到新的数据库中,然后通过取消用户组对新数据库对象的所有权限,为向导第一个对话框中的选定对象类型设置安全,然后加密新数据库。原有数据库没有进行任何更改。表之间的关系和所有的链接表在新的数据库中都将重建。

现在,只有在步骤 1

中加入的工作组管理员组成员可以访问新数据库中设置了安全的对象。“用户”组则不具备对这些对象的权限。要限制用户和/或组对这些对象的访问必须为其设置权限。

另外,你可以定义不同的试图,这样就给不同的人,不同的信息表示了

--什么是角色

例如,一个公司可能成立慈善活动委员会,其中包括来自不同部门,来自组织中各种不同级别的职员。这些职员需要访问数据库中特殊的项目表。没有只包括这些职员的现有 Windows NT 40 或 Windows 2000 组,而且没有其它理由在 Windows NT 40 或 Windows 2000 中创建这样一个组。可以为此项目创建一个自定义 SQL Server 数据库角色 CharityEvent,并将个别的 Windows NT 和 Windows 2000 用户添加到此数据库角色。当应用权限后,数据库角色中的用户便获得对表的访问权限。其它数据库活动的权限不受影响,只有 CharityEvent 用户可以使用该项目表。

SQL Server 角色存在于一个数据库中,不能跨多个数据库。

使用数据库角色的好处包括:

1对于任何用户,都可以随时让多个数据库角色处于活动状态如果所有用户、组和角色都在当前数据库中,则 SQL Server 角色可以包含 Windows NT 40 或 Windows 2000 组和用户,以及 SQL Server用户和其它角色。

2在同一数据库中,一个用户可属于多个角色。

3提供了可伸缩模型以便在数据库中设置正确的安全级别。

说明:数据库角色要么在创建角色时由明确指定为所有者的用户所拥有,要么在未指定所有者时为创建角色的用户所拥有。角色的所有者决定可以在角色中添加或删除谁。但是,因为角色不是数据库对象,不能在同一数据库中创建由不同用户所拥有的多个同名角色。

权限--

是指为了保证职责的有效履行,任职者必须具备的,对某事项进行决策的范围和程度。它常常用“具有批准……事项的权限”来进行表达。例如,具有批准预算外5000元以内的礼品费支出的权限。

简单讲就是数据库的系统权限很大,因为拥有系统权限就意味着可以 *** 作该数据库系统的所有对象。而对象权限就是说只能 *** 作某个特定的对象。

比如oracle中:sys拥有系统权限,他是系统管理员,自己建一个用户test_user

只给他 *** 作数据表的权限,那么他只有 *** 作表对象的权限,没有 *** 作其他对象的权限。

个人愚见,希望对你有所启发。

以上就是关于定义SQL Server数据库用户的权限的方法有哪些全部的内容,包括:定义SQL Server数据库用户的权限的方法有哪些、oracle数据库用户给哪些权限、数据库中的 *** 作权限等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9796422.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存