亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

講解Informix安全特性保護數據的具體措施

2024-07-21 02:44:16
字體:
來源:轉載
供稿:網友

前言


保護數據需要權衡考慮安全性和訪問能力。如何找到最合適的方法呢?


目前,公司和政府為數據的可審計性和控制制定了嚴格的標準,這使數據庫安全性成為近來的熱點。DBA 必須保證用戶能夠訪問完成工作所需的數據,同時避免數據風險。


絕對保護數據的惟一方法是把服務器關閉,鎖起來,不讓人使用。但是,為了讓數據庫發揮作用,就必須允許訪問數據。IDS 在數據庫、表和列級都應用了安全措施。安全措施還可以應用于視圖中的記錄級。所有安全措施都基于用來連接數據庫的用戶名。


我將解釋 Informix 安全特性如何幫助您保護數據,同時允許適當的用戶訪問數據。

安全建議


每個環境和數據庫開發的每個階段有不同的數據庫安全性需求。開發環境必須讓程序員能夠快速創建和修改數據庫對象。測試和生產環境需要穩定性,需要控制可以對數據庫對象執行哪些操作。有效的數據庫安全模型的一個關鍵部分是,定義和分配 DBA、數據庫安全官(DSO)和對象所有者角色。


對于 DBA 角色,應該創建一個抽象的用戶登錄。DBA 本質上是數據庫超級用戶。建立一個單獨的登錄會減少用戶意外刪除數據庫的風險。這條原則在生產環境中尤其重要。DBA 登錄名應該是數據庫和數據庫中所有表的創建者。DBA 應該是對數據庫中任何表有修改特權的惟一用戶。作為數據庫和數據庫中所有表的創建者,DBA 可以把特權授予其他用戶。


一些生產環境可能需要一個 DSO,這是 DBA 之外的一個單獨職位,他負責數據安全。DSO 也應該是一個單獨的抽象用戶登錄。為了能夠有權在數據庫中添加新用戶,DSO 需要 DBA 數據庫特權。DSO 還需要數據庫中每個表的授予特權,以便把特權授予其他用戶。


為了建立具有 DSO 特權的角色,必須給 DSO 分配用戶對于數據庫中每個表可能需要的所有特權。下面是使用帶 grant option 的 grant 命令的 SQL 語法:


GRANT SELECT, INSERT, UPDATE, DELETE, INDEX ON table_name TO dso_login_name

WITH GRANT OPTION;

Public特權


Informix 使用關鍵字 public 表示應用于所有用戶的特權。public 關鍵字是一個非常強大的工具,可以開放對數據的訪問。同樣,為了防止未經過授權的所有用戶連接數據庫和選擇數據,可以完全撤消 public 特權。

對象所有者特權


創建數據庫或數據庫對象(表、索引、函數、過程等等)的用戶就是這個對象的所有者,他控制這個對象的訪問和特權。對象的所有者擁有所有表級特權,而且這些特權不能撤消。當系統從開發環境轉移到生產環境時,或者表或數據庫原來的所有者離開組織時,這個限制可能會造成問題。任何其他用戶(即使是 DBA)都無法撤消所有者的特權。因此,必須謹慎地決定數據庫或表的所有者。


表的所有者是可以向其他用戶授予這個表的特權的惟一用戶。一些應用程序也使用 owner.tablename 語法來訪問表。在我的一個客戶的數據庫中,表在開發、接收測試和生產階段有不同的所有者。一個表只能有一個所有者。當把應用程序代碼從開發環境轉移到測試環境,然后再轉移到生產環境中時,必須改變表的所有者,這可能會造成問題。在不同的環境中,必須修改應用程序代碼中的 owner.tablename,這會增加風險。

數據庫特權


有三個數據庫特權級別:DBA、Resource 和 Connect。Connect 特權允許用戶訪問數據庫以及添加、修改和刪除數據。Resource 特權授予用戶所有 Connect 特權,還授予創建新的表、索引和過程的特權。DBA 特權包括 Connect 和 Resource 特權,還授予用戶把 Resource、Connect 或 DBA 特權授予其他用戶的權力。具有 DBA 特權的用戶還可以刪除數據庫中的所有對象或完全刪除數據庫。


對于大多數數據庫活動,Connect 特權就足夠了。要創建新對象的程序員或開發人員可能需要 Resource 特權。DBA 特權就像是 Unix 操作系統的 “超級用戶”。授予或撤消數據庫特權的語法是:


grant [ dba | resource | connect ] to [ public | USERS ];


revoke [ dba | resource | connect ] from [ public | USERS ];

 

 

數據庫特權存儲在系統表 sysusers 中。可以用 select * from sysusers; 列出所有用戶及其數據庫特權,顯示的信息包括:


◆username,連接數據庫的用戶的登錄名

◆usertype,數據庫特權類型;D 表示 DBA,R 表示 Resource,C 表示 Connect

◆PRiority,這一列沒有正式使用,但它是系統表的一部分(通常,對于所有用戶,這一列是 5;對于數據庫所有者,是 9)

◆passWord,這一列沒有使用,但它是系統表的一部分

數據庫特權


應該避免把 DBA 特權授予 public。我見過一些第三方應用程序把 DBA 特權授予 public,僅僅是因為這樣做非常省事。如果把 DBA 特權授予 public,那么任何用戶都能夠刪除數據庫、撤消所有其他用戶的所有特權和創建新的數據庫用戶。如果把 Resource 特權授予 public,那么就允許任何用戶在數據庫中創建對象(表或視圖)。


撤消用戶的 DBA 或 Resource 特權會使特權轉換為 Connect。如果希望從數據庫中完全刪除一個用戶,還需要撤消 Connect 特權。


在授予數據庫特權時,采用以下原則可以減少很多麻煩:


◆DBA 特權應該只授予一兩個登錄名,這些登錄名不供常規用戶使用。這些登錄名應該只用于數據庫管理(DBA 和 DSO)。

◆Resource 特權應該只授予開發環境中的程序員,以及必須通過運行過程創建索引的用戶。

◆Connect 特權應該只授予需要訪問數據庫的用戶。

表特權


有七種表特權:


◆Select(查看表中的數據)

◆Insert(在表中添加新的數據行)

◆Update(修改現有行)

◆Delete(刪除數據行)

◆Index(在表中添加索引)

◆Alter(修改表結構)

◆Reference(在引用約束中引用列)

用戶必須具有 Resource 數據庫特權和相關的表特權,才能創建索引、修改表結構或引用持久表。

 


創建表的用戶是所有者,他擁有所有表特權,這些特權無法撤消。with grant option 允許用戶把特權授予其他用戶;應該謹慎地使用這個選項,因為它把控制表特權的過程委托給了其他用戶。使用 as GRANTOR 選項以另一個用戶的身份授予特權。只有 DBA 或具有授予權限的用戶可以使用這個選項。只有授予一個特權的用戶能夠撤消這個特權。


授予和撤消表特權的語法如下:


grant [ all | [ select | insert | update | delete | index | alter | reference ]

on [ TABLE | VIEW | SYNONYM ] to [ public | USERS ]

[ with grant option ][ as GRANTOR ];


revoke [ all | [ select | insert | update | delete | index | alter| reference ]

on [ TABLE | VIEW | SYNONYM ] from [ public | USERS ];

 

 

表特權存儲在系統表systabauth中,這個表包含四列:


◆grantor,授予這個特權的用戶

◆grantee,獲得這個特權的用戶

◆tabid,這個表在系統表中的編號

◆tabauth,表特權

使用下面的 SQL 語句列出表和具有表特權的用戶:


select systables.tabname, systabauth.*from systables, systabauth

where systables.tabid = systabauth.tabid and systables.tabid > 99 order by tabname;

 

 

這個語句聯結 systabauth 和 systables,從 systables 中獲取表名并顯示用戶。tabauth 列包含特權,需要根據這個列中的位置進行解碼(見圖 1)。

圖 1. tabauth 列包含的特權

 

tabauth 中的字符表示對于一個表有哪些表級特權。表 1 給出列中的位置與其表示的表和列級特權之間的對應關系。

 

表1. 表和列級特權之間的對應關系

 

大寫字母表示用戶可以把這個特權授予其他用戶;- 表示用戶不擁有這個特權。所以在圖 1 中,Sarah 只有 customer 表的 select 特權,而 Robert 有 select、insert、update 和 delete 特權;沒有列級特權。


與數據庫特權一樣,應該謹慎地使用 public??梢猿废粋€用戶的所有表特權,但是這個用戶仍然擁有分配給 public 的特權。在默認情況下,每個表在創建時都有 public 特權,所以需要檢查 public 特權,考慮是否需要修改默認的 public 特權。


在數據倉庫系統中,用戶只需要 select 特權。在 OLTP 數據庫中,應該根據需求把特權限制在 select、update、insert 和 delete。

列特權


兩個列級特權是 select 和 update。具有列級特權的用戶不應該擁有表級的 select 或 update 特權。用戶的表級 select 或 update 特權將覆蓋列級特權。列級特權存儲在 syscolauth 表中,它們限制用戶是否可以查看或修改表中記錄的指定列。


授予列級特權的語法如下:


grant [ select (COLUMN) | update (COLUMN) | reference ( COLUMN ) ]

on [ TABLE | VIEW | SYNONYM ] to [ public | USERS ][ with grant option ][ as GRANTOR ] ;


除非在表級撤消 select 和 update 特權,否則列級特權不起作用。當存在列級特權時,systabauth 表的 tabauth 列的第三個位置上會顯示一個星號(見表 1)。


列級特權在控制對機密信息(比如工資或 SSN)的訪問方面非常有用。

權衡考慮控制和訪問


安全性是 DBA 的一項重要責任。既要保護組織的數據,又要滿足適當的使用需求,這是個難題。關鍵是分配適當的特權級別。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品久久久久久| 亚洲xxxx做受欧美| 丝袜美腿亚洲一区二区| 欧美激情亚洲另类| 久久久在线免费观看| 欧美大片欧美激情性色a∨久久| 欧美日韩第一视频| 欧美日韩在线第一页| 亚洲直播在线一区| 亚洲欧美制服丝袜| 国产精品久久久久久久天堂| 国产一区二区三区欧美| 91精品久久久久久综合乱菊| 日本伊人精品一区二区三区介绍| 亚洲成人激情图| 久久久精品中文字幕| 亚洲国产成人91精品| 欧美成年人在线观看| 国产一区二区三区四区福利| 色悠悠久久88| 久久久久成人精品| 日韩美女视频免费看| 欧美一区第一页| 美日韩丰满少妇在线观看| 国产精品免费久久久久久| 亚洲综合色av| 亚洲一区二区三区在线视频| 日韩中文在线观看| 国产在线999| 国产精品亚洲自拍| 亚洲女在线观看| 亚洲精品中文字| 91久久精品日日躁夜夜躁国产| 91大神在线播放精品| 亚洲久久久久久久久久| 久久久精品2019中文字幕神马| 日韩免费精品视频| 81精品国产乱码久久久久久| 欧美www在线| 欧美裸身视频免费观看| 国产成+人+综合+亚洲欧美丁香花| 久久久精品网站| 国产欧美一区二区| 日韩精品在线看| 亚洲第一网站男人都懂| 日本91av在线播放| 亚洲一区二区日本| 欧美大片免费观看| 韩国欧美亚洲国产| 黑人巨大精品欧美一区二区| 久久久久久高潮国产精品视| 国产精品久久久久久久7电影| 992tv成人免费视频| www.美女亚洲精品| 91国产高清在线| 97人人爽人人喊人人模波多| 欧美最猛性xxxxx免费| 国产成人综合久久| 欧美区二区三区| 国产区精品视频| 97免费在线视频| 亚洲精品98久久久久久中文字幕| 欧美激情日韩图片| 日韩成人在线网站| 欧美激情一区二区三区高清视频| 国产精品免费一区| 色在人av网站天堂精品| 性色av一区二区三区免费| 欧美一级淫片播放口| 国产一区二区三区网站| 国产精品99蜜臀久久不卡二区| 亚洲色图第三页| 国产偷亚洲偷欧美偷精品| 国产91亚洲精品| 中国日韩欧美久久久久久久久| 欧美在线一级va免费观看| 精品久久久久久久久久ntr影视| 久久成人国产精品| 国产丝袜高跟一区| 色诱女教师一区二区三区| 久久躁日日躁aaaaxxxx| 国内精品久久久久| 久久久噜噜噜久久中文字免| 97人人模人人爽人人喊中文字| 欧美精品久久久久| 国产亚洲a∨片在线观看| 国产91精品久久久久| 中文字幕亚洲在线| 日本中文字幕不卡免费| 成人精品一区二区三区电影黑人| 国产精品高潮视频| 97在线免费观看| 青草青草久热精品视频在线网站| 亚洲欧美日韩网| 亚洲欧美中文日韩v在线观看| 日韩欧美一区视频| xxxx性欧美| 国产成人精品免费视频| 丰满岳妇乱一区二区三区| 91国在线精品国内播放| 久久综合伊人77777蜜臀| 亚洲一区二区中文字幕| 欧美黑人极品猛少妇色xxxxx| 91在线色戒在线| 国产一区二区美女视频| 精品女同一区二区三区在线播放| 亚洲免费视频网站| 国产在线不卡精品| 欧美成aaa人片在线观看蜜臀| 深夜成人在线观看| 亚洲午夜国产成人av电影男同| 国产成人一区二区三区电影| 国产婷婷色综合av蜜臀av| 91干在线观看| 欧美日韩在线看| 欧美激情一区二区三区高清视频| 亚洲人成伊人成综合网久久久| 亚洲午夜久久久影院| 中文字幕欧美日韩精品| 亚洲人av在线影院| 日韩福利伦理影院免费| 亚洲国产精品国自产拍av秋霞| 中日韩美女免费视频网站在线观看| 日韩精品视频在线免费观看| 亚洲欧美日韩直播| 国内成人精品一区| 国产成人一区二区三区电影| 国产婷婷成人久久av免费高清| 日韩美女毛茸茸| 2019中文字幕在线| 亚洲精品久久久久中文字幕欢迎你| 国产主播精品在线| 清纯唯美亚洲激情| 91视频88av| 日韩激情第一页| 九九热这里只有在线精品视| 日韩免费在线视频| 欧美日产国产成人免费图片| 午夜精品一区二区三区av| 亚洲欧美激情四射在线日| 亚洲一区二区免费在线| 亚洲无亚洲人成网站77777| 中文字幕少妇一区二区三区| 久久成人国产精品| 91精品国产91| 精品成人乱色一区二区| 国产精品福利在线观看网址| 热re99久久精品国产66热| 亚洲a级在线观看| 国产色综合天天综合网| 国产成人综合久久| 中文字幕少妇一区二区三区| 91美女片黄在线观| 欧美激情免费在线| 精品国产一区二区三区久久狼黑人| 欧美性videos高清精品| 日韩欧美第一页| 黑人巨大精品欧美一区二区免费| 中文字幕欧美日韩在线| 亚洲一区av在线播放| 尤物99国产成人精品视频| 国产精品亚洲精品| 亚洲综合自拍一区| 97精品在线视频|