程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL server7.0的遠程連接問題

SQL server7.0的遠程連接問題

編輯:關於SqlServer
 在發現了global.asa+.htr的bug之後,往往SQL Server數據庫的ID和密碼以明文的形式暴露在我們眼前,(寫程序時候應該注意啦!)我試過幾個國內知名的網站,象蟻盟的,都可以得到他的數據庫密碼。於是如何進一步取得數據庫的控制權限成為我們關注的問題。
有的朋友常常有了密碼確連不進對方主機,下面我來說說連接時候需要注意的問題和步驟,拋磚引玉,希望大家把好的方法公布出來,讓我們一起進步。

SQL Server的兩種驗證模式:NT驗證模式和混合安全模式。

當用戶使用Query analyzer登陸到sql server時,系統將提示用戶提供登陸名和口令。缺省情況下,登陸名SA。口令為空。用戶登陸到SQL Server後,可以訪問服務器上的每一個數據庫。一般只有一個數據庫被設置為登陸名的缺省數據庫,當Query analyzer啟動後,該數據庫自動使用。
在NT驗證模式下登陸,sql server檢測當前使用的NT用戶帳號,並在syslogins表中查找該用戶,以確定用戶是否有權限登陸,這種方式用戶不必提供密碼或登陸名讓sql server驗證。其實,sql server是從RPC連接中自動獲得登陸過程的NT用戶信息,即用戶必須使用RPC連接登陸才能進行SQL Server的NT驗證。
混合安全模式:這是常用的模式,因為它允許以SQL Server驗證方式或NT驗證方式來進行連接,這種模式可以更好的適應各種用戶的環境,也是我們可以進入對方數據庫的入口。如果我們使用TCP/IP Sockets進行登陸驗證,sql server將使用sql server驗證模式,如果使用命名管道,sql server將使用NT驗證模式。那麼,sql server 的驗證模式怎麼處理登陸名的登陸呢?首先,在syslogins表中檢測輸入的登陸名和密碼,如果存在,且密碼正確,則可以登陸。這種模式下我們必須提供登陸名和密碼來讓SQL Server檢驗。當然!我們現在已經知道了他的USERID和PWD,嘿嘿!

SQL Server 的驗證模式和NT注冊表

驗證模式的設置保存在NT注冊表的HKEY_LOCAL_MacHINE\software\microsoft\MSSQLServer\MSSQLServer中的loginmode中,如果該鍵值為0,則使用混合安全模式,為1,則使用NT驗證模式。缺省為0。
這也是為什麼大多數主機我們可以順利連接的原因。

了解了登陸的基本過程,下面我來說說SQL Server遠程連接的步驟:

首先,ping 他的域名得到 IP,在clIEnt network utility中添加一個TCP/IP型的server alias,注意不要改變端口號,用默認的就可以。
然後在SQL Server組中添加一個新的主機,把IP地址、SA和PWD填入就可以了。
值得注意的問題是,只有取得了SA即管理員權限的才可以對整個數據庫進行操作,只有一個表的密碼是不行的,肯定連接失敗。
在SQL Server中,是可以設置禁止遠程連接的。方法如下:
在SQL server管理中設置屬性,點連接,把allow other SQL Servers to connect前的勾去掉就可以了。
另外,如果SQL Server的版本不同有時侯也會造成連接失敗。

最後,給大家一個很爛的主機玩玩,(別說是我說的,呵呵!要不下次不給了!)
61.132.16.68 uid=sa;pwd=tj3860315$
記住不要搞什麼破壞!全當練練手。要不人家找到了你麻煩可就大了!


以上僅代表個人觀點,有什麼不正確的地方,請各位大哥大姐兄弟朋友老少爺們兒指教!
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved