Ⅰ Oracle資料庫安全性設計大家給點建議
Oracle資料庫本身的安全性建設
從總體上而言,Oracle資料庫是業界安全性方面最完備的資料庫產品。在資料庫安全性的國際標准中,Oracle通過了14項標準的測試,是所有資料庫產品中通過安全性標准最多、最全面的產品。Oracle在C2級的操作系統上(如商用UNIX,VMS操作系統),不僅滿足NCSC C2級安全標准,而且已經正式通過了NCSC C2標準的測試。在B1級的操作系統上不僅滿足NCSC B1級安全標准,而且已經通過了NCSC B1級標準的測試。
Oracle提供的主要安全性措施如下:
�8�9 身份認證功能(Authentication):識別訪問個體的身份
�8�9 數據訪問的機密性(Confidentialty):保證敏感數據訪問的機密性。
�8�9 數據完整性(Integrity):保證數據不被篡改。
�8�9 授權能力(Authorization):保證被授權用戶對數據的查詢和修改能力。
�8�9 訪問控制(Access Control):確定對指定數據的訪問能力。
�8�9 審計能力(Auditing):提供監測用戶行為的能力。
�8�9 私有性(Privacy):提供對敏感數據訪問的私密性。
�8�9 高可用性(Availability):保證數據和系統提供不間斷服務的能力。
�8�9 代理管理能力(Delegated Administration):提供對用戶帳號的集中管理功能。
下面將就應用系統本身對於Oracle提供的安全性措施作更深入的探討。
$PageTitle= Oracle的安全性領域}
三、 Oracle的安全性領域
�8�5 Profile控制
Oracle利用profile機制來管理會話資源佔用,同時也管理用戶密碼的安全策略。
通過profile我們可以實現:
某個特定用戶最多隻能佔用系統百分之幾的CPU時間?
某個特定用戶連接到資料庫之後能存活多長時間?
某個特定用戶連接到資料庫之後多長時間處於非活躍狀態就將被系統中斷連接?
用戶登錄密碼輸入錯誤多少次之後就將自動鎖定用戶?
用戶密碼的長度和包含的字元必須符合什麼樣的規則?
用戶密碼在多少天後將自動失效並要求設定新密碼?
�8�5 用戶許可權控制 (Privilage)
Oracle通過角色(Role),許可權(Privilage)等的一系列授予(Grant)和回收(Revoke)操作可以有效的進行用戶的許可權控制。
通過許可權控制我們可以實現:
某個特定用戶只能讀取而不能修改另一個用戶的表數據。
某個特定用戶只能運行Oracle資料庫系統的幾個存儲過程或者函數。
某個特定用戶自己能夠擁有修改某些數據的權力,但是卻無法給其它不擁有這個許可權的用戶授予修改該數據的權力。
某個特定用戶可以讀取數據但是無法創建新的表空間。
�8�5 虛擬專用資料庫(VPD)
虛擬專用資料庫 (VPD) 也稱為細粒度訪問控制,它提供強大的行級安全功能。它是在 Oracle8i 中推出的,已經受到廣泛的歡迎。
VPD 的工作方法是,通過透明地更改對數據的請求,基於一系列定義的標准向用戶提供表的局部視圖。在運行時,所有查詢都附加了謂詞,以便篩選出准許用戶看到的行。
也就是通過VPD的設置,我們可以做到行級安全性控制,特定的用戶即使對一張表有讀取許可權,那麼也只能看到符合自身許可權的記錄。
注意,在Oracle10g版本中,VPD得到增強,已經可以實現欄位級的安全性控制了。
實例及搭建步驟參看:利用VPD細粒度訪問策略實現行級安全性 Step By Step
�8�5 Orace Label Security
基於對由客戶提交的行級安全性的嚴格要求,Oracle Label Security(Oracle 資料庫企業版的選件之一)利用多級安全性概念解決了世界上政府和商業用戶在實際中遇到的數據安全和隱私問題。
OLS 通過利用數據敏感度標簽(例如「敏感」和「公司機密」)與用戶標簽授權,提供了完善的行級安全性控制。
OLS 使用政策概念來存儲標簽定義和授權。該政策可直接在資料庫中進行管理,或在 Oracle 身份管理中進行集中管理。
�8�5 Oracle Database Valut
通常資料庫管理員如果具有了DBA許可權,那麼就很難防止這樣的管理員查看應用程序數據。而Oracle Database Valut則解決了必須保護涉及合作夥伴、員工和顧客的敏感業務信息或隱私數據的客戶最為擔心的問題。
Oracle Database Vault 可防止高許可權的應用程序 DBA 訪問其他的應用程序、執行其許可權之外的任務。Oracle Database Vault 可在不影響應用程序功能的前提下快速而高效地保護現有程序。
Oracle Database Vault 可通過下列方法解決一些最為常見的安全問題和內部威脅:
1. 限制 DBA 和其他授權用戶訪問應用程序數據。
2. 防止DBA 操縱資料庫和訪問其他應用程序。Oracle Database Vault 提供了強大的職責劃分控制功能,可防止擅自更改資料庫。比如說如果一個用戶具有 CREATE USER 許可權,但不具備正確的用戶管理許可權,則 Oracle Database Vault 將阻止該 DBA 創建新用戶。
3. 更好的控制何人、何時、何地可以訪問應用程序。如日期時間、資料庫客戶端在網路上的位置之類的因素。
Oracle Database Valut是新的Oracle Database 10g企業版的選件。目前已經有Linux X86以及Solaris SPARC 64bit的版本可以下載使用了。
�8�5 用戶訪問審計
審計是Oracle安全性的另一個重要領域,我們還必須小心地計劃審計方案。有幾種方式可在Oracle中進行審計:
1. SQL審計命令(標准審計)
通過AUDIT語句我們可以對成功或者不成功的特定對象的讀取,更新操作進行審計。
標准審計只會記錄較少的跟蹤信息,比如發出該語句的用戶、時間、終端標識號等等。
該審計對於系統性能的影響更多地取決於對象的繁忙程度。
2. 用對象觸發器進行審計(也就是DML審計)
此類審計通常由客戶自行開發放置於特定資料庫對象上的觸發器,由於是自行開發,所以相對於標准審計則能夠更自由地記錄更多感興趣的跟蹤信息。比如更新操作將某個欄位從什麼原始值更新到了什麼新值。
該審計對於系統性能的影響更多地取決於對象的繁忙程度和觸發器的編寫水平。
3. 用系統級觸發器進行審計(記錄用戶登錄和退出)
當用戶登錄資料庫或者離開資料庫時,都可以通過自定義的觸發器來記錄用戶名稱,操作時間,終端標識號等信息。
由於觸發器觸發幾率小,所以該審計對於系統性能影響並不大。
4. 用LogMiner進行審計(也就是DML和DDL)
Oracle資料庫將所有的更新操作都記錄在重作日誌中,而Oracle提供了LogMiner工具用於挖掘重作日誌中的所有操作,相比起上述的各種審計方法來說,該種審計可能是信息最為完善,對於應用系統性能影響最小的方法。
此處稍微延展開來說一下,LogMiner是雙刃劍,既然可以用來審計,也就能夠被惡意使用作為數據竊取的工具。所以在數據本身的加密方面,Oracle同樣提供了多種解決方案,比如DBMS_OBFUSCATION_TOOLKIT,DBMS_CRYPTO和最新的透明數據加密,甚至在數據備份方面 Oracle也推出了Secure Backup來應對磁帶數據的加密,但是要注意到數據加密不應用作訪問控制的替代項,存儲加密的數據並不會在存儲介質本身提供額外的保護層,只是有助於在發生介質遭竊時保護諸如信用卡號之類的敏感數據。本文不再作更多的介紹。
5. 細精度審計(FGA)
細粒度審計 (FGA),是在 Oracle 9i 中引入的,能夠記錄 SCN 號和行級的更改以重建舊的數據,但是它們只能用於 select 語句,而不能用於 DML,如 update、insert 和 delete 語句。因此,對於 Oracle 資料庫 10g 之前的版本,使用觸發器雖然對於以行級跟蹤用戶初始的更改是沒有吸引力的選擇,但它也是唯一可靠的方法。
而Oracle10g種FGA功能的增強使其不但能夠支持select操作,同時也支持DML操作。在 Oracle 10g 中,審計已經從一個單純的「操作記錄者」成長為一個「事實記錄機制」,它能以一個非常詳細的級別來捕獲用戶的行為,這可以消除您對手動的、基於觸發器的審計的需要。它還結合了標准審計和 FGA 的跟蹤,這使其更易於跟蹤資料庫訪問,而不用考慮它是如何生成的。
通過細粒度審計我們可以記錄:
在早上九點到下午六點之間或在星期六和星期日對某個表進行了訪問。
使用了公司網路外部的某個 IP 地址。
選定或更新了特定列。
使用了該列的特定值。
Ⅱ 關於oracle資料庫加密的函數
在程序裡面把密碼加密之後保存到資料庫就好了。/摳鼻
Ⅲ oracle資料庫透明加密問題
同樣求解
Ⅳ oracle 11g和10g有什麼區別
Oracle 9i比8i多了哪些新特性?
簡要說:
9i更易於管理。
詳細說:
並發集群,8i OPS升級為9i RAC,8i結點間用硬碟交換信息,9i結點間採用高速網線的緩存熔合(Cache Fusion)技術交換信息,交換速度提高100倍以上。
9i可以在線修改內核參數和內存分配,8i不行。
數據文件和表空間管理,8i手工管理,9i自動管理。
9i比8i增強了對ANSI SQL99的支持。
9i比8i增強了故障後的快速恢復(Fast-start)。
8i只支持物理備份(physical backup)資料庫,9i還增加了支持邏輯備份(logical backup)資料庫,使備份資料庫除了作為主資料庫的鏡像外,還可以提供其他數據服務.
Oracle 10g比9i多了哪些新特性?
簡要說:
10g支持網格(Grid),支持自動管理(Automatic Management)。
詳細說:
10g的g是"Grid"縮寫,支持網格計算,即,多台結點伺服器利用高速網路組成一個虛擬的高性能伺服器,負載在整個網格中均衡(Load Balance),按需增刪結點,避免單點故障(Single Point of Faliure)。
安裝容易,安裝工作量比9i減少了一半。
新增基於瀏覽器的企業管理器(Enterprise Manager)。
自動存儲管理(ASM),增刪硬碟不再需要操作系統管理員設置的鏡像、負載均衡、物理卷、邏輯卷、分區、文件系統,只要打一條Oracle命令,ASM會自動管理增加或刪除的硬碟。
內存自動化,根據需要自動分配和釋放系統內存。
SQL性能調整自動化。
免費提供基於瀏覽器的小應用開發工具Oracle Application Express(原名HTML DB),支持10g和9i R2。
快速糾正人為錯誤的閃回(Flashback)查詢和恢復,可以恢復資料庫、表甚至記錄。
數據泵(Data Pump)高速導入、導出數據,比傳統方法導出速度快兩倍以上,導入速度快15--45倍。
精細審計(Fine-Grained Auditing),記錄一切對敏感數據的操作。
存儲數據的表空間(Tablespace)跨平台復制,極大的提高數據倉庫載入速度。
流(Streams)復制,實現低系統消耗、雙向(double-direction)、斷點續傳(resume from break point)、跨平台(cross platform)、跨數據源的復雜復制。
容災的數據衛士(Data Guard)增加了邏輯備份功能,備份資料庫日常可以運行於只讀狀態,充分利用備份資料庫。
支持許多新EE選件,加強資料庫內部管理的「Database Vault」,資料庫活動的審計的(Audit Vault),數據倉庫構建高級功能(Warehouse Builder Enterprise ETL, Warehouse Builder Data Quality).
Oracle 11g比10g多了哪些新特性?
11 g 擴展了 Oracle 獨傢具有的提供網格計算優勢的功能,您可以利用它來提高用戶服務水平、減少停機時間以及更加有效地利用 IT資源,同時還可以增強全天候業務應用程序的性能、可伸縮性和安全性。
利用真正應用測試(RAT)盡量降低更改的風險
11 g降低了資料庫升級以及其他硬體和操作系統更改的成本,顯著簡化了更改前後的系統測試以便您可以識別和解決問題。例如:
利用 Database Replay,您可以在資料庫級別輕松捕獲實際的生產負載並在您的測試系統上重新播放,這樣您可以全面測試系統更改(包括關鍵的並發特性)的影響。
SQL Performance Analyzer識別結構化查詢語言 ) SQL(執行計劃更改和性能回退。然後,可以使用 SQL Tuning Advisor解決識別的問題,方法是還原到原始的執行計劃或進一步優化。
利用管理自動化提高 DBA 效率
Oracle 資料庫 11 g繼續致力於(從 Oracle9i資料庫開始一直到 Oracle 資料庫10 g)顯著簡化和完全自動化 DBA 任務。 Oracle資料庫11 g中的新功能包括:
利用自學功能自動進行 SQL 優化系統全局區(SGA)和程序全局區( PGA)的內存緩存區的自動、統一調整新的 advisor用於分區、數據恢復、流性能和空間管理針對自動資料庫診斷監視器 (ADDM)的增強,能夠提供 Oracle 真正應用集群 (Oracle RAC)環境中的更好的性能全局視圖以及改進的性能比較分析功能。
利用故障診斷快速解決問題
Oracle 資料庫 11 g中新增的故障診斷功能使客戶在發生錯誤後捕獲 Oracle
Support所需的數據變得極為簡單。這可以加速問題的解決,減少客戶重現問題的需要。
盡量降低停機成本
通過 Oracle Data Guard快速恢復數據
Oracle Data Guard在本地和遠程伺服器之間協調資料庫的維護和同步以便從災難或站點故障快速恢復。 Oracle資料庫11 g提供了大量顯著的 Oracle Data Guard增強,包括
可以在物理備用系統上運行實時查詢用於報表和其他目的
可以通過將物理備用系統暫時轉換為邏輯備用系統執行聯機的、滾動的資料庫升級
..支持測試環境的快照備用系統
此外,物理和邏輯備用的性能都有提高。邏輯備用現在支持可擴展標記語言(XML)類型字元大型對象 (CLOB)數據類型和透明的數據加密。現在支持自動的、快速啟動的故障切換以支持非同步傳輸。
Oracle 資料庫 11 g提供了幾個針對自動存儲管理的重要的高可用性增強,
包括:
..支持滾動升級
..自動壞塊檢測和修復
..快速鏡像重新同步,該功能可以有效地重新同步存儲網路連接性暫時丟失時自動存儲管理鏡像的存儲陣列
自動存儲管理的性能增強使得大型資料庫可以更快地打開並減少 SGA 內存消耗。這些增強還允許 DBA增加存儲分配單元大小以加快大型序列輸入/輸出 (I/O)
顯著增加正常運行時間
Oracle資料庫11 g使您可以應用很多一次性資料庫補丁(包括診斷補丁),而沒有停機時間。新的數據恢復 advisor通過快速識別故障根本原因、為 DBA提供可用的恢復選項,極大地減少了停機時間,在某些情況下,還通過「自我恢復」機制自動糾正問題。
Oracle 資料庫 11 g還有其他高性能提高,包括
..自動編譯資料庫中的 PL/SQL 和 Java
..更快的觸發器,包括更加有效地調用每行觸發器
..更快的簡單 SQL 操作
..更快的 Oracle Data Guard 和 Oracle Streams 復制
..與網路文件系統( NFS) 存儲設備更快、更可靠的直接連接
..更快的升級
..大型文件更快的備份/還原
..更快的備份壓縮
Oracle 資料庫 11 g包括大量新的 ILM特性,例如
..新的分區功能,包括
.按父/子引用分區
.按虛擬列分區
Oracle資料庫11 g還具有帶 Oracle閃回數據歸檔的 Total Recall,使您可以在選定的表中查詢以前的數據,從而提供了一種簡單實用的向數據中添加時間維度的方法以便於更改跟蹤、 ILM、審計和合規。
其他高可用性增強
Oracle 資料庫 11g還有其他高可用性增強,包括:
Oracle閃回事務查詢,提供帶其他相關事務更改的流氓事務的按鈕更改
具有更多可傳輸選項的增強的平台移植和數據移動,包括可傳輸分區、
模式和跨平台資料庫
Oracle恢復管理器 (RMAN)支持 Windows Volume Shadow Copy
Service ( VSS )快照,從而實現與 Windows備份更緊密的集成
優化性能和可靠性
合規、法律取證以及整合數據倉庫的趨勢導致資料庫的大小每兩年就會增加
兩倍,這極大地影響了大型資料庫的存儲成本和性能、可靠性以及可管理性
。Oracle 資料庫 11 g使組織可以使用低成本的伺服器和模塊化的存儲器輕
松伸縮大型的事務和數據倉庫系統並提供快速的全天候數據訪問。 Oracle 數
據庫11 g提供新的創新特性以進一步提高要求極嚴格的環境的性能和可伸
縮性。
利用 SecureFiles安全地存儲您的所有數據
SecureFiles 是 Oracle用於在資料庫中存儲大型對象) LOB (
(例如圖像、大型文本對象或包括 XML、醫學成像以及地理空間柵格對象在內的高級數據類型)的下一代產品。 SecureFiles提供能夠完全與文件系統相媲美的卓越性能。此外,它還提供高級功能,例如智能壓縮、透明加密以及透明的重復
刪除。
通過聯機事務處理壓縮提高性能並盡量降低存儲成本
Oracle 資料庫 11 g支持聯機事務處理 (OLAP)應用程序中常用的更新、
插入和刪除操作的數據壓縮。以前的 Oracle資料庫版本支持數據倉庫應用
程序常用的批量數據載入操作的壓縮。 Oracle 資料庫 11 g OLTP表壓縮通
過更加高效地使用內存來緩存數據以及減少表掃描的 I/O提高了資料庫性能
。利用 OLTP表壓縮,您可以利用最小的處理開銷達到 2 到 3倍的壓縮
比。
Ⅳ Oracle 10G和Oracle 11G有什麼分別
提高災難恢復解決方案的投資回報
Oracle資料庫11g的Oracle Data Guard組件可幫助客戶利用備用資料庫,以提高生產環境的性能,並保護生產環境免受系統故障和大面積災難的影響。Oracle Data Guard組件可以同時讀取和恢復單個備用資料庫,這種功能是業界獨一無二的,因此Oracle Data Guard組件可用於對生產資料庫的報告、備份、測試和「滾動」升級。通過將工作量從生產系統卸載到備用系統,Oracle Data Guard組件還有助於提高生產系統的性能,並組成一個更經濟的災難恢復解決方案。
增強信息生命周期管理和存儲管理能力
Oracle資料庫11g具有極新的數據劃分和壓縮功能,可實現更經濟的信息生命周期管理和存儲管理。很多原來需要手工完成的數據劃分工作在Oracle資料庫11g中都實現了自動化,Oracle資料庫11g還擴展了已有的范圍、散列和列表劃分功能,增加了間隔、索引和虛擬卷劃分功能。另外,Oracle資料庫11g還具有一套完整的復合劃分選項,可以實現以業務規則為導向的存儲管理。
Oracle資料庫11g以成熟的數據壓縮功能為基礎,可在交易處理、數據倉庫和內容管理環境中實現先進的結構化和非結構化數據壓縮。採用Oracle資料庫11g中先進的壓縮功能,所有數據都可以實現2x至3x或更高的壓縮比。
全面回憶數據變化
Oracle資料庫11g具有Oracle全面回憶(Oracle Total Recall)組件,可幫助管理員查詢在過去某些時刻指定表格中的數據。管理員可以用這種簡單實用的方法給數據增加時間維度,以跟蹤數據變化、實施審計並滿足法規要求。
最大限度提高信息可用性
在保護資料庫應用免受計劃停機和意外宕機影響方面,甲骨文一直領先於業界。Oracle資料庫11g進一步增強了這種領先地位,資料庫管理員現在可以更輕松地達到用戶的可用性預期。新的可用性功能包括:Oracle閃回交易(Oracle Flashback Transaction),可以輕松撤銷錯誤交易以及任何相關交易;並行備份和恢復功能,可改善非常大資料庫的備份和存儲性能;「熱修補」功能,不必關閉資料庫就可以進行資料庫修補,提高了系統可用性。另外,一種新的顧問軟體 — 數據恢復顧問,可自動調查問題、充分智能地確定恢復計劃並處理多種故障情況,從而可以極大地縮短數據恢復所需的停機時間。
Oracle快速文件
Oracle資料庫11g具有在資料庫中存儲大型對象的下一代功能,這些對象包括圖像、大型文本對象或一些先進的數據類型,如XML、醫療成像數據和三維對象。Oracle快速文件(Oracle Fast Files)組件使得資料庫應用的性能完全比得上文件系統的性能。通過存儲更廣泛的企業信息並迅速輕松地檢索這些信息,企業可以對自己的業務了解得更深入,並更快地對業務做出調整以適應市場變化。
更快的XML
在Oracle資料庫11g中, XML DB的性能獲得了極大的提高,XML DB是Oracle資料庫的一個組件,可幫助客戶以本機方式存儲和操作XML數據。Oracle資料庫11g增加了對二進制XML數據的支持,現在客戶可以選擇適合自己特定應用及性能需求的XML存儲選項。XML DB還可以通過支持XQuery、JSR-170、SQL/XML等標準的業界標准介面來操作XML數據。
透明的加密
Oracle資料庫11g進一步增強了Oracle資料庫無與倫比的安全性。這個新版資料庫增強了Oracle透明數據加密功能,將這種功能擴展到了卷級加密之外。Oracle資料庫11g具有表空間加密功能,可用來加密整個表、索引和所存儲的其他數據。存儲在資料庫中的大型對象也可以加密。
嵌入式OLAP行列
Oracle資料庫11g在數據倉庫方面也引入了創新。OLAP行列現在可以在資料庫中像物化圖那樣使用,因此開發人員可以用業界標准SQL實現數據查詢,同時仍然受益於OLAP行列所具有的高性能。
新的連續查詢通知(Continuous Query Notification)組件在資料庫數據發生重要變化時,會立即通知應用軟體,不會出現由於不斷輪詢而加重資料庫負擔的情況。
連接匯合和查詢結果高速緩存
Oracle資料庫11g中各項提高性能和可擴展性的功能可幫助企業維護一個高性能和高度可擴展的基礎設施,以向企業的用戶提供質量最高的服務。Oracle資料庫11g進一步增強了甲骨文在性能和可擴展性方面的業界領先地位,增加了查詢結果高速緩存等新功能。通過高速緩存和重用經常調用的資料庫查詢以及資料庫和應用層的功能,查詢結果高速緩存功能改善了應用的性能和可擴展性。資料庫駐留連接匯合(Database Resident Connection Pooling)功能通過為非多線程應用提供連接匯合,提高了Web系統的可擴展性。
增強了應用開發能力
Oracle資料庫11g提供多種開發工具供開發人員選擇,它提供的簡化應用開發流程可以充分利用Oracle資料庫11g的關鍵功能,這些關鍵功能包括:客戶端高速緩存、提高應用速度的二進制XML、XML處理以及文件存儲和檢索。另外,Oracle資料庫11g還具有新的Java實時編譯器,無需第三方編譯器就可以更快地執行資料庫Java程序;為開發在Oracle平台上運行的.NET應用,實現了與Visual Studio 2005的本機集成;與Oracle快捷應用配合使用的Access遷移工具;SQL Developer可以輕松建立查詢,以快速編制SQL和PL/SQL常式代碼。
增強了自助式管理和自動化能力
Oracle資料庫11g的各項管理功能用來幫助企業輕松管理企業網格,並滿足用戶對服務級別的要求。Oracle資料庫11g引入了更多的自助式管理和自動化功能,將幫助客戶降低系統管理成本,同時提高客戶資料庫應用的性能、可擴展性、可用性和安全性。Oracle資料庫11g新的管理功能包括:自動SQL和存儲器微調;新的劃分顧問組件自動向管理員建議,如何對表和索引分區以提高性能;增強的資料庫集群性能診斷功能。另外,Oracle資料庫11g還具有新的支持工作台組件,其易於使用的界面向管理員呈現與資料庫健康有關的差錯以及如何迅速消除差錯的信息。
Ⅵ 如何在Oracle SecureFiles中加密數據
用於加密非LOB欄位的透明數據加密語法與在Oracle SecureFiles中啟用加密的語法完全相同。它們有一個重要的區別,非LOB欄位可以使用NO SALT參數阻止TDE在加密數據之前先給數據添加一個隨機字元串。Oracle SecureFile LOB欄位不支持NO SALT選項。我們可以使用數據字典視圖USER_ENCRYPTED_COLUMNS確定應該加密哪一些欄位,以及這些欄位的狀態。下面是一些ENCRYPT子句的例子:
CREATE TABLE tab_3DES (col1 CLOB ENCRYPT USING '3DES168')
LOB(col1) STORE AS SECUREFILE(
CACHE
NOLOGGING
);
使用默認加密演算法(AES192)和一個密碼創建一個Oracle SecureFile LOB欄位:
CREATE TABLE tab_enc_pw (col1 CLOB ENCRYPT IDENTIFIED BY badpassword)
LOB(col1) STORE AS SECUREFILE(
CACHE
);
使用AES256啟用LOB加密:
ALTER TABLE tab_nocrypt MODIFY
( col1 CLOB ENCRYPT USING 'AES256');
通過重新生成加密密鑰修改一個Oracle SecureFiles欄位:
ALTER TABLE tab_3DES REKEY USING 'AES256';
Disable LOB encryption:
禁用LOB加密:
ALTER TABLE tab_enc_pw MODIFY
( col1 CLOB DECRYPT);
Oracle資料庫中存儲的大對象數據容量會繼續增長,但是存儲費用在不斷下降。其中有許多的敏感數據,如醫療記錄、員工數據和知識產權。能夠對這些信息進行加密,這是非常寶貴的,也可以避免在將來投入大量金錢和精力去實現安全性。
Ⅶ Oracle 11g的特性
級大對象(Large Object,即LOB)存儲能力的關鍵原因是在Oracle 11g中數據安全需求越來越高,擴充對LOB和表空間的透明數據加密(Transparent Data Encryption,即TDE)特性來提高數據的安全性,這些特性是如何保護復雜的、非結構化數據的,如醫學數字圖像通訊信息(Digital Imaging for Communication of Medical Information,即DICOM)對象。
Oracle 11g新的SecureFile特性主要是集中在數據壓縮和重復數據刪除方面,主要是為了節約存儲LOB對象的空間,當然在安全特性方面Oracle 11g不僅只有這兩個。
在電子信息技術系統方面增加投入以降低醫療保健方面的成本,使用衛生信息技術降低醫療保健方面的成本,每年投入100億美元,到五年後讓美國的醫療保健系統擴展為基於標準的電子醫療信息系統,包括電子健康記錄。
Ⅷ oracle11g和oracle10g的區別
相對oracle10g而言,Oracle 11g具有了與眾不同的特性。
1、在Oracle 11g中數據安全需求越來越高,擴充對LOB和表空間的透明數據加密(Transparent Data Encryption,即TDE)特性來提高數據的安全性。
2、Oracle 11g新的SecureFile特性主要是集中在數據壓縮和重復數據刪除方面。
Ⅸ 如何在oracle 10g r2中實現透明數據加密
設置加密密鑰:
Oracle 透明數據加密提供了實施加密所必需的關鍵管理基礎架構。 加密的工作原理是將明文數據以及秘密(稱作密鑰)傳遞到加密程序中。 加密程序使用提供的密鑰對明文數據進行加密,然後返回加密數據。 以往,創建和維護密鑰的任務由應用程序完成。 Oracle 透明數據加密通過為整個資料庫自動生成一個萬能密鑰解決了此問題。 在啟動 Oracle 資料庫時,管理員必須使用不同於系統口令或 DBA 口令的口令打開一個 Oracle Wallet 對象。 然後,管理員對資料庫萬能密鑰進行初始化。 萬能密鑰是自動生成的。
性能:
由於索引數據未被加密,因此加密通常會影響現有的應用程序索引。 Oracle 透明數據加密對與給定應用程序表關聯的索引值進行加密。 這意味著應用程序中的相等搜索對性能的影響很小,甚至沒有任何影響。 例如,假設應用程序 card_id存在一個索引,並且此應用程序執行以下語句:
SQL> Select cash from credit_card where card_id = '1025023590';
Oracle 資料庫將使用現有的應用程序索引,盡管 card_id信息已經在資料庫中加密。
准備用於加密的資料庫:
在本部分內容中,您將更新 sqlnet.ora、創建一個加密錢夾 (ewallet.p12)、打開此錢夾並為 TDE創建萬能密鑰。執行以下操作:
1. 您需要更新 sqlnet.ora 文件以包含一個 ENCRYPTED_WALLET_LOCATION 條目。打開一個終端窗口,然後輸入以下命令:
cd $ORACLE_HOME/network/admin
gedit sqlnet.ora
將以下條目添加到文件末尾:
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/opt/oracle/admin/test97/wallet/)))
如果不加這一項的話,則會提示下面錯誤:
SQL> alter system set key identified by "hurray"
2 ;
alter system set key identified by "hurray"
*
ERROR at line 1:
ORA-28368: cannot auto-create wallet
/opt/oracle/admin/test97/wallet/ 目錄是用來存放生成的錢夾的。
可以為加密錢夾選擇任何目錄,但路徑不應指向在資料庫安裝過程中創建的標准模糊錢夾(cwallet.sso)。
2. 接下來,您需要打開錢夾並創建萬能加密密鑰。從終端窗口中,輸入以下命令:
connect / as sysdbaalter system set key identified by "welcome1";
此命令的作用為:
l 如果指定的目錄中不存在加密錢夾,則將創建加密錢夾 (ewallet.p12)、打開此錢夾並創建/重新創建 TDE 的萬能密鑰。
l 如果指定目錄中存在加密錢夾,則將打開此錢夾並創建/重新創建 TDE 的萬能密鑰。
之後,就可以測試數據了。
下面是實驗記錄:
alter system set key identified by "welcome1";
SQL> conn dodd/dodd123
create table test (id number,credit_card_number varchar2(16) ENCRYPT NO SALT);
SQL> insert into test values(1,'1231243242');
1 row created.
SQL> insert into test values(2,'33245235');
SQL> commit;
Commit complete.
SQL> select * from test;
ID CREDIT_CARD_NUMB
---------- ----------------
1 1231243242
2 33245235
可見,數據查看是明文,因為這個時候,加密錢夾已經打開,數據可以解密。
這時,停止資料庫,再打開:
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> SQL> startup
ORACLE instance started.
Total System Global Area 524288000 bytes
Fixed Size 1979968 bytes
Variable Size 138414528 bytes
Database Buffers 377487360 bytes
Redo Buffers 6406144 bytes
Database mounted.
Database opened.
SQL> select * from dodd.test;
select * from dodd.test
*
ERROR at line 1:
ORA-28365: wallet is not open
SQL> select id from dodd.test;
ID
----------
1
2
可以看到,因為資料庫重啟後,加密錢夾處於關閉狀態,這時只要查詢到加密的列,會提示加密錢夾沒有打開。
如果用戶想打開錢夾,必須具有alter system許可權。
下面打開wallet:
SQL> conn / as sysdba
Connected.
SQL> alter system set wallet open identified by "welcome1";
System altered.
SQL> conn dodd/dodd123
Connected.
SQL> select * from test;
ID CREDIT_CARD_NUMB
---------- ----------------
1 1231243242
2 33245235
可以看到,加密錢夾打開後,數據可以被解密。
還有一條:sys用戶的表不能被加密。
可見:Oracle TDE是在數據層面上對表裡的數據加密,而且不會影響資料庫現有的許可權控制策略。
salt實際上就是在加密過程中引入一個隨機性。簡單的說,就是一般來說,同樣的明文產生同樣的密文,這樣就導致容易被解密者通過分析詞頻之類的方式(加解密我不太懂)來通過密文破解明文,如果指定salt,那麼即使同樣的明文加密後的密文也是不一樣的。
no salt的話,自然就是相同的明文會產生相同的密文了。對於索引來說,要求no salt也就可以理解了
丟失ewallet加密錢夾的話,是不能再解密數據的。
Oracle 10gR2的 TDE 特性,對於防止機密信息的泄漏能起到事半功倍的作用!