日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL Server遗失管理权限账号密码怎么办?

發布時間:2023/12/2 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL Server遗失管理权限账号密码怎么办? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

假如一個SQL Server實例只允許SQL身份認證模式登錄數據庫,而糟糕的是你忘記了sa的密碼(sa出于安全考慮應該被禁用,這里僅僅為了描述問題)或其它具有sysadmin角色的登錄名的密碼?個人就遇到這樣一個案例,HK一同事在一臺測試服務器安裝了一個測試用途的SQL Server數據庫,然后這個同事離職前沒有交接這個測試服務器任何信息。那現在就麻煩了。我沒有任何權限,我如何獲取sysadmin的權限呢?或者還有比較多的場景需要你獲取數據庫的sysadmin權限,例如你想干點壞事.... 其實這個問題也不難,只要你有這個SQL Server數據庫的所在的服務器的操作系統管理員權限。

?

首先說明一下,下面腳本在SQL Server 2012、2014環境下都測試過,下面來一起看看如何在只有操作系統的管理員權限的情況下獲取數據庫的sysamdin權限。

?

其實在闡述這個問題前,可能要先說一下賬號([builtin\administrators]),在SQL Server 2005的版本中,數據庫中[builtin\administrators]登錄名默認擁有sysadmin角色,所以,如果是SQL Server 2005數據庫,只要你有操作系統的管理員權限,那么其實你就可以以Windows身份認證登錄數據庫(前提是服務器允許Windows身份認證登錄),登錄后修改sa賬號密碼即可,但是后續版本中都剔除了內置系統帳戶([builtin\administrators])。那么通常的方法如何做呢?

?

其實只要你有操作系統的管理員權限,那么借助sqlcmd工具,很容易也很簡單就能獲取擁有sysadmin角色的賬號。

?

1:首先必須單用戶模式啟動SQL Server實例(注意,要以管理員權限運行cmd窗口,否則可能遇到權限問題),否則sqlcmd就會遇到類似這樣的問題

?

C:\Windows\system32>sqlcmd

Sqlcmd: Error: Microsoft ODBC Driver 11 for SQL Server : Login failed for user '

xxx\xxxx’..

C:\>net stop mssqlserverThe SQL Server (MSSQLSERVER) service is stopping.The SQL Server (MSSQLSERVER) service was stopped successfully.??C:\>net start mssqlserver /m"SQLCMD"The SQL Server (MSSQLSERVER) service is starting.The SQL Server (MSSQLSERVER) service was started successfully.

?

?

2:然后在另外一個cmd窗口使用sqlcmd登錄數據庫

C:\>?C:\>?C:\>sqlcmd -E?1> ALTER LOGIN sa WITH PASSWORD='qWeR123456';?2> GO?1>

?

參數-E 表示 [-E trusted connection]? 默認即是-E,如上所示,進去修改sa的密碼,然后登錄測試發現sa被禁用了,使用SQL語句允許sa登錄即可。如下所示:

?

?

?

?

當然你也可以創建一個賬號授予sysadmin角色。完全沒有問題。

?

C:\>sqlcmd -E1> CREATE LOGIN [xxx\xxx] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]2> GO1> ALTER SERVER ROLE [sysadmin] ADD MEMBER [xxx\xxx]2> GO

?

或者SQL認證賬號

?

C:\>sqlcmd -E1> CREATE LOGIN [test1] WITH PASSWORD=N'Qw123456', DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF2> GO1>2>3> ALTER SERVER ROLE [sysadmin] ADD MEMBER [test1]4> GO1>

?

?

是否感覺有點太簡單了,太不安全了?? 系統管理員輕松就獲取了數據庫的管理員權限。 這個功能怎么感覺都不太合理!試想,如果系統被入侵了,分分鐘就能獲取數據庫的sysadmin權限。

?

轉載于:https://www.cnblogs.com/kerrycode/p/8931386.html

總結

以上是生活随笔為你收集整理的SQL Server遗失管理权限账号密码怎么办?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。