最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
sqlserver安全版,sqlserver破解版

SqlServer這么多版本,我該裝哪一個???

如果你的機器系統(tǒng)是win2000 pro版本或winxp的話,就只能裝SQLSERVER的個人版和開發(fā)版;如果你的機器系統(tǒng)是win2003以上版本或windows2000服務器版的話,裝SQLSERVER的企業(yè)版比較適合;

公司主營業(yè)務:網(wǎng)站設計制作、做網(wǎng)站、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出羅江免費做網(wǎng)站回饋大家。

SQLServer安全模式、密碼管理及管理建議

兩種安全模式:

Windows 認證模式:用戶通過一個現(xiàn)成的Windows用戶帳號來連接服務器。當一個用戶試圖與一個服務器連接的時候,SQL Server將會認證用戶的Windows帳號的名稱和密碼。用戶不能同時進入網(wǎng)絡和SQL Server,只能進入其中的一個。這一方法也被稱為一個被依賴的連接。

混合模式:這一模式將Windows認證模式和SQL Server認證聯(lián)接在一起。用戶可以通過一個Windows用戶帳號進行連接,這正如Windows認證一樣。但是,你也可以在SQL Server中直接建立用戶帳號。每一個SQL Server帳號都存儲了一個用戶名和密碼。

我們建議在可能的情況下都使用Windows認證模式。然而,混合模式很可以使用,特別是在SQL Server 7.0(或更早版本)都可以使用。.對于早期的SQL Server版本,SQL Server認證存在一些缺點。Windows認證已經(jīng)集成了操作系統(tǒng)的安全系統(tǒng),這就提供了比SQL Server認證更多的安全特性,很容易的使用,效率更加高,安全性更加好。在設計開始的時候,你應該認真考慮選擇哪一種模式最為合適。

密碼

無論采用哪一些模式,你應該記住在SQL Server中為系統(tǒng)管理者(sa)設置一個密碼。當安裝SQL Server時,安裝程序會自動建立一個帶有SQL Server注冊名稱(sa)和一個空白密碼的管理用戶。如果你保持這些用戶設置原樣而使用混合安全模式,任何具備一點SQL Server基礎知識的用戶都可以很容易地進入到你的數(shù)據(jù)庫中并做任何他想要做的事情。如果你使用的是Windows認證模式,在理論上你無需為sa用戶設置一個密碼,因為SQL Server注冊不會接受這些的設置。但是設置是一個很良好的操作,尤其是當你被迫轉(zhuǎn)移到將來使用的混合模式的時候。

如果安全模式已經(jīng)啟動,注冊將成為關(guān)鍵。你必須使用正確的.方法來啟動程序,注冊也是同樣的,如果你不能正確地輸入用戶名和密碼,程序?qū)⒉荒苓B接到網(wǎng)絡,同時也不能連接到SQL Server。

作為一個管理者,一旦你已經(jīng)啟動了程序,你就做好安全管理的準備??梢酝ㄟ^定義以下的特性而實現(xiàn):

用戶(帳號):一個SQL Serve安全帳號代表著一個唯一的用戶。一個用戶也只有一個Windows帳號或者一個SQL Server注冊,這與數(shù)據(jù)庫中的用戶帳號相統(tǒng)一。

組(帳號):每一個用戶都屬于一個或多個組,這由認證模式?jīng)Q定。每一個組都具有特定許可。作為一個組的成員,你將獲得所有組的許可。

對象所有權(quán):所有權(quán)屬于建立對象的用戶。所有者可以將訪問權(quán)限分配給用戶。如果你是一個視的所有者,你還可以決定哪些用戶可以通過視來查看數(shù)據(jù)。

許可:一個許可代表著具有執(zhí)行某些操作的權(quán)利,比如打開一個視或者更改一個存儲程序。SQL Server承認許可的三種狀態(tài):GRANT給你一個用戶訪問;REVOKE刪除訪問;DENY防止用戶訪問對象。

任務:這是一個SQL Server安全帳號,可以將帳號的集合作為一個簡單的單元來處理。任務定義在特定數(shù)據(jù)庫中用戶可以做哪些和哪些不可以做。

設計過程應該用效地定義哪些地方需要進行安全設置和如何設置。在這一過程之前你應該從兩個方面考慮:

敏感數(shù)據(jù);

敏感數(shù)據(jù)包括所有可能的數(shù)據(jù),包括整個數(shù)據(jù)庫中的所有數(shù)據(jù),雖然這樣的安全級別很少存在。你的工作就是定義為敏感數(shù)據(jù)并進行保護。

你選擇的認證模式和建立的注冊將通過限制哪些用戶可以進入到數(shù)據(jù)庫而實施第一步安全步驟。

第二步就要列舉可以訪問數(shù)據(jù)庫的所有用戶,然后決定所有數(shù)據(jù)是否對所有的用戶都適用。通常,你需要對一些數(shù)據(jù)進行保護,比如工資或者其他私人數(shù)據(jù)。這就意味著只有特定的用戶可以訪問和查看數(shù)據(jù)。你還可以設置哪些用戶更改數(shù)據(jù)。

始終記住的一條規(guī)則是“最小權(quán)利”概念。如果有人在他的工作中不需要訪問數(shù)據(jù),那即不要給他訪問的權(quán)限。應該避免所有的用戶都具有sa用戶的訪問權(quán)限。

具體的建議

當進行安全設置的時候,經(jīng)驗也是一個很好的老師,但通常也會有適用于通用數(shù)據(jù)庫的設計準則

從開始就獲得數(shù)據(jù)庫和對象的所有權(quán)。當建立一個新的數(shù)據(jù)庫時,你將會成為數(shù)據(jù)庫的所有者,并能夠設置數(shù)據(jù)庫中所有發(fā)生一切。你可以以管理者的身份注冊數(shù)據(jù)庫。然而,對象的所有權(quán)屬于建立對象的用戶。雖然這可能造成所有權(quán)的轉(zhuǎn)移,但可以確定這些的注冊能夠被用于建立所有的對象。

理解所有權(quán)鏈。這一安全特性防止用戶建立自己的視而偷看一些敏感數(shù)據(jù)。例如,假設你建立一個從兩個表中集中的數(shù)據(jù)的視,如果你是這兩個表的所有者,當你允許其他用戶使用視的許可時,SQL Server不會檢查表的有關(guān)許可。

使用視和存儲程序以分配給用戶訪問數(shù)據(jù)的權(quán)利,而不是讓用戶編寫一些直接訪問表格的特別查詢語句。通過這種方式,你無需在表格中將訪問權(quán)利分配給用戶。視和存儲程序

也可以限制查看的數(shù)據(jù)。例如,如果你的雇員表格包含一些秘密的工資信息,你可以建立一個省略了工資欄的視。

如果用戶從特定程序中進入你的程序,你可以建立程序任務。一個程序任務就是分配到特定程序的用戶,并給予用戶的有關(guān)許可。使用程序任務,用戶不能直接地認證數(shù)據(jù)庫,相反,他們先認證他們自己的程序,這就決定哪些程序任務與服務器相連接。

時刻注意程序補丁。不可否認的,程序補丁是一些訣竅的集合。程序的發(fā)布,更新等都會引入新的問題,使用程序補丁是防止外界干擾和保護數(shù)據(jù)的最好和最容易的方法??梢栽L問微軟主頁上的SQL Service Pack下載頁,查看當前最新的程序補丁。

與SQL SERVER 安全控制相關(guān)的幾點說明

與SQL SERVER安全控制相關(guān)的幾點說明

(一)幾個基本術(shù)語

身份驗證(Authentication)是指通過提交服務器評估的憑據(jù)以登錄到主體請求訪問的 SQL Server 的過程。身份驗證可以確定接受身份驗證的用戶或進程的標識。

用戶、賬戶、賬號、登錄名、[數(shù)據(jù)庫]用戶名

用戶是指能夠在SQL Server安全機制下,訪問數(shù)據(jù)庫對象中的數(shù)據(jù)的操作員或客戶。用戶若要訪問數(shù)據(jù)庫對象,必須獲得數(shù)據(jù)庫管理員(DBA)分配的賬號和密碼。從SQL Server管理系統(tǒng)的角度來看,用戶就是一組匹配的賬戶和密碼。

賬戶和賬號是一個概念的不同說法,在服務器中的賬戶又叫登錄名(Login Name),因此訪問服務器也稱為登錄服務器。服務器的登錄名可以映射到數(shù)據(jù)庫中成為[數(shù)據(jù)庫]用戶名(User Name)。一個登錄名可以映射多個數(shù)據(jù)庫用戶,而一個用戶只能映射一個登錄名。

連接或登錄SQL Server服務器時是用的登錄名而非用戶名登錄的,程序里面的連接字符串中的用戶名也是指登錄名。

通常用戶名與登錄名相同(不是強制相同,但為了一目了然通常都在創(chuàng)建用戶名時使用與登錄名相同的名字)。

提示:登錄名(Login Name)和用戶名(User Name)是兩個不同的概念:

登錄名:服務器方的一個實體,登錄名只能進入SQL Server服務器,但是不能讓用戶訪問服務器中的數(shù)據(jù)庫資源。

用戶名:一個或多個登錄對象在數(shù)據(jù)庫中的映射,可以對用戶對象進行授權(quán),以便為登錄對象提供對數(shù)據(jù)庫的訪問權(quán)限。

登錄名作用于它所在的服務器。每個登錄名的定義存放在master系統(tǒng)數(shù)據(jù)庫的syslogins表中。

用戶名作用于它所在的數(shù)據(jù)庫。用戶定義信息存放在每個數(shù)據(jù)庫的sysusers表中。用登錄名登錄到SQL Server后,在訪問操作各個數(shù)據(jù)庫時,SQL Server會自動查詢此數(shù)據(jù)庫中是否存在與此登錄名關(guān)聯(lián)的用戶名,若存在就使用此用戶的權(quán)限訪問此數(shù)據(jù)庫,若不存在就是用guest用戶訪問此數(shù)據(jù)庫(guest是一個特殊的用戶名,后面會講到)。

SQL身份驗證:適合于非windows平臺的用戶或Internet用戶,需要提供賬戶和密碼。

Windows身份驗證:適合于windows平臺用戶,利用Windows賬戶和windows集成驗證,不需要提供密碼。

用戶想要操作數(shù)據(jù)庫的某個對象(如某張表)需要過三關(guān):

第一關(guān):我們需要登錄到SQL Server系統(tǒng),即需要登錄賬戶;

第二關(guān):我們需要訪問某個數(shù)據(jù)庫,即需要該數(shù)據(jù)庫的用戶賬戶;

第三關(guān):我們需要訪問數(shù)據(jù)庫中的某個對象(如某張表),需要有該對象的權(quán)限。

主體(principal)是可被授予對安全資源的訪問權(quán)限的實體(例如登錄名、用戶、進程、組或角色)。主體可以是主體的集合(比如數(shù)據(jù)庫角色或Windows組)或不可分割的主體(比如本地登錄或域登錄)。每個主體都具有一個 ID (identification)和一個安全 ID (SID)。

⊙ Windows級別的主體:Windows組、Windows域登錄名、Windows本地登錄名。

⊙ SQL Server級的主體:服務器角色、SQLServer登錄名。

⊙數(shù)據(jù)庫級的主體:數(shù)據(jù)庫角色、數(shù)據(jù)庫用戶、應用程序角色。

上下文切換 (context switch),更改檢查執(zhí)行語句或執(zhí)行操作的權(quán)限時所依據(jù)的標識。

服務器(server)

1)指安裝了SQL SERVER的計算機。2)指SQL Server實例——計算機上運行的 SQLServer的副本。3)指為用戶提供服務的計算機軟件或組件。

需要根據(jù)上下文理解。

注冊服務器

注冊服務器使您可以存儲服務器連接信息(服務器的類型、服務器的名稱、登錄到服務器時使用的身份驗證的類型等),以供將來連接時使用——下次連接該服務器時,不需要重新輸入登錄信息。

SQLServer 2000在SQL Server企業(yè)管理器中注冊服務器,才能使用 SQL Server企業(yè)管理器來管理這些服務器。從SQLServer 2005始,在 SQL ServerManagement Studio 中注冊服務器,才能使用 SQL Server Management Studio 來管理這些服務器。

在 Microsoft SQL Server中,可以注冊以下類型的服務器:SQLServer數(shù)據(jù)庫引擎、Analysis Services、Reporting Services、IntegrationServices和 SQL Server Compact 3.5SP1。

(二)SQL Server實例(SQL Server instance)

SQLServer實例(SQL Server instance),簡稱實例 (instance),是計算機上運行的SQLServer 的副本。同一臺計算機上可以安裝運行的多個 SQLServer副本。每個SQL Server實例都包含數(shù)據(jù)庫引擎、Analysis Services和 ReportingServices的 SQL Server,每個SQL Server數(shù)據(jù)庫實例各有一套不為其他實例共享的系統(tǒng)及用戶數(shù)據(jù)庫。

數(shù)據(jù)庫引擎是用于存儲、處理和保護數(shù)據(jù)的核心服務。利用數(shù)據(jù)庫引擎可控制訪問權(quán)限并快速處理事務。

實例又分為“默認實例”(default instance)和“命名實例”(namedinstance),如果在一臺計算機上安裝第一個SQLSERVER,命名設置保持默認的話,那這個實例就是默認實例。默認實例與安裝計算機具有相同名稱。命名實例指安裝SQL Server時給定了名稱,可以安裝多個命名實例,給定名稱是為了與同一臺計算機上的其他命名實例和默認實例區(qū)分開。

SQLServer應用程序可以通過僅指定服務器名稱而連接到 SQLServer的默認實例。SQL Server應用程序在連接到服務器上的某個命名實例時必須既指定服務器名稱又指定實例名稱,計算機名稱\實例名稱。

一臺計算機上最多只有一個默認實例,也可以沒有默認實例,默認實例名與計算機名相同。如果要訪問本機上的默認SQL服務器實例,使用計算機名、(local)、localhost、127.0.0.1、.、本機IP地址,都可以達到相同的目的。但如果要訪問非本機的SQL服務器,那就必須使用計算機名稱\實例名稱。

默認實例和命名實例的區(qū)別:

1、服務中服務名稱的區(qū)別:

(1)默認實例:MSSQLSERVER。

(2)有名命名實例:實列名為benet,在服務中的名稱是MSSQL$BENET。

注:如果你有多個實例的時候會在服務中出現(xiàn)多個服務名稱。

2、連接到查詢分析器或探查器的時候區(qū)別:

(1)默認實例可以使用:“.”(點)、“(local)”、“計算機名稱”。

(2)實例名稱:計算機名pcname,實例名benet,連接時使用的名稱是pcname\benet。

(三)安全對象和權(quán)限

安全對象(Securable),可以通過權(quán)限得到保護的實體。是SQLServer數(shù)據(jù)庫引擎授權(quán)系統(tǒng)控制對其進行訪問的資源。如表、視圖、觸發(fā)器等。

SQLServer中將安全對象分為三個層次,分別為:

⊙服務器層級,包含的安全對象:端點、登錄、服務器角色、數(shù)據(jù)庫。

⊙數(shù)據(jù)庫層級,包含的安全對象:用戶、數(shù)據(jù)庫角色、應用程序角色、程序集、消息類型、路由、服務、遠程服務綁定、全文目錄、證書、非對稱密鑰、對稱密鑰、約定、架構(gòu)。

⊙構(gòu)架(SCHEMA)層級,包含的安全對象:類型、XML架構(gòu)集合、對象(函數(shù)、過程、同義詞、表、視圖)

這三個層級是從上到下包含的,級別從高到低。

說明:端點(endpoint)為服務器級安全對象。Microsoft SQL Server 2005 中的連接管理基于“端點”。一個端點就是一個SQL Server對象,它能夠使 SQL Server在網(wǎng)絡中通信。對于數(shù)據(jù)庫鏡像,服務器實例需要有自己專用的“數(shù)據(jù)庫鏡像端點”。此端點用途特殊,專門用于接收來自其他服務器實例的數(shù)據(jù)庫鏡像連接。

權(quán)限 (permission),與對象關(guān)聯(lián)的規(guī)則,用來規(guī)定哪些用戶可以獲得該對象的訪問權(quán)限以及方式如何。對安全對象的訪問通過授予或拒絕權(quán)限進行控制。

權(quán)限可以明確用戶能夠使用哪些數(shù)據(jù)庫對象,并對它們進行何種操作。用戶在數(shù)據(jù)庫內(nèi)的權(quán)限取決于用戶賬號的權(quán)限和該用戶所屬的角色的權(quán)限。

提示:在設置權(quán)限時,尤其要注意權(quán)限在安全對象上的繼承關(guān)系。對于高級別安全對象上設置的權(quán)限,會被自動繼承到低級別安全對象上。

理解權(quán)限的繼承和權(quán)限的覆蓋會在設置權(quán)限時減少很多問題,最佳方法是統(tǒng)籌規(guī)劃,上機驗證。

(四)架構(gòu)(schema)

架構(gòu)是指包含表、視圖、過程等的容器。它位于數(shù)據(jù)庫內(nèi)部,而數(shù)據(jù)庫位于服務器內(nèi)部。這些實體就像嵌套框放置在一起。服務器是最外面的框,而架構(gòu)是最里面的框。架構(gòu)包含表、視圖、過程、函數(shù)、同義詞、類型、隊列、XML架構(gòu)集合等安全對象。

注意:

在 SQL Server 2000和早期版本中,數(shù)據(jù)庫可以包含一個名為“架構(gòu)”的實體, SQL Server 2000包含 CREATE SCHEMA語句,但此實體實際上是所有者(創(chuàng)建對象時的用戶)。在 SQL Server 2005 開始,架構(gòu)既是一個容器,又是一個命名空間。任何用戶都可以擁有架構(gòu),并且架構(gòu)所有權(quán)可以轉(zhuǎn)移。從 SQL Server 2005開始,每個用戶都擁有一個默認架構(gòu)??梢允褂?CREATE USER或 ALTER USER的 DEFAULT_SCHEMA選項設置和更改默認架構(gòu)。如果未定義 DEFAULT_SCHEMA,則數(shù)據(jù)庫用戶將使用 dbo作為默認架構(gòu)。

在SQL Server 2000中,DataBaseName.dbo.TableName解釋為:數(shù)據(jù)庫名.所有者.表名。

從 SQL Server 2005開始,DataBaseName.dbo.TableName解釋為:數(shù)據(jù)庫名.架構(gòu)名.表名。

在SQL Server 2000中,數(shù)據(jù)庫對象全稱是server_name.[database_name].[owner_name].object_name

從SQL Server 2005始,數(shù)據(jù)庫對象全稱是server_name.[database_name].[schema_name].object_name

在SQL SERVER2000或以前版本中創(chuàng)建一個對象,對象必須要有一個所有者(owner)。對象是如何屬于某個所有者的呢?這依賴于創(chuàng)建對象時的用戶。您不能取消對象所有者(object owner)的特權(quán)(privileges)。對象所有者可以執(zhí)行任何與對象有關(guān)的操作(例如 INSERT、UPDATE、DELETE、SELECT或 EXECUTE),也可以管理對象的權(quán)限。

從2005/2008后,一個我們必須重新認識的情況是對象不再有所有者(owner)。架構(gòu)包含對象,架構(gòu)有所有者。

在2005前(如SQL Server 2000中),沒有架構(gòu)的概念,只有用戶的概念,那時候DBO是默認用戶。到了2005,有了架構(gòu)概念,但是為了向后兼容,保留了DBO,并且把DBO作為默認架構(gòu),在不指定架構(gòu)的情況下,默認為dbo,“默認架構(gòu)”的概念,用于解析未使用其完全限定名稱引用的對象的名稱。在 SQL Server 2005 中,每個用戶都有一個默認架構(gòu),用于指定服務器在解析對象的名稱時將要搜索的第一個架構(gòu)。可以使用 CREATE USER和 ALTER USER的 DEFAULT_SCHEMA選項設置和更改默認架構(gòu)。如果未定義 DEFAULT_SCHEMA,則數(shù)據(jù)庫用戶將把 DBO作為其默認架構(gòu)。

(五)dbo

dbo既是默認架構(gòu),也是默認用戶。在SQL Server 2000中,dbo作為默認用戶。在SQL Server2005中,dbo既作為默認用戶,也作為默認架構(gòu)(如圖)。

dbo作為默認用戶,dbo (DataBase Owner,數(shù)據(jù)庫的所有者,擁有數(shù)據(jù)庫中的所有對象),每個數(shù)據(jù)庫都有dbo, sysadmin服務器角色的成員自動映射成dbo,無法刪除 dbo用戶,且此用戶始終出現(xiàn)在每個數(shù)據(jù)庫中。通常,登錄名sa映射為庫中的用戶dbo。另外,固定服務器角色 sysadmin的任何成員都映射到每個數(shù)據(jù)庫內(nèi)稱為 dbo的一個特殊用戶上。由固定服務器角色sysadmin的任何成員創(chuàng)建的任何對象都自動屬于 dbo。由固定服務器角色 sysadmin的任何成員或 dbo用戶創(chuàng)建的任何對象都自動屬于dbo,由任何其他用戶(包括 db_owner固定數(shù)據(jù)庫角色成員)創(chuàng)建的對象,屬于創(chuàng)建該對象的用戶,而不是 dbo,用創(chuàng)建該對象的用戶名限定。例如:

如果用戶 Andrew是固定服務器角色sysadmin的成員,并創(chuàng)建表 T1,則表 T1屬于 dbo,并以 dbo.T1而不是 Andrew.T1進行限定。相反,如果 Andrew不是固定服務器角色sysadmin的成員,而只是固定數(shù)據(jù)庫角色 db_owner的成員,并創(chuàng)建表 T1,則 T1屬于 Andrew,并限定為Andrew.T1。該表屬于 Andrew,因為該成員沒有將表限定為dbo.T1。

dbo作為默認架構(gòu),在不指定架構(gòu)的情況下,默認為dbo,“默認架構(gòu)”的概念,用于解析未使用其完全限定名稱引用的對象的名稱。在 SQL Server 2005 中,每個用戶都有一個默認架構(gòu),用于指定服務器在解析對象的名稱時將要搜索的第一個架構(gòu)??梢允褂?CREATE USER和 ALTER USER的 DEFAULT_SCHEMA選項設置和更改默認架構(gòu)。如果未定義 DEFAULT_SCHEMA,則數(shù)據(jù)庫用戶將把 DBO作為其默認架構(gòu)。

(六)Guest用戶

guest用戶不需要映射到登錄名。這種用戶賬號是供數(shù)據(jù)庫中沒有明確授予權(quán)限給已映射至認證用戶使用的。guest供那些已經(jīng)成功登錄到SQL SERVER實例,但是卻沒有通過用戶訪問數(shù)據(jù)庫的權(quán)限的登錄者使用的。

SQLSERVER 2000中g(shù)uest用戶可以刪除;而2005/2008中是不能刪除的,卻可以取消CONNECT權(quán)限,而且為安全起見,所有用戶定義的數(shù)據(jù)庫中缺省情況下guest用戶的權(quán)限都是被取消了的,可在除master和tempdb之外的任何數(shù)據(jù)庫中禁用Guest用戶。

在SQL SERVER 2000中,新建的數(shù)據(jù)庫中沒有Guest用戶,但可以添加它,也可刪除它,添加與刪除方法與普通數(shù)據(jù)庫相同。

在SQL Server 2005或以上版本中GUEST已經(jīng)默認存在于每個數(shù)據(jù)庫中,但默認情況下,會在新數(shù)據(jù)庫中禁用GUEST用戶(在“對象資源管理器→安全性→登錄”節(jié)點中圖標上有禁用標識),我們可以通過以下語句啟用GUEST用戶:GRANT CONNECT TO GUEST 。當你決定不再想讓該數(shù)據(jù)庫被非數(shù)據(jù)庫授權(quán)的用戶以GUEST身份進行訪問時,可以再次將GUEST帳號禁用。值得一提的是,GUEST用戶在數(shù)據(jù)庫中不能被刪除,我們只能通過以下語句禁用GUEST用戶:REVOKE CONNECT FROMGUEST 。

在SQL SERVER 2000中,要允許guest用戶帳戶訪問數(shù)據(jù)庫,可以像添加其它數(shù)據(jù)庫用戶那樣添加它,如:

USEDatabase Name

GO

EXECsp_grantdbaccess 'guest'

GO

在SQL SERVER 2005中,允許guest用戶帳戶

USEDatabase Name

GO

GRANT CONNECT TO GUEST

GO

需要提醒的是,對于是否添加Guest用戶要謹慎權(quán)衡利弊。

--SQLServer 2000刪除guest用戶賬號

USEDatabase Name

GO

EXECsp_revokedbaccess 'guest'

GO

-- SQLServer 2005禁用guest用戶賬號

USEDatabase Name

GO

REVOKECONNECT FROM GUEST

GO

(七)sa登錄名

SQLServer的 sa登錄名是服務器級的主體。默認情況下,該登錄名是在安裝實例時創(chuàng)建的。在 SQL Server 2005和 SQL Server2008中,sa的默認數(shù)據(jù)庫為 master。這是對早期版本的 SQLServer的行為的更改。

sa(system administrator系統(tǒng)管理員)是為向后兼容而提供的特殊登錄。sysadmin是一種角色。該角色能夠執(zhí)行SQLServer上的任何操作。本質(zhì)上,任何具有這種角色成員身份的人都是那個服務器上的sa。這種服務器角色的創(chuàng)建為微軟提供了某一天去除sa登錄的能力——實際上,聯(lián)機叢書把sa稱作本質(zhì)上為遺留物的東西。

與以前版本不同,SQL Server 2008,即使是用混合模式安裝,sa也默認禁用。

注意,sa是一個默認的SQL Server登錄名,擁有操作SQL Server系統(tǒng)的所有權(quán)限,該登錄名不能被刪除。當采用混合模式安裝Microsoft SQL Server系統(tǒng)之后,應該為sa指定一個密碼,應為 sa登錄分配一個強密碼(strongpassword)。

sa登錄名會映射到 sysadmin固定服務器角色,它對整個服務器有不能撤銷的管理憑據(jù)。如果攻擊者以系統(tǒng)管理員的身份獲取了訪問權(quán)限,則可能造成的危害是無法預計的。

(八)其它幾個默認配置的的登錄(Logins)和用戶(Users)

默認配置的的登錄和用戶除了dbo用戶、Guest用戶、sa登錄,還有如下幾個:

Administrators組是一個特殊的登錄。administrator用戶默認administrators組的成員。

Administrators組實際名稱為BUILTIN\Administrators。早期版本,這個組的所有成員均為 sysadmin 角色的成員(這意味著Administrators組中的成員具有最高權(quán)限),但可以從該角色中移除這些成員。與以前版本不同,SQL Server 2008默認情況下,本地 Windows組 BUILTIN\Administrators不再包含在新的 SQL Server 2008安裝上的 SQL Server的 sysadmin固定服務器角色中。

提示:每個版本的 SQL Server都具有不同的安全功能,默認配置也不盡相同,后出的版本更有利于安全,但安全性和使用方便這兩種需求可能有矛盾的一面,最佳方法是上機了解驗證。

NETWORKSERVICE和SYSTEM登錄賬戶

NETWORKSERVICE和SYSTEM登錄賬戶,實際名稱為NT AUTHORITY\NETWORK SERVICE和NT AUTHORITY\SYSTEM,是否存在這些,依賴于服務器的配置。如果配置了報表服務器,將出現(xiàn)NETWORK SERVICE登錄賬戶。

INFORMATION_SCHEMA和sys用戶

INFORMATION_SCHEMA和sys又是SQL Server 預定義的架構(gòu)(內(nèi)置架構(gòu))名稱,它們與INFORMATION_SCHEMA和sys用戶具有相同的名稱。不能刪除,主要用于向后兼容性。可以使用INFORMATION_SCHEMA用戶和sys用戶訪問INFORMATION_SCHEMA和sys架構(gòu)的系統(tǒng)視圖,獲取有關(guān)數(shù)據(jù)庫元數(shù)據(jù)信息。

(九)SQL Server中的角色

角色 (role),是SQL Server用來管理服務器和數(shù)據(jù)庫權(quán)限的,是安全帳戶的集合,在管理權(quán)限時可以視為一個單元——作為分配權(quán)限的單位。

SQLServer中的角色分為服務器級別和數(shù)據(jù)庫級別角色。

◇服務器級別角色

服務器級別角色用于幫助管理服務器上的權(quán)限。服務器角色的權(quán)限作用域為服務器范圍??梢詫⒌卿浢↙ogin Name)添加到服務器角色。

符合權(quán)限要求的用戶,可以將服務器級主體(SQL Server登錄名、Windows帳戶和 Windows組)添加到服務器級角色。固定服務器角色的每個成員都可以將其他登錄名添加到該同一角色。

固定服務器角色簡介:

1)sysadmin:系統(tǒng)管理員,角色成員可對SQLServer服務器進行所有的管理工作,為最高管理角色。這個角色一般適合于數(shù)據(jù)庫管理員(DBA)。

2)securityadmin:安全管理員,角色成員可以管理登錄名及其屬性??梢允谟琛⒕芙^、撤銷服務器級和數(shù)據(jù)庫級的權(quán)限。另外還可以重置SQL Server登錄名的密碼。

3)serveradmin:服務器管理員,角色成員具有對服務器進行設置及關(guān)閉服務器的權(quán)限。

4)setupadmin:設置管理員,角色成員可以添加和刪除鏈接服務器,并執(zhí)行某些系統(tǒng)存儲過程。

5)processadmin:進程管理員,角色成員可以終止SQLServer實例中運行的進程。

6)diskadmin:用于管理磁盤文件。

7)dbcreator:數(shù)據(jù)庫創(chuàng)建者,角色成員可以創(chuàng)建、更改、刪除或還原任何數(shù)據(jù)庫。

8)bulkadmin:可執(zhí)行BULK INSERT語句,但是這些成員對要插入數(shù)據(jù)的表必須有INSERT權(quán)限。BULK INSERT語句的功能是以用戶指定的格式復制一個數(shù)據(jù)文件至數(shù)據(jù)庫表或視圖。

9)在sql server 2005 sp2(補丁)及以后版本,服務器角色中還可以看到一個public角色。每個 SQL Server登錄名均屬于 public服務器角色。 如果未向某個服務器主體授予或拒絕對某個安全對象的特定權(quán)限,該用戶將繼承授予該對象的 public角色的權(quán)限。public服務器角色默認擁有 VIEW ANY DATABASE(查看任何數(shù)據(jù)庫)權(quán)限。[VIEW ANY DATABASE權(quán)限控制是否顯示sys.databases和 sys.sysdatabases視圖以及 sp_helpdb系統(tǒng)存儲過程中的元數(shù)據(jù)(metadata)。]

從 SQL Server 2012開始,您可以創(chuàng)建用戶定義的服務器角色,并將服務器級權(quán)限添加到用戶定義的服務器角色。

每個版本的 SQL Server都具有不同的安全功能,版本越高,功能越強。

可以利用系統(tǒng)函數(shù)IS_SRVROLEMEMBER指示當前用戶的 SQLServer登錄名是否是固定服務器角色的成員。

可以利用系統(tǒng)存儲過程sp_helpsrvrolemember返回有關(guān) SQL Server 固定服務器角色成員的信息。

--查詢 sysadmin固定服務器角色的成員。

execsp_helpsrvrolemember 'sysadmin'

◇數(shù)據(jù)庫級別的角色

數(shù)據(jù)庫級別角色用于幫助管理數(shù)據(jù)庫中的權(quán)限。數(shù)據(jù)庫級角色的權(quán)限作用域為數(shù)據(jù)庫范圍??梢詫數(shù)據(jù)庫]用戶名(User Name)添加到數(shù)據(jù)庫角色。

SQLServer中有兩種類型的數(shù)據(jù)庫級角色:數(shù)據(jù)庫中預定義的“固定數(shù)據(jù)庫角色”和您可以創(chuàng)建的“靈活數(shù)據(jù)庫角色”(自定義數(shù)據(jù)庫角色)。

固定數(shù)據(jù)庫角色是在數(shù)據(jù)庫級別定義的,并且存在于每個數(shù)據(jù)庫中。 db_owner和db_securityadmin數(shù)據(jù)庫角色的成員可以管理固定數(shù)據(jù)庫角色成員身份。但是,只有db_owner數(shù)據(jù)庫角色的成員能夠向db_owner固定數(shù)據(jù)庫角色中添加成員。 msdb數(shù)據(jù)庫中還有一些特殊用途的固定數(shù)據(jù)庫角色。

符合權(quán)限要求的用戶,可以向數(shù)據(jù)庫級角色中添加數(shù)據(jù)庫帳戶和其他 SQL Server角色。固定數(shù)據(jù)庫角色的每個成員都可向同一個角色添加其他登錄名。

固定數(shù)據(jù)庫角色簡介:

1)db_owner:數(shù)據(jù)庫所有者,這個數(shù)據(jù)庫角色的成員可執(zhí)行數(shù)據(jù)庫的所有管理操作。

2)db_accessadmin:數(shù)據(jù)庫訪問權(quán)限管理者,角色成員具有添加、刪除數(shù)據(jù)庫使用者、數(shù)據(jù)庫角色和組的權(quán)限。

3)db_securityadmin:數(shù)據(jù)庫安全管理員,角色成員可管理數(shù)據(jù)庫中的權(quán)限,如設置數(shù)據(jù)庫表的增加、刪除、修改和查詢等存取權(quán)限。

4)db_ddladmin:數(shù)據(jù)庫DDL管理員,角色成員可增加、修改或刪除數(shù)據(jù)庫中的對象。

5)db_backupoperator:數(shù)據(jù)庫備份操作員,角色成員具有執(zhí)行數(shù)據(jù)庫備份的權(quán)限。

6)db_datareader:數(shù)據(jù)庫數(shù)據(jù)讀取者,角色成員可以從所有用戶表中讀取數(shù)據(jù)。

7)db_datawriter:數(shù)據(jù)庫數(shù)據(jù)寫入者,角色成員具有對所有用戶表進行增加、刪除、修改的權(quán)限。

8)db_denydatareader:數(shù)據(jù)庫拒絕數(shù)據(jù)讀取者,角色成員不能讀取數(shù)據(jù)庫中任何表的內(nèi)容。

9)db_denydatawriter:數(shù)據(jù)庫拒絕數(shù)據(jù)寫入者,角色成員不能對任何表進行增加、刪修、修改操作。

10)public:是一個特殊的數(shù)據(jù)庫角色,每個數(shù)據(jù)庫用戶都是public角色的成員,因此不能將用戶、組或角色指派為public角色的成員,也不能刪除public角色的成員。public數(shù)據(jù)庫角色默認的權(quán)限很少[使用某些系統(tǒng)過程查看并顯示master數(shù)據(jù)庫中的信息;執(zhí)行一些不需要一些權(quán)限的語句(例如PRINT)]。

可以利用系統(tǒng)函數(shù)IS_MEMBER檢查當前用戶是否是數(shù)據(jù)庫角色或Windows域組的成員。

可以利用系統(tǒng)存儲過程sp_helprolemember顯示數(shù)據(jù)庫角色的成員。

可以利用系統(tǒng)存儲過程sp_helpuser報告有關(guān)當前數(shù)據(jù)庫中數(shù)據(jù)庫級主體的信息。

可以利用系統(tǒng)存儲過程sp_helprotect報告當前數(shù)據(jù)庫中某對象的用戶權(quán)限或語句權(quán)限的信息。

--查詢用戶擁有的數(shù)據(jù)庫角色

useyourdb

execsp_helpuser 'UserName'

go

--查詢用戶被賦予的權(quán)限

useyourdb

execsp_helprotect @username = 'user name'

請教SQLserver安全模式的問題

請教SQLserver安全模式的問題

解決辦法是: 在當前session下執(zhí)行如下的語句 SET SQL_SAFE_UPDATES = 0; 然后再執(zhí)行Update語句

SQL Server有免費版嗎?

SQL Server有免費版。

SQL Server Express 是免費的,可以再分發(fā)(受制于協(xié)議),還可以充當客戶端數(shù)據(jù)庫以及基本服務器數(shù)據(jù)庫。SQL Server Express 是獨立軟件供應商 ISV、服務器用戶、非專業(yè)開發(fā)人員、Web 應用程序開發(fā)人員、網(wǎng)站主機和創(chuàng)建客戶端應用程序的編程愛好者的理想選擇。

擴展資料:

SQL Server 2005 Express僅適用于 32 位,數(shù)據(jù)庫平臺基于 SQL Server 2005。它也可以替換 Microsoft Desktop Engine (MSDE)。通過與 Microsoft Visual Studio 2005 集成,SQL Server Express 簡化了功能豐富、存儲安全且部署快速的數(shù)據(jù)驅(qū)動應用程序的開發(fā)過程。

如果需要使用更高級的數(shù)據(jù)庫功能,則可以將 SQL Server Express 無縫升級到更復雜的 SQL Server 版本。

sqlserver有哪些安全策略

Microsoft建立了一種既靈活又強大的安全管理機制,它能夠?qū)τ脩粼L問SQL Server服務器系統(tǒng)和數(shù)據(jù)庫的安全進行全面地管理。按照本文介紹的步驟,你可以為SQL Server 7.0(或2000)構(gòu)造出一個靈活的、可管理的安全策略,而且它的安全性經(jīng)得起考驗。

一、驗證方法選擇

本文對驗證(authentication)和授權(quán)(authorization)這兩個概念作不同的解釋。驗證是指檢驗用戶的身份標識;授權(quán)是指 允許用戶做些什么。在本文的討論中,驗證過程在用戶登錄SQL Server的時候出現(xiàn),授權(quán)過程在用戶試圖訪問數(shù)據(jù)或執(zhí)行命令的時候出現(xiàn)。

構(gòu)造安全策略的第一個步驟是確定SQL Server用哪種方式驗證用戶。SQL Server的驗證是把一組帳戶、密碼與Master數(shù)據(jù)庫Sysxlogins表中的一個清單進行匹配。Windows NT/2000的驗證是請求域控制器檢查用戶身份的合法性。一般地,如果服務器可以訪問域控制器,我們應該使用Windows NT/2000驗證。域控制器可以是Win2K服務器,也可以是NT服務器。無論在哪種情況下,SQL Server都接收到一個訪問標記(Access Token)。訪問標記是在驗證過程中構(gòu)造出來的一個特殊列表,其中包含了用戶的SID(安全標識號)以及一系列用戶所在組的SID。正如本文后面所介紹 的,SQL Server以這些SID為基礎授予訪問權(quán)限。注意,操作系統(tǒng)如何構(gòu)造訪問標記并不重要,SQL Server只使用訪問標記中的SID。也就是說,不論你使用SQL Server 2000、SQL Server 7.0、Win2K還是NT進行驗證都無關(guān)緊要,結(jié)果都一樣。

如果使用SQL Server驗證的登錄,它最大的好處是很容易通過Enterprise Manager實現(xiàn),最大的缺點在于SQL Server驗證的登錄只對特定的服務器有效,也就是說,在一個多服務器的環(huán)境中管理比較困難。使用SQL Server進行驗證的第二個重要的缺點是,對于每一個數(shù)據(jù)庫,我們必須分別地為它管理權(quán)限。如果某個用戶對兩個數(shù)據(jù)庫有相同的權(quán)限要求,我們必須手工設 置兩個數(shù)據(jù)庫的權(quán)限,或者編寫腳本設置權(quán)限。如果用戶數(shù)量較少,比如25個以下,而且這些用戶的權(quán)限變化不是很頻繁,SQL Server驗證的登錄或許適用。但是,在幾乎所有的其他情況下(有一些例外情況,例如直接管理安全問題的應用),這種登錄方式的管理負擔將超過它的優(yōu) 點。

二、Web環(huán)境中的驗證

即使最好的安全策略也常常在一種情形前屈服,這種情形就是在Web應用中使用SQL Server的數(shù)據(jù)。在這種情形下,進行驗證的典型方法是把一組SQL Server登錄名稱和密碼嵌入到Web服務器上運行的程序,比如ASP頁面或者CGI腳本;然后,由Web服務器負責驗證用戶,應用程序則使用它自己的 登錄帳戶(或者是系統(tǒng)管理員sa帳戶,或者為了方便起見,使用Sysadmin服務器角色中的登錄帳戶)為用戶訪問數(shù)據(jù)。

這種安排有幾個缺點,其中最重要的包括:它不具備對用戶在服務器上的活動進行審核的能力,完全依賴于Web應用程序?qū)崿F(xiàn)用戶驗證,當SQL Server需要限定用戶權(quán)限時不同的用戶之間不易區(qū)別。如果你使用的是IIS 5.0或者IIS 4.0,你可以用四種方法驗證用戶。第一種方法是為每一個網(wǎng)站和每一個虛擬目錄創(chuàng)建一個匿名用戶的NT帳戶。此后,所有應用程序登錄SQL Server時都使用該安全環(huán)境。我們可以通過授予NT匿名帳戶合適的權(quán)限,改進審核和驗證功能。

第二種方法是讓所有網(wǎng)站使用Basic驗證。此時,只有當用戶在對話框中輸入了合法的帳戶和密碼,IIS才會允許他們訪問頁面。IIS依靠一個NT 安全數(shù)據(jù)庫實現(xiàn)登錄身份驗證,NT安全數(shù)據(jù)庫既可以在本地服務器上,也可以在域控制器上。當用戶運行一個訪問SQL Server數(shù)據(jù)庫的程序或者腳本時,IIS把用戶為了瀏覽頁面而提供的身份信息發(fā)送給服務器。如果你使用這種方法,應該記?。涸谕ǔG闆r下,瀏覽器與服 務器之間的密碼傳送一般是不加密的,對于那些使用Basic驗證而安全又很重要的網(wǎng)站,你必須實現(xiàn)SSL(Secure Sockets Layer,安全套接字層)。

在客戶端只使用IE 5.0、IE 4.0、IE 3.0瀏覽器的情況下,你可以使用第三種驗證方法。你可以在Web網(wǎng)站上和虛擬目錄上都啟用NT驗證。IE會把用戶登錄計算機的身份信息發(fā)送給IIS,當 該用戶試圖登錄SQL Server時IIS就使用這些登錄信息。使用這種簡化的方法時,我們可以在一個遠程網(wǎng)站的域上對用戶身份進行驗證(該遠程網(wǎng)站登錄到一個與運行著Web 服務器的域有著信任關(guān)系的域)。

最后,如果用戶都有個人數(shù)字證書,你可以把那些證書映射到本地域的NT帳戶上。個人數(shù)字證書與服務器數(shù)字證書以同樣的技術(shù)為基礎,它證明用戶身份標 識的合法性,所以可以取代NT的Challenge/Response(質(zhì)詢/回應)驗證算法。Netscape和IE都自動在每一個頁面請求中把證書信 息發(fā)送給IIS。IIS提供了一個讓管理員把證書映射到NT帳戶的工具。因此,我們可以用數(shù)字證書取代通常的提供帳戶名字和密碼的登錄過程。

由此可見,通過NT帳戶驗證用戶時我們可以使用多種實現(xiàn)方法。即使當用戶通過IIS跨越Internet連接SQL Server時,選擇仍舊存在。因此,你應該把NT驗證作為首選的用戶身份驗證辦法。

三、設置全局組

構(gòu)造安全策略的下一個步驟是確定用戶應該屬于什么組。通常,每一個組織或應用程序的用戶都可以按照他們對數(shù)據(jù)的特定訪問要求分成許多類別。例如,會 計應用軟件的用戶一般包括:數(shù)據(jù)輸入操作員,數(shù)據(jù)輸入管理員,報表編寫員,會計師,審計員,財務經(jīng)理等。每一組用戶都有不同的數(shù)據(jù)庫訪問要求。


當前題目:sqlserver安全版,sqlserver破解版
網(wǎng)站路徑:http://fisionsoft.com.cn/article/dssphhp.html