在sqlserver用户验证模式中什么用户是内置的默认管理员

在sqlserver用户验证模式中什么用户是内置的默认管理员,第1张

1、salogin是服务器级别的特殊安全主体,登录名是sa,是服务器级别的SQLLOGIN。默认情况下,在安装SQLServer实例时,salogin就被创建了。从SQLServer2005开始,salogin的默认数据库是master,并且是sysadmin角色的成员,因此salogin拥有服务器的最高权限,并且权限不能被限制。虽然salogin不能被删除,但是可以禁用。一旦sa被禁用,任何人都无法使用salogin来管理SQLServer实例。

2、在数据库级别,SQLServer在每个数据库中都预先创建了两个特殊的用户:dbo和guest,在每个数据库中都有这两个用户(User)。

3、dbo(databaseowner的简称):是WINDOWS_USER,数据库的所有者(Owner),每个数据库都有一个dbo用户,SQLServer把固定服务器角色sysadmin的成员、salogin和数据库的owner都映射到数据库用户dbo上。

4、guest:宾客,是SQL_USER,对于任何没有映射到数据库用户的有效登陆(Login),SQLServer使用guest账户登陆数据库。在登陆数据库之前,需要分配权限给guest,一般给guest查看(select)数据库对象的权限,默认情况下,guest是没有登录数据库的权限。

更改拥有者:

usage()

{

cat << EOF

usage: $0 options

This script set ownership for all table, sequence and views for a given database

Credit: Based on >

LS已经告诉你了创建数据库所有着用户的方法了。

关于说的你说的第二个问题,其实是一般项目开发中数据库用户管理的问题,实际上任何一个项目,如果要访问数据库原则上应该创一个新的用户,并且尽可能不要将其授权为dbo,在能够保证项目运行的情况下尽可能的尽量缩小该用户的权限,这样可以保证数据库的安全。因为即使项目安全问题导致数据库用户及其密码泄露,也要将该危害降低到最小的层度。

在Enterprise

Manager中,依次点击:

安全(Security)→登录名→对应的用户点击右键→属性→数据库访问→点击需要改变所有者的数据库,在下一个列表中,将db_owner权限去掉,点击确定,按相同的步骤和方法再一次 *** 作,只不过是将db_owner权限选中,点击确定即可。

区别是

host是1主人,东道主; 节目主持人; 酒店业主;2当主人; 主办宴会

owner指的是物主,所有人;

例句分析

host

1Apart from my host, I didn't know a single person there

除了主人外,那里的人我一个也不认识。

2Tonight she hosts a ball for 300 guests

今晚她做东举办一场有300名客人参加的舞会。

3Barcelona was chosen to be host of the 1992 Olympic games

巴塞罗那获选为1992年奥运会的主办城市。

owner

1The owner of the store was sweeping his floor when I walked in

我进去的时候这家商店的店主正在扫地。

2Every pet owner knows their animal has its own personality

宠物的主人都知道它们有自己的个性。

3New owners will have to wait until September before moving in

新业主要等到9月份才能入住。

首先打开数据库,并以windows身份验证模式_牢固数据库;

然后在左侧的对象资源管理器中展开安全性节点,鼠标右键点击节点中的登录名,在d出的菜单中单击新建登录名

1在登录名右侧的文本框中输入新建的管理员账号名称;

2一对单选按钮组中,选择SqlServer身份验证,并输入登录密码;

3勾选强制实施密码策略复选框;(密码策略一般是指加强用户登录的密码方式例如:可能需要至少8个以上字符,或在尝试若干登陆失败后该账号即被禁止登陆等等!如果觉得麻烦可以不必勾选!)。

4不勾选强制密码过期;(如果勾选该项的话,则每一次登陆后系统都会提示用户必须更改现有密码,如非特殊需求,不建议勾选此项!)。

然后继续点选左侧选项页下的服务器角色;

在右侧的服务器角色面板中,勾选public和sysadmin两项!

注意:如果建立的账号不需要具备系统管理员的权限时,则不要勾选sysadmin项!

继续点选左侧选项页中的用户映射。

在右侧的面板中勾选该账号可以进行管理 *** 作的数据库名称!并在该面板下面的数据库角色成员身份中勾选db_owner项!

注意:如果给一个无系统管理权限的账号指定管理一个数据库时,则一定要勾选db_owner项!否则该账号则无法看到该数据库中的任何数据表!

选后点选选择页下的状态选项进行设置

角色是一个强大的工具,使您得以将用户集中到一个单元中,然后对该单元应用权限。对一个角色授予、拒绝或废除的权限也适用于该角色的任何成员。可以建立一个角色来代表单位中一类工作人员所执行的工作,然后给这个角色授予适当的权限。当工作人员开始工作时,只须将他们添加为该角色成员,当他们离开工作时,将他们从该角色中删除。而不必在每个人接受或离开工作时,反复授予、拒绝和废除其权限。权限在用户成为角色成员时自动生效。

Microsoft® Windows NT® 和 Windows® 2000 组的使用方式与角色很相似。有关更多信息,请参见组。

如果根据工作职能定义了一系列角色,并给每个角色指派了适合这项工作的权限,则很容易在数据库中管理这些权限。之后,不用管理各个用户的权限,而只须在角色之间移动用户即可。如果工作职能发生改变,则只须更改一次角色的权限,并使更改自动应用于角色的所有成员, *** 作比较容易。

在 Microsoft® SQL Server™ 2000 和 SQL Server 70 版中,用户可属于多个角色。

以下脚本说明登录、用户和角色的添加,并为角色授予权限。

USE master

GO

sp_grantlogin 'NETDOMAIN\John'

GO

sp_defaultdb 'NETDOMAIN\John', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Sarah'

GO

sp_defaultdb 'NETDOMAIN\Sarah', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Betty'

GO

sp_defaultdb 'NETDOMAIN\Betty', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Ralph'

GO

sp_defaultdb 'NETDOMAIN\Ralph', 'courses'

GO

sp_grantlogin 'NETDOMAIN\Diane'

GO

sp_defaultdb 'NETDOMAIN\Diane', 'courses'

GO

USE courses

GO

sp_grantdbaccess 'NETDOMAIN\John'

GO

sp_grantdbaccess 'NETDOMAIN\Sarah'

GO

sp_grantdbaccess 'NETDOMAIN\Betty'

GO

sp_grantdbaccess 'NETDOMAIN\Ralph'

GO

sp_grantdbaccess 'NETDOMAIN\Diane'

GO

sp_addrole 'Professor'

GO

sp_addrole 'Student'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\John'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\Sarah'

GO

sp_addrolemember 'Professor', 'NETDOMAIN\Diane'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Betty'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Ralph'

GO

sp_addrolemember 'Student', 'NETDOMAIN\Diane'

GO

GRANT SELECT ON StudentGradeView TO Student

GO

GRANT SELECT, UPDATE ON ProfessorGradeView TO Professor

GO

该脚本给 John 和 Sarah 教授提供了更新学生成绩的权限,而学生 Betty 和 Ralph 只能选择他们自己的成绩。Diane 因同时教两个班,所以添加到两个角色中。ProfessorGradeView 视图应将教授限制在自己班学生的行上,而 StudentGradeView 应限制学生只能选择自己的成绩。

SQL Server 2000 和 SQL Server 70 版在安装过程中定义几个固定角色。可以在这些角色中添加用户以获得相关的管理权限。下面是服务器范围内的角色。

固定服务器角色

描述

sysadmin

可以在 SQL Server 中执行任何活动。

serveradmin

可以设置服务器范围的配置选项,关闭服务器。

setupadmin

可以管理链接服务器和启动过程。

securityadmin

可以管理登录和 CREATE DATABASE 权限,还可以读取错误日志和更改密码。

processadmin

可以管理在 SQL Server 中运行的进程。

dbcreator

可以创建、更改和除去数据库。

diskadmin

可以管理磁盘文件。

bulkadmin

可以执行 BULK INSERT 语句。

可以从 sp_helpsrvrole 获得固定服务器角色的列表,可以从 sp_srvrolepermission 获得每个角色的特定权限。

每个数据库都有一系列固定数据库角色。虽然每个数据库中都存在名称相同的角色,但各个角色的作用域只是在特定的数据库内。例如,如果 Database1 和 Database2 中都有叫 UserX 的用户 ID,将 Database1 中的 UserX 添加到 Database1 的 db_owner 固定数据库角色中,对 Database2 中的 UserX 是否是 Database2 的 db_owner 角色成员没有任何影响。

固定数据库角色

描述

db_owner

在数据库中有全部权限。

db_accessadmin

可以添加或删除用户 ID。

db_securityadmin

可以管理全部权限、对象所有权、角色和角色成员资格。

db_ddladmin

可以发出 ALL DDL,但不能发出 GRANT、REVOKE 或 DENY 语句。

db_backupoperator

可以发出 DBCC、CHECKPOINT 和 BACKUP 语句。

db_datareader

可以选择数据库内任何用户表中的所有数据。

db_datawriter

可以更改数据库内任何用户表中的所有数据。

db_denydatareader

不能选择数据库内任何用户表中的任何数据。

db_denydatawriter

不能更改数据库内任何用户表中的任何数据。

可以从 sp_helpdbfixedrole 获得固定数据库角色的列表,可以从 sp_dbfixedrolepermission 获得每个角色的特定权限。

数据库中的每个用户都属于 public 数据库角色。如果想让数据库中的每个用户都能有某个特定的权限,则将该权限指派给 public 角色。如果没有给用户专门授予对某个对象的权限,他们就使用指派给 public 角色的权限。

这应该是ap30_qd无EXP_FULL_DATABASE权限,应该给该用户授权:

  GRANT EXP_FULL_DATABASE TO ap30_qd;

  GRANT IMP_FULL_DATABASE TO ap30_qd;

  GRANT RESOURCE TO ap30_qd;

以上就是关于在sqlserver用户验证模式中什么用户是内置的默认管理员全部的内容,包括:在sqlserver用户验证模式中什么用户是内置的默认管理员、postgresql数据库怎么更改其中一个数据库的拥有者、sql server 2008 r2 新建一个登录名 给数据库db_owner等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/9286737.html

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

发表评论

登录后才能评论

评论列表(0条)

保存