SQL Server與Oracle資料庫在安全性上的異同

來源:互聯網
上載者:User

前言:Oracle資料庫和SQL Server資料庫是兩種應用比較普遍的資料庫,在業界,人們普遍認為Oracle資料庫的安全性要比SQL Server資料庫高,但實際情況Oracle資料庫和SQL Server資料庫二者又有著怎麼的差別,下面筆者就來談談這兩種資料庫在安全性設計上面的異同。掌握好這些內容,對於我們進行資料庫安全方面的設計與管理,有著舉足輕重的作用。

一、角色到使用者的授權。

現在很多應用軟體,包括資料庫系統,都採用了角色到使用者的授權體系。也就是說,先給一個角色進行授權,然後再把使用者加入到這個角色中,讓其擁有這個角色的許可權。

如我們在資料庫設計的時候,一般至少需要兩種角色,一種是系統管理員角色,這種角色具有對資料庫系統進行管理,如表的建立與刪除、使用者的建立與修改等等。另外一種是普通使用者的角色,其可以對錶進行插入、修改、刪除記錄等等的操作。然後,我們建立兩個帳戶,一個是資料庫管理員帳戶,讓其隸屬於管理員角色;再建立一個使用者帳號,讓其歸屬於使用者角色。如此,不用給使用者佈建特別的許可權,他們就從他們的角色中,繼承了相關的許可權。這就是基於角色-使用者的許可權管理體系。

這個許可權管理體系,兩種資料庫都是支援的,只不過具體的叫法有差異。

在SQL Sever資料庫中,其沿用的是微軟作業系統的叫法,把角色稱做組。其實,我們在給作業系統定義使用者與許可權的時候,也是採用這種方法,我們先建立一個組,再給這個組賦予特定的許可權,然後,再建立一個使用者帳號加入到這個組中即可。雖然兩個資料庫的叫法不同,但是,其本質是一樣的,換湯不換藥而已。

兩者的差異主要體現在對特定角色的授權方面。

二、角色的授權。

兩個資料庫雖然在“角色-授權” 方面雷同,但在具體角色許可權的分配上,還是有比較大的差異。用一句話來總結,就是Oracle在許可權的分配上,要比SQL Server資料庫細。Oracle在許可權控制方面,基本上可以細化到每個步驟。

如在使用者管理上面,Oracle資料庫可以把建立使用者帳號的權利給某個組,但是,這個組卻沒有刪除帳號的權利。而微軟的資料庫中,則一般是把使用者管理的許可權,包括使用者建立與刪除當作一個許可權賦予給某個組,而不能把他們分開。也就是說,一個組若具有使用者帳號系統管理權限的話,其不僅可以建立使用者帳號,而且,也可以刪除使用者帳號。也就是說,微軟的SQL Server資料庫在許可權設計上,沒有分得像Oracle那麼細。正因為如此,所以Oracle資料庫在許可權管理上面,要比SQL Server資料庫靈活。

不光在帳戶管理上如此,資料庫很多個物件許可權的管理,也有類似現象。如對於預存程序的管理,對於表格的管理等等。甲骨文的Oracle資料庫在許可權劃分上,比其他資料庫都要細。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.