Chapter 2 User Authentication, Authorization, and Security(4):限制SA帐户管理权限
未经作者允许,不论什么人不得以“原创”形式公布,也不得已用于商业用途,本人不负责不论什么法律责任。
前一篇:http://blog.csdn.net/dba_huangzj/article/details/38756693
前言:
SA帐号是SQL Server的系统管理员。在安装过程中就能够启用。在SQL Server 2005之前。这个帐号不能改动,可是从2005開始,能够重命名或者禁用sa来降低被攻击的风险。在兴许版本号中。Sa仅作为向后兼容。
因为SA是众人皆知的帐号,不建议使用。
实现:
1. 禁用sa:
ALTER LOGIN [sa] DISABLE;
2. 重命名sa:
ALTER LOGIN [sa] WITH NAME=[换成不easy被猜到的名字];
3. 重命名sa之后,能够用以下的查询找到原sa是如今的什么帐号:
SELECT * FROM sys.sql_logins WHERE principal_id = 1;
当中principal_id为1,SID是0x01的就是原sa。
原理:
在安装时,假设没有选择混合身份验证。sa是默认禁用的。假设你有sysadmin或者securityadmin固定服务器角色,能够改动sa的密码。当你决定重命名sa时,要检查是否有其它应用在使用这个帐号。重命名将可能导致这些应用执行失败。
当没有管理员权限时怎样管理
本人见过非常多情景。因为有意无意。把全部具有管理员权限的Windows、SQL 帐号删了。而sa又被禁用或不知道密码时。非常多操作都不能进行,解决这样的问题的方法能够是重建master库。详见:http://msdn.microsoft.com/zh-cn/library/dd207003.aspx(又一次生成系统数据库)。可是这会丢失全部登录信息,除非你有近期的master库备份。而且须要停止SQL Server服务。
另一种方法。本人实践过:
启用本地帐户:
1.先看一下本机的帐户是否具有管理员的权限,假设没有加入上。 2.在開始菜单的搜索框中输入 cmd , 右键单击选择以管理员身份执行
3.在命令提示符输入 NET STOP MSSQLSERVRE 停止MSSQLSERVER执行(若已经停止则能够不用此方法)
4.若3有问题,提示报错。则能够在開始 -->SQL SERVER --> 配置工具 -->SQL SERVER 服务 --> 打开SQL SERVER属性-->高级 --> 启动參数里面加上 -m
5.若以上均无问题,则切换到安装路径。即Binn下sqlservr.exe的路径
如:cd C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn
6.执行 sqlservr.exe,即单用户模式进入了
7.再以管理员帐户又一次登陆开启一个窗体,输入SQLCMD -A
8.输入你要更改的操作命令就可以,在此处我须要的是把本机帐户加入
如:
USE master
GO
CREATE LOGIN [须要加入的帐号,一般格式是 机器名\登录账号名] FROM WINDOWS WITH DEFAULT_DATABASE=[Master]
GO
EXEC sp_addsrvrolemember @loginame=N'机器名\登录账号名', @rolename=N'sysadmin'
GO
为了避免错误,能够再加一个SQL的帐户以备不时之需。 也能够把sa命令启用
9.以上操作完毕之后又一次启动SQL SERVER服务登陆就可以
另外能够看看以下的博客:
http://www.cnblogs.com/lyhabc/p/3513560.html
下一个:http://blog.csdn.net/dba_huangzj/article/details/38844999
Chapter 2 User Authentication, Authorization, and Security(4):限制SA帐户管理权限的更多相关文章
- Chapter 2 User Authentication, Authorization, and Security(11):在已还原的数据库中修正登录映射错误
原文出处:http://blog.csdn.net/dba_huangzj/article/details/39496517,专题目录:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(8):创建映射到登录名的数据库用户
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38944121,专题目录:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(10):创建包含数据库
原文出处:http://blog.csdn.net/dba_huangzj/article/details/39473895,专题目录:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(9):防止登录名和用户查看元数据
原文出处:http://blog.csdn.net/dba_huangzj/article/details/39003679,专题目录:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(3):保server避免暴力袭击
原版的:http://blog.csdn.net/dba_huangzj/article/details/38756693,专题文件夹:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(7):创建和使用用户自定义服务器角色
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38895357,专题目录:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(6):服务器权限授予粒度
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38867489,专题目录:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(5):使用固定服务器角色
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38844999,专题目录:http://blog.csdn.net/dba_huangzj ...
- Chapter 2 User Authentication, Authorization, and Security(4):限制SA帐号的管理权限
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38817915,专题目录:http://blog.csdn.net/dba_huangzj ...
随机推荐
- Debian7.6安装过程中遇到的问题
一 sudo命令不能用 1 使用su切换到root用户,命令: su 2 使用名:vim /etc/sudoers加入sudoer用户,命令: vim /etc/sudoers 找到root=(ALL ...
- Keepalived+LVS+Nginx负载均衡之高可用
Keepalived+LVS+Nginx负载均衡之高可用 上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致整个系统无法正常 ...
- sql大小转换函数
将字段值转换成大写 UPDATE t SET [name]=UPPER([name]) 将字段值转换成小写 UPDATE t SET [name]=LOWER([name])
- Java的图片处理工具类
import Java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphic ...
- [欧拉] poj 2513 Colored Sticks
主题链接: http://poj.org/problem? id=2513 Colored Sticks Time Limit: 5000MS Memory Limit: 128000K Tota ...
- Cocos2d-x3.0下一个 Lua与C++打电话给对方
这里谈下Lua与C++如何实现相互通话 原来的连接:http://blog.csdn.net/qqmcy/article/details/26052771 DJLCData.h 实现类 // // D ...
- 学习NodeJS第一天:node.js介绍
Node.JS 前辈 C 程序猿 Ryan Dahl(http://four.livejournal.com/)工程,根据 Google 著名的开源 JavaScript 发动机 V8 对于二次开发 ...
- JDK8在Java转让Javascript脚本引擎动态地定义和运行代码
import java.lang.*; import java.util.Arrays; import java.util.List; import javax.script.Invocable; i ...
- bootstrap在 刷新页面,tab选择页面不会改变。
您可以直接复制代码 注意在同级别文件夹中引用 相应js 和 css. 实现tab影响 关键看bootstrap的 data-toggle= tab <html lang="en&quo ...
- OCP解决问题052-- DROP PROFILE app_user
133.You created a profile APP_USER and assigned it to the users. After a month, you decide to drop t ...