informix 的安全訪問控制機制

2021-05-24 11:52:16 字數 2848 閱讀 7470

資料庫安全

資料庫安全是及其重要的,無論使購買產品和歷史分析資料,乙個公司都需要有健全的資料庫安全計畫,通過如下方式來確定:

誰可以訪問資料庫伺服器例項和資料庫

從哪兒以什麼方式驗證使用者密碼

使用者的授權級別

使用者能夠執行的命令

使用者能夠讀取或者修改的資料

使用者能夠建立、修改或刪除的資料庫物件

ids為資料庫安全提供三個主要的機制:身份驗證、授權和特權

身份驗證

ids驗證使用者身份的過程,我們知道ids中的使用者是建立在所在的作業系統上進行授權的,所以在驗證使用者id和密碼時與底層作業系統的安全性密切結合,另外還能在安全協議合作

授權:涉及到確定使用者或組能夠執行的操作,能夠訪問的資料物件,使用者執行高階資料庫和例項管理操作的能力取決於他們的許可權。

特權:比授權的粒度更細,可以授權給使用者或組。支援基於標籤的訪問控制(lbac),提供更細粒度的控制

ids中的訪問控制

自主訪問控制(dac)主要的訪問機制,支援特權和角色訪問sql物件,在資料庫中,使用dac保護的物件包括資料庫、表、列、檢視、型別、例程和語言,但是不能使用者行級保護;

典型的資料庫特權

dba 資料庫建立者和所有者

resource 連線到資料庫並穿件其他物件

connect 能夠連線到資料庫查詢

特權可以通過grant和revoke語句**,如:

grant  resource to username;賦予使用者resource 特權

revoke resource from username;**使用者resource特權

public用於表示資料庫中的所有使用者的關鍵字,當授予public時,表示系統所有使用者都有其特權,**就是**系統中所有使用者的特權;

基於角色的訪問控制(rbac)將特權合併到角色當中然後將角色分配給使用者,從而擴充套件了基於特權的訪問,介紹可以定義為工作任務的類別。

ids預定義的角色:dbsa,dbsso,aao,osa,使用者,特權使用者,可以根據自己的需求建立定製角色,但是僅能dba特權使用者建立。

create role role_name; 建立角色

grant connect to role_name;給角色賦予特權

grant role_name to username;給使用者賦予角色

revoke role_name from username;**使用者的角色

預設角色是管理員建立將其賦予其他使用者或特定庫中授予public

基於標籤的訪問控制

主訪問控制是在資料庫物件級別上工作的,比如資料庫、表、列和檢視等,而基於標籤的訪問控制是在資料的行和列級別上工作的。表由安全策略保護,單個的行和列則由安全標籤保護。資料庫安全管理員(dbsecadm)建立安全策略和標籤,並將標籤授予使用者。當具有安全標籤的使用者向由等效安全策略保護的表寫入資料行時,將在該錶的每個行生成資料標籤。lbac 工作的基本原理是,在保護行的資料標籤中,其安全標籤佔據優勢的使用者能夠讀取資料。如何計算優勢?任何標籤都由每個元件中的個體元件和元素組成。如果使用者標籤中的個體元件超過特定安全策略的行標籤的個體元件,那麼使用者標籤就佔優勢。

ids 中的加密支援

加密技術是作為插入式通訊支援模組(pluggable communication supports module,csm)與 ids 整合的

enccsm 在unix系統名稱為$informixdir/lib/csm/iencs11a.so(windows 中位於%informixdir%/lib/csm/iencs11a.dll),這個模組用於加密在客戶機和伺服器之間傳輸的所有資料

spwdcsm 在unix系統中$informixdir/lib/csm/ispws11a.so(windows中%informixdir%/lib/csm/ispws11a.dll)這個模組僅用於加密從客戶機傳送到伺服器的密碼

gsscsm 在unix系統中$informixdir/lib/csm/igsss11a.so(windows %informixdir%/lib/csm/igsss11a.dll),這個模組用於在 ids 中指出單點登入身份驗證

例如:enccsm/spwdcsm/gsscsm 的 sqlhosts 條目     

demo_on1 onsoctcp demohost 1111 csm=(enccsm)

demo_on2 onsoctcp demohost 1112 csm=(spwdcsm)

demo_on3 onsoctcp demohost 1113 s=7,csm=(gsscsm)

ids 中的安全套接字層(ssl)

安全套接字層(ssl)協議是乙個通訊協議,它通過網路兩個點之間的可靠的端到端安全連線使用加密為資料通訊提供私隱性和完整性。

配置 ids 例項以使用 ssl

為了將 ids 例項配置為使用 ssl 連線,您需要向 sqlhosts 檔案新增連線資訊、設定 ssl 配置引數,以及配置金鑰倉庫和它儲存的數字證書。金鑰倉庫和數字證書超出了考試範圍;您僅需知道如何設定 sqlhosts 檔案以使用 ssl。

在 sqlhosts 檔案(unix)或 sqlhosts 登錄檔(windows)中更新連線性息,以包含關於 ssl 連線的資訊。使用正確的協議:

對所有 informix 客戶機使用 onsocssl 協議,比如 esql/c、odbc、db-access、dbexport 實用工具、dbimport 實用工具、dbschema 實用工具或 dbload 實用工具連線

對 drda 連線使用 drsocssl 協議

ssl 的 sqlhosts 條目     

demo_on1 onsoctcp demohost 1111

demo_on2 onsocssl demohost 1112

demo_on3 drsocssl demohost 1113

Informix 基於角色的訪問控制

在角色訪問控制中,角色即一組被授權的操作的集合。操作 許可給 角色 許可給 使用者 乙個使用者可以擁有多個角色。乙個角色可以擁有多個使用者。角色的定義,分配,刪除,只能由管理員執行。如果使用者不具備任何角色,那將不能進行任何操作。高階角色對低階角色有繼承功能。避免重複許可權設定。兩個互斥角色不能賦值...

安全和訪問控制

ldap提供很複雜的不同層次的訪問控制或者aci。因這些訪問可以在伺服器端控制,這比用客戶端的軟體保證資料的安全可安全多了。可以完成 給予使用者改變他們自己的 號碼和家庭位址的權 限,但是限制他們對其它資料 如,職務名稱,經理的登入名,等等 只有 唯讀 權 限。禁止任何人查詢ldap伺服器上的使用者...

系統安全 訪問控制

概念 什麼是訪問控制 access control 為使用者對系統資源提供最大限度共享的基礎上,對使用者的訪問權進行管理,防止對資訊的非授權篡改和濫用 訪問控制作用 保證使用者在系統安全策略下正常工作 拒絕非法使用者的非授權訪問請求 拒絕合法使用者越權的服務請求 訪問控制模型 什麼是訪問控制模型 對...