TWI234379B - Intelligent use of user data to pre-emptively prevent execution of a query violating access controls - Google Patents

Intelligent use of user data to pre-emptively prevent execution of a query violating access controls Download PDF

Info

Publication number
TWI234379B
TWI234379B TW092120019A TW92120019A TWI234379B TW I234379 B TWI234379 B TW I234379B TW 092120019 A TW092120019 A TW 092120019A TW 92120019 A TW92120019 A TW 92120019A TW I234379 B TWI234379 B TW I234379B
Authority
TW
Taiwan
Prior art keywords
security
query
data
user
value
Prior art date
Application number
TW092120019A
Other languages
English (en)
Other versions
TW200406113A (en
Inventor
Richard D Dettinger
Richard J Stevens
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Publication of TW200406113A publication Critical patent/TW200406113A/zh
Application granted granted Critical
Publication of TWI234379B publication Critical patent/TWI234379B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Description

1234379 玖、發明說明: 【發明所屬之技術領域】 本發明概言之相關於資料處理,尤指 式’其與實體呈現資料之特定方法無關。 【先前技術】 資料庫係供運算資訊儲存和擷取的系叙 管理系統為「電腦資料庫管理系統(DBMs) 之技術以儲存和擷取資料。製表資料庫係資 型式,它被制定為可以以數種不同方法重組 若不考慮特殊的架構,在一 DBMS中, 如,一應用或該操作系統)籍由發出一資料存 要求存取一特定資料庫。此類請求可能包括 目錄查詢請求或交易(transacti〇n),和綜合菊 以操作讀#、修改和增加特定記錄於資料庫 達成係使用高階查詢語言,例如,結構化查 舉例來說,SQL係用作互動式查詢,供自資 和更新資料庫,諸如國際商業機器(ibm)的 SQL Server和來自甲骨文、赛貝斯和组合國 庫產品。本術語「查詢(query)」意指一系列 自一儲存資料庫擷取資才斗。查詢以指令語言 其使程式設計人員和程式能選擇、插入、更 的位置以及諸如此類者。 資料庫内容的一個重要議題是安全性。 存取資料之方 * °相關之資料 」’其使用相關 料庫之最流行 和存取。 一請求實體(例 取存取請求以 ,例如,簡單 暇型交易,其用 。此類請求之 詢語言(SQL)。 料庫獲取資料 DB2、微軟的 際電腦的資料 指令,其用以 之型態出現, 新、找出資料 資料庫經常包 3 1234379 各而要一疋程度之女全機制保護的秘密或敏感資料,以避 免遭人隨意存取。例如,一般認為醫療記錄是專屬個人且 高度私密的資料。因此,典型僅特定使用者可存取醫療記 錄。為了這個目的,傳統資料庫管理系統可能執行—個設 有權限層級的使用者檔案。使用者是否可以存取某種特定 資料,將取決於各自檔案中所設定的使用者權限層級。 然而,上述方法極缺乏彈性亦非常固定。另一方面, 資料係高度動態的(例如,隨時變化)^結果,施加於傳統 資料庫的使用者安全機制可能或不能適用於這個使用者試 圖存取的資料。例如,對試圖存取HIV檢驗結果的使用者 而吕可能有個需求’需要只在一使用者具有做過HIV檢驗 的醫療記錄時(不論檢驗結果為何,確定或否定),阻止該 使用者存取HIV檢驗結果。如果在第一次意圖存取期間, 使用者的醫療記錄顯示他沒有做過HIV檢驗,則允許該使 用者查詢HIV的醫療記錄之測試結果。如果該相同的使用 者其後在使用者的醫療記錄中顯示曾做過HIV檢驗,則不 允許他爾後存取HIV檢驗的結果。換言之,需要只在使用 者具有HIV檢驗為陽性的醫療記錄時,阻止該使用者存取 HIV檢驗結果。但不論哪一種情況,傳統資料庫管理系統 均不允許此種層級性彈性。 因此,亟需改進資料庫之安全機制。 【發明内容】 本發明大致係關於建構資料庫安全機制的一種方法、 4 1234379 糸統和物件。 本發明之實施例提供一個相關於資料安全機制的方 法。該方法包括接收由使用者向資料庫發出的查詢,其中 該查詢係以至少一個攔位和相關於該至少一個攔位之設定 值所設定;和以該至少一個攔位所設定之使用者資料之存 在與否,決定是否啟動對該至少一個攔位所設定之使用者 的安全性規則。 另一個對資料提供安全機制的方法包括產生至少一個 女全性列表以顯示多個攔位之每一個,其存在給定之使用 者的資料,又其中多個欄位之每一欄位對給定之使用者已 定義了安全性規則;接收由使用者向資料庫發出之查詢, 其中該查詢係以至少一個攔位和一相關於該至少一個欄位 之叹疋值所設定;存取至少一個上述安全性列表以決定是 否該查珣之至少一個攔位顯示於該至少一個安全性列表; 和如果該查詢之至少一個攔位顯示於該至少一個安全性列 表’則施加安全性規則。 在另一個實施例中,一種對具有特定實體資料表示的 貝料提供安全機制之方法,包含提供一查詢設定,其包含 多個邏輯爛位以定義摘要查尋;提供將多個邏輯襴位對應 至資料的實體個體之規則;接收一個由使用者向資料庫發 摘要查”句,其中該摘要查詢係根據查詢設定所定義並 籍由至 個邏輯攔位和相關於該至少一個邏輯欄位之 叹疋值來设定;和根據該至少一個邏輯欄位所設定之使用 資料存在與否來決定是否啟動該至少一個邏輯棚位所 5 1234379 用者的安 另一個實 體,其中 用者向資 位和相關 少一個邏 否啟動該 〇 另一個實 體,其中 用者向資 少一個安 攔位之每 使用者之 出之查詢 一個攔位 否該查詢 ,和是否 性列表, 另一實施 訊,該資 棚位的查 應至資料 安全性規 設定之使 尚有 可讀取媒 擷取由使 少一個攔 根據該至 來決定是 全性規則 尚有 可讀取媒 擷取由使 含產生至 否之多個 有對給定 資料庫發 於該至少 以決定是 全性列表 一個安全 尚有 其中之資 多個邏輯 輯攔位對 用者專屬 全性規則 施例提供 在執行時 料庫發出 於該至少 輯攔位所 至少一個 施例提供 在執行時 料庫發出 性性列表 一個,又 安全性規 ’其中該 之設定值 的至少一 查詢的該 並實施該 例提供一 料包含一 詢設定; 之實體個 則;一可 一包含安 所執行之 的查詢, 一個攔位 設定之使 邏輯欄位 一包含安 所執行之 的查詢。 以顯示指 其中多個 則;接收 查詢係以 ;存取該 個攔位係 至少一個 安全性規 電腦可讀 含有多個 多個對應 體;供多 執行之執 全性驗證 安全性驗 又其中該 之設定值 用者之資 所設定之 全性驗證 安全性驗 該安全性 示使用者 攔位之每 一由給定 至少一個 至少一個 顯示於該 攔位係顯 則。 取媒體, 用以設定 規則,用 個邏輯攔 行期元件 指令之電 證操作包 查詢係由 所設定; 料存在與 使用者的 指令之電 證操作包 驗證操作 資料存在 一個被定 之使用者 攔位和相 安全性列 至少一個 示於該至 包含儲存 摘要查詢 以將多個 位之多個 ,用以執 腦 含 至 和 否 安 腦 含 包 與 義 向 關 表 安 少 於 之 邏 使 行 1234379 一安全性驗證操作,回應所接收的由使用者對資料發出之 摘要查詢,其中該摘要查詢係根據查詢設定所定義,並以 至少一個邏輯欄位和相關於該至少一個邏輯攔位之設定值 所設定。該安全性驗證操作包含以專屬於至少一個邏輯欄 位使用者的資料為基礎,決定是否必須啟動專屬於至少一 個邏輯攔位使用者的安全性規則。 【實施方式】 介紹 本發明大致關於用以建構資料存取限制的一種系統、 方法和物件。資料存取係依據查詢所請求的資料和發出查 詢之使用者間的關聯進行限制。 在一實施例中,安全性規則被部署為資料邏輯之部 份。該邏輯模組被部署為一資料儲存摘要層,其提供基礎 資料儲存器之邏輯示圖。如此一來,資料即與其實體呈現 之特定方法無關。一查詢摘要層亦被提供並且以該資料儲 存摘要層為基礎。一執行期元件解譯摘要查詢為相對於一 特定實體資料表示之可用型式。 本發明一實施例被部署為以電腦系統使用之程式產 品,例如,第1圖所示和下文將提及之電腦系統。該程式 產品之程式定義本實施例(包括其中所述之方法)之功能, 並可包含於各式訊號承載媒體。示例性的訊號承載媒體包 括但不侷限於(i)永久儲存於不可寫入之儲存媒體之資料 (例如,電腦中之唯讀記憶體裝置,諸如為光碟機所讀取之 7 1234379 唯讀的CD-ROM光碟);(ii)儲存於可寫入儲存媒體(例如, 孝人碟機中之軟碟或硬碟機)之可變資訊;(iii)經由傳輸媒體 (例如經由一電腦或一電話網路,包括無線通訊)傳送至電 腦之資訊。實施例之後者尤指包括自網際網路或其他網路 下載之資訊。此類訊號承載媒體在傳送使本發明之功能發 生作用之電腦可讀取指令時,呈現本發明之實施例。 概言之,用以部署本發明實施例之副程式可以為一操 作系統或一特定應用之部份、元件、程式、模組、物件或 一系列指令。本發明典型的軟體係由多個指令所組成,又 其將由原電腦解譯為電腦可讀取型式和可執行之指令。並 且,程式為位於程式或可見於記憶體或儲存設備之變數和 資料結構所組成。此外,可以用部署於本發明特定實施例 之應用為基礎來辨別各式敘述於其後之程式。然而,請注 意任何其後被使用之特定專有名詞只為方便起見,因此, 本發明不限於使用任何此類專有名詞所標識或指定之特定 應用。 環请之實體圖示 第1圖為本發明實施例可部署之網路系統1〇〇的方塊 囷。概言之,該網路系統100包括—客戶端(例如,使用者 的)電腦1〇2(圖示三個此類之客戶端電腦)和至少一個祠服 器1〇4(—個此類祠服器104)。該客戶端電腦1〇2和該伺服 器電腦104可以籍由一網路126相連。概言之,該網路126 可以為一區域網路(LAN)和/或一廣域網路(WAN)。在一特 1234379 憶體112為一星 鲁辨,>^71- 、I |體,仍可了解該記憶體112事實上可 :::::個模組’而該記憶冑112可以存在於多個層次, …的登錄器和快取至低速度但較大之DRAM晶片。 舉一不例,記憶體112包含一操作系統124。有助於 實施本發月之示例性操作系統包+ Linux和微軟視窗。一 般而言,任何支援本文所述功能之操作系統皆可使用。 圖示之5己憶體Π2亦包含一瀏覽器程式122,當其於 UH〇上執行時,提供在各式祠服器1〇4間劉覽之支援 和找出一或多個該類伺服器1〇4之網路位址。在一實施例 中,劉覽器程式122包含一以,網頁為基礎之圖形化使用者 ”面(GUI),其允許使用者顯示超文字標記語言資 訊。更一般地說,然而該瀏覽器程式122可以是任何程式 (以圖形化使用者介面為基礎者尤佳),其能夠提供自伺服 器電腦104傳出之資訊。 祠服器電腦1 04實際上可用與客戶端電腦i 〇2相似的 方法安排。因此,圖示之伺服器丨〇4 一般而言包含一 CPU130、一記憶體in和一儲存裝置134,並經由一匯流 排136連接至另一個伺服器。記憶體132可以是一隨機存 取記憶體,其具有充份容量以容納位於伺服器電腦1 〇4之 必要程式和資料結構。 祠服器電腦1 04通常為位於圖示之記憶體丨32内之一 操作系統138所控制。操作系統138之例子包括IBM OS/400、UNIX、Microsoft Windows 和其他相者。更一般 地來說’任何支援本文所述功能之操作系統皆可使用。 1234379 記憶體1 3 2更包含一或多個應用1 4 0和一摘要查詢介 面146。該應用140和該摘要查詢介面146為軟體產品, 其包含各種時候中多個存在於電腦系統1 〇 〇的各式記憶體 和儲存設備之指令。當在伺服器1〇4中為一或多個處理器 所讀取或執行時,應用14〇和摘要查詢介面ι46促使 電腦系統1 00完成執行步驟或本發明各式態樣的實施元件 所需之步驟。應用14〇(和更一般地來說,任何請求實體, 包括操作系統1 3 8和在最高層次 π 'ΓΤ年… 如’資料庫l56fl56N,如圖示供參考用之資料庫I%之 集合)發出查詢。說明如下,圖示之資料庫156可以為儲存 器I34中之資料管理系統(DBMS)的一部份。資料庫= 表任何資料庫之集合。舉一示例,資料庫i56可以關 聯性綱要(schema,可為SQL·所查詢)戍根墟 所椹& &工 次根據一 XML綱要 斤構成…,本發明並不揭限於特定之綱 :知的綱要延伸型態。在本文中所用 = 資料的菜、網要」通知 查詢内容142以定義,其為每一 旬係根據應用 “。所發出…^ 應用140所包含。由應用 所發出之查珣可以預先定義( 140之部份、弋可、,达7 ’寫定以作為應用 之邛伤)或可以為了回應輸入( 生。不論何種情況,該查詢(本文:吏用者輸入)而產 係利用由摘要査詢介面146 2「摘要查詢」) 仃尤其疋,用於摘要查詢之邏輯 風巩 1 46之資料儲;^ ^ i ^ 係由摘要查詢介面 貝計儲存摘要兀件1 4 8所定差 我。該摘要查詢係籍由 1234379 執行期元件15 0所_ & ^ , ^ ^
轨仃,其首先轉換該摘要查詢為 A DBMS 154所包含資料的實體表示之型式。 ^ 在一實施例中’資料儲存摘要元件148係以安全眘 162來設定。該安全眘4 ^ ^ 貫 全貝訊162 —般包含安全性規則,其定 義一使用者或使用者們的存取權限以選擇資料。執行期元 件150操作並實施安全資訊162,其根據為特定使用者發 出查肩和特疋資料至該查詢所能執行之存取/回覆。一般而
p女全|±規則可以針對特定使用者、一群使用者或全部 使用者來疋義。不論—由田®太曰士* Aa 个Μ 使用者是否具有與一或多個其他使 用者之關聯,皆被定義於檔案158。因此,一檔案US可 以為每一個意圖存取資料庫156之使用者而存在。 在-實施例中,一使用者籍由一圖形化使用者介面 (GUI)以設定-查詢之元件。該等Gm之内容係由應用⑷
所產生。在-特殊實施例中,該Gm内容為超文字標記語 言(HTML)内容,其可以在客戶端電腦系統1 02上以潘\覽器° 程式122提供。因&,記憶體132包含一超文字傳輸通訊 協定(http)伺服器程序152(例如,一網頁伺服器),其適用 於來自客戶端電腦1〇2的服務請求。例如,伺服器程序152 可以回應存取資料庫丨56之請求,示例性之該伺服器程序 係位於词服器1 04。客戶端傳送過來對來自資料庫〗5 6的 資料的請求啟動一應用14〇。當處理器13〇執行時,該應 用140促使祠服器電腦ι〇4執行本發明之各式態樣實施之 步驟或元件,包括存取資料庫156。在一實施例中,該應 用140包含^個飼服小程式(serviets),其經設定以建構由 12 1234379 劉覽器程式122所提供之gui元件。 第1圖僅是針對網路客戶端電腦1〇2和饲服 104所做之硬體/軟體今 w又疋。本發明之實施例可應用於任一 相容之硬體設定,不管雷θ 个s電驷糸統是否是複雜的、多使用者 計算設備、單一使用者工祚 作站或自身不具有非揮發性儲存 器之網路應用。尤有甚者,我 ^ ^ 软們知道,當提及特定之標記 語言(包括HTML)時,太恭谷 尽發明並不侷限於特定語言、標準
或版本。因此,熟知此:妯你土攸a , 項技術者將確認本發明亦適用於其 他標記語言和非標記語言,巾本發明亦適用於一特定的標 記語言在未來之變化和其他目前未知的語言。同樣地,如 第1圖所示之http伺服器程序152只是示例性之說明,而 其他適於支援任何已知和未知通訊協定之實施例是有考慮 在内的。 環境之邏輯/執行期圖壬 第2A-2B圖所示為本發明元件之示例性關係示圖 200。請求實體(例如,應用14〇中的一個)發出一個如請求 實體個別的應用查詢内容142所定義之查詢202。所得之 查珣202在本文中通常意指為「摘要查詢」因為該查詢之 構成係根據摘要(例如,邏輯)攔位,而非根據在DBMS 154 中基礎的實體資料實體。結果,摘要查詢可以定義為與特 定的基礎資料表示無關。在一實施例中,應用查詢内容工42 可以包括選擇資料的標準(選擇標準204)和以該選擇標準 2 04為基礎所回應之攔位詳細内容。 13 1234379 下表所示為一符合第2B圖圖示之摘要查詢202的示 例性摘要查詢。在示例中,摘要查詢202係以XML定義。 然而,任何有助於實施本發明之語言皆可使用。 表I -查詢示例 001 <?xml J0^> 002 <!^uet^ AND =
Cm OR ^ate «*NC^
G04 <Cki@ryAb^tmcion> 005 <Setecfi_> 006 <Ooi幽ion fntemalll>s_4·》 007 <Gonditiort field=MRr^Narmw opefate^EGf vaJue^Mary18 008 intemallDtepl7> 009 <Condi!ion fields^LastName" ορ«ΐΒ*αι^Έα^ vaiiie^al^0〇fi,1 010 011 012 ^_ion 酬〆細轉爾 Q 峰 tar^EQ'vafcias 警 013 _ΙΟρβ_οι^··ΡΓχ/Οοιι·〇η> 014 </SBleGlmm 015 <R(^M:s> 016 <Ρί©Μ name^FirB觀3 賺1V> 017 <R®W narne;wla域 Name% ㈣ 《陶Id name^State1^ 019 </Rasults>
舉一示例,如表I所示之摘要查詢包含一選擇内容(行 005-014),其包含選擇標準和一結果内容(行015-019)。在 一實施例中,一選擇標準由一(邏輯攔位的)欄位名稱、一 比較運算子(=、>、<等)和一數值表示(上述攔位所要比較 的對象)所組成。在一實施例中,結果内容係一摘要攔位之 清單,其欲回傳以作為查詢執行之結果。在摘要查詢中之 一結果内容可以由攔位名稱和排序標準組成。 經由應用查詢内容142設定,並用以構成摘要查詢202 14 1234379 之邏輯攔位係由資料儲存摘要元件148定義。概言之,資 料餘存摘要元件148以一系列可以用於應用14〇(其可以是 回應使用者輸入的查詢條件)所發出的查詢(例如,摘要查 询2 02)之内的邏輯欄位來顯示資訊,用以設定選擇資料之 標準和設定自查詢操作回傳之結果資料的型態。邏輯攔位 之定義無關於用於DBMS 154之基礎資料表示。因此,允 許產生與基礎資料表示的關聯不甚密切之查詢。
一般而言’資料儲存摘要元件丨48包含多個欄位内容 208!、20 82、…(如圖示之兩者),該集合通稱為攔位内容 2〇8。尤其是’一搁位内容被提供予每一能夠構成摘要内容 的邏輯欄位。在一實施例中,一攔位内容2〇8包含一邏輯 攔位名稱210!,21〇2(通稱為欄位名稱21〇)。在一示例性 實施例中,攔位内容208亦包含一或多個類別名稱216ι, 2 1 62 (通稱為類別名稱216)。該類別名稱相關於一組邏輯 欄位名稱。例如,在第2B圖中,攔位内容2〇8ι和2〇82設 定了一個人口統計類別2l6l和一個個人類別216”然而,
類別的使用只是代表-個特定的實施例,巾其他的實施例 並未使用類別。 〜 厂仔取方法 使邏輯欄位名稱關聯於(例如,對應於)一特定的實趙 表示2141、2142…214ν。舉—示例,如第2Α囷所示 個資料表示,一個XML·資料表 .^ ’、 衣不2141和一個相關的 表示214Z。此外,實體資料表示214n意指任何其他 料表示不論已知或未知皆為本發明所思及。 ' 15 1234379 在 位内容 另一替 被提供 中,提 存摘要 包含一 用者可 其中顯 存摘要
1施例巾’ H料館存摘要元件148包含棚 (和相關的存取方法)供二或多個實體表示214。在 代性的實施例中,一相異的資料儲存摘要元件148 給每一個個別的實體資料表示214。在另一實施例 供了多個資料儲存摘要元件148,其中每一資料儲 件148顯示相同基礎實體資料的不同部份(其可以 或多個實體資料表示214)。在這個方法中,多個使 同時利用單一一個應用14〇存取相同的基礎資料, 示予應用之基礎資料的特定部份係由各別的資料儲 元件1 4 8所決定。
依據欲支援的不同型態的邏輯攔位的數目,任何數量 之存取方法皆為本發明所思及。在一實施例中,提供了健 存簡單的攔位、過濾的攔位和組合式攔位之方法。以棚位 内容208ι和2082分別示範簡單橱位存取方法2ΐ2ι和 2 1 22。簡單欄位直接對應至在基礎實體資料表示(例如,一 欄位對應至一給定的資料表和行列)之一特定實體。舉一示 例,如第2B圖所示之簡單攔位存取方法212l將邏輯棚位 名稱21〇ι(姓)對應至名為「聯絡薄」之表格上的行列名稱 「f-name」。過濾的攔位(第2圖未顯示)辨別相關的實發實 體和在實體資料表示中提供用以定義實體的一特定子集合 之規則。過濾的攔位之一例為New York ZIP碼攔位,其對 應至郵遞區碼(ZIP)的實體表示和限制資料為只有定義為 New York州的碼。組合式存取方法(第2圖未顯示)自 一或多個實體攔位利用一供作存取方法定義之部份的表示 16 1234379 算一個邏輯欄位。在這方法中’亦可能計算不存在 價:攔f料表示之資訊。以營業稅欄位為Μ,其係由销售 價格棚位乘以營業稅稅率所構成。 本發明亦思及基礎資料之任何給定的 (例如’日期、十進位數字等)可能會變化…, 施例中,攔位内容208包含-型態屬A,其顯示基礎資料 之格式1而’在另-實施例中,欄值内$2()8的資料 式異於相關的基礎實體資料,該例中,—存取方法係用以 以睛未實體所欲之適當格式回應資料。因&,存取方法必 須了解所欲之資料格式(例如,根據邏輯攔位)以及基礎實 體資料的真實格式。該存取方法可以轉換基礎實體資料為 邏輯攔位的格式。 舉一示例,如第2A圖和第2B圖所示之資料儲存摘要 元件m之棚位内$謂代表邏輯攔位,其對應至在相關 資料表7F 2142中出現的資料n,資料儲存摘要元件 8之他例冑輯攔⑯對應至其他實冑資料纟示,諸如 XML 〇 在實施例中,以上文中參考第1圖簡述之安全性資 訊162設定一或多個棚位内容2.在示例性之實施例中, 類別定義和欄位定義皆具有相關之安全性資訊162。然 :應了解並非所有類別定義和所有糊位定義都需要包含 女全|±資tfl ϋ為在兩個或多個邏輯攔位間,類別定義了 關聯性,而屬於相同類別之货 丨J類別之邏輯攔位繼承了相同的類別安 全性資訊°例如’攔位内容如丨和2G82分別屬於人口統 17 1234379 計類別2 1 6 !和個人類別2 1 62,並因此各自繼承了安全性資 訊 162ι 和 1622。 安全性資訊162之額外的態樣可參考表II,其圖示符 合第2B圖所示之資料儲存摘要元件1 48之一個示例性的 資料儲存摘要元件。舉一示例,利用 XML可定義資料儲 存摘要 148。然而,任何其他有助於實施本發明之語言皆 可使用。
表II-資料儲存摘要示例 〇〇1 嘯 ㈤2 vwsior^l, 003 xmlns:xsi«w_://www,眺 wgSOO1/XMLS0hema4iislanca· 004 xsi:noNafnesp_SchemaLocation^DalaAbstractidfixscf> 005 006 «Category narne-Tersone> 007
008 <Secui% types'VaJyeS 009 <SaciurftyRyle> 010 <User>Ail</User> s 011 <Actlon> NoRufiArtdLog</Acfion> 012 </SecyrityRuIe> 013 </Security>
014 015 <Field mme^Firsi Hamen> 016 <AccessMethod> 017 <Sinripte attrfslairs8==wFNAMEw er^tyNarria^PERSQ 撕 NFCT /> 018 </AccassMeth〇(jb 019 <Type baseType-^chaf^x/Type> 020 </Field> 021 022 〈Field nairo="Last Nam©% 023 <AccassMethod> 024 必哪 le at 論 m 於enti卵 ame^I^RSONlNFCy1 /> 025 </AccessMBthod> 026 <Type baseTypes,,char,,><rrype> 027 <Seeufity type^value'^ 028 <SeouriiyRule> 029 <Usef>AII</User> 030 <Actton> RurtAndLog</jtetion> 031 </SecyrityRyle> 18 1234379 032 <SacurityRuIe> 033 <Usar> securityOffioars </User> 034 <Adion> RunAndLog 035 </S0〇irityRule> 036 <SecufityRule> 037 <Usar> <iUmt> 038 <Action> IteAction </Action> 039 </SecyrityRyla> 040 041 042 043
044 «Category 045 name«tt_V Test· > <AcoessMettio<i> <&鄉1眘 a酬扭Tie^RESULTS* 修rrtity胞麵a^TTESTS11 /> </AccessMethod> 046 047 048 049 <Typ€ baseType=;*charll></Typt> 050 <Seoirity type=,lac0ess,e> 051 <SacurityRurle> 052 <User>AIWUser> 053 <Aclion> RynAndLog</ftction> 054 </SecurityRute> _5 <SecurityRute> 056 <User> securilyOffioefs </Usei> 057 <Action> l%nAndlx^ </AgHoh> 058 </SecuriiyRute> 059 <Sec4irityRule> 060 <Umr> fttery_Mc^3oon </User> 061 <Action> LogAndDoNcrtRun </Aclian>
062 </S^curityRule> 063 </SecuTity> 064 </Fie!d> 065 </Category> 066</DataRepositoiy> 由表II可知,相關於每一類別定義和欄位定義的安全 性資訊通常包含一安全性型態和一安全性規則。該安全性 規則設定了規則所應用之使用者或使用者們並在啟動規則 時,採取特定之動作。示例性的動作包括防止執行查詢和 登入之所欲到的地方、執行查詢和登入所執行動作或不採 19 1234379 取任何動作。當然,亦可思及其他的動作。 在一實施例中,安全性型態可以是一「值型態」、一「存 取型態」或兩者皆包含。在本例中,「姓」欄位定義顯示一 值型態安全性而「HIV檢驗」攔位則定義了存取型態的安 全性。如本文所定義,一 專屬資訊和一特定攔位值(攔位值之示例包括Mary、 McGoon、im Easy Street)限制了存取。相較之下,存取 型態之安全性規則以一使用者和一攔位型態限制了任何存 取,而不管攔位值(欄位型態之示例包括姓、名和住址)為 何。為舉例說明,考慮_「姓」攔位。假設欲防止使用者 存取他們擁有的姓但不包括任何其他的姓。本例中,一值 型態安全性規則實施於所有使用者的「姓」欄位,如表Η 之示例性的資料儲存摘要所為(見第〇28_〇31行)。籍由此 方法以增加安全性資訊,當一使用者意圖存取「姓」攔位 時,執行期元件150知道(在執行期)必須部署一預設之安 全性運算1 5 1 (第1圖)。執行期元件之各式態樣將詳述於 後0 H1檢驗」攔位之示例時,因為給定了 在考慮一 度敏感的資訊於該欄位,所以需要防止特定的使用者存金 全部的攔位。例如,可能需要防止本身為HIV陽性的使用 者存取「HIV檢驗」攔位。在這種狀況下,安全性資訊包 括一存取型態安全性限制。(見第〇45-〇64行)。在執行期 期間,執行期元件的安全性運算151判定是否意圖存取該 「HIV檢驗」欄位之使用者是否受限而無法遂行意圖,或 20 1234379 更常見的’是否該採取一些安全性動作(根據是否 為HIV陽性因此,對一存取型態限制而言,在 的「HIV檢驗」攔位之特定值是違規的。 月、、 如表π邏輯攔位「姓」所示(第〇22_〇41行),供蛉* 的攔位/類別定義之用的安全性資訊可能包括一個以'二= 文全性規則。尤其1,可提供相異之安全性規則而不同類 別的使用者。邏輯攔位「姓」之定義描述了所有使者第一 女全性規則,第二安全性規則描述的是群組使用者,而第 二安全性規則描述的是單一使用者。在一實施例中,一最 佳運算(可以是應用140(第1圖)之部份)被用以決定設定哪 些限制於一特定之使用者類別。例如,如果使用者 Mary —McGoon試圖去存取欄位「姓」,則使用Mary—McG〇〇n 的使用者檔案的規則。忽略「全部」使用者和「安全人員」 的規則,因為已經找到了更精確的規則内容。(例如,專屬 於使用者Mary—McGoon的安全性規則)。 然而,在一實施例中,由最佳運算所決定的規則可能 被覆寫。如表II所示,資料儲存摘要元件ι48可能具有一 階層樹狀架構。在表II之示例性之資料儲存摘要中,表示 之最高節點為人口統計類別。次高之節點為個人類別,其 為子實體並具有「名」欄位和「姓」欄位。因此,在一實 施例中,最嚴格的規則為相關於階層樹之最高節點的規 則。在本例中’最嚴格的規則為相關於人口統計類別的安 全性資訊的規則。因此,專屬於使用者Mary—McGoon的 安全性規則可能為人口統計類別的規則所覆寫。 21 1234379 今參考第3圖,所+ + ^ ^ 所不之一方法300闡述一初始化 的載入和應用140的择你 町嫖作。在應用140初始化後進入 法(例如,由一營理去、+ 藏方 一⑴如* s理者)。在步驟3。2中,_資料 疋件被載入/擷取。在_實施例中,"具有多個資料 摘要元件,應用140定義了欲擁取的資料 在步驟304中,對資料儲在楠並-跛认益 疋件。 貝针儲存摘要兀件的每一樹狀結構開挺 了一個迴圈。在步驟3〇6中, 了 ° T確_了樹狀結構的最嚴袼胡
則。該動作係籍由自最底層節點至最高節點唤醒 樹,並確認了最高的節點具有一個相關的安全性規則。— 旦最嚴格的規㈣確認了,應用14Q決定是否則 取型態(步驟308)。如果為真,在+敢』為存 戈果為真,在步驟31〇中,相關於該 J之攔位破置於使用者專屬的存取型態安全清單312。 而後方法300回到步冑3〇4以開始資料儲存摘要元件中的 下一個樹狀結構的程序。
复如果步驟308獲得否定的回應,程序進行至步驟314, 其中方法300決定是否該規則為值型態規則。如果為真, 在步驟316中,相關於該規則的該欄位被置於一使用者專 屬的值型態安全清單31卜而後方法3〇〇回至步驟3〇4至 開始開始資料儲存摘要元件中的下一個樹狀結構的程序。 如果步驟3 14獲得否定的回應,程序進行至步驟32〇, 其中相關於該規則的攔位被置於適當的安全性清單。步驟 320表示方法300所擴充的其他型態的安全性規則。而後 方法300回到步驟3〇4以開始資料儲存摘要元件中的下一 個樹狀結構的程序。 22 1234379 個 求 方法300持續進行直至在資料 樹狀結構皆被處理過。而後應用 儲存摘要元件中的每一 14〇準備好開始捿受請 第4圖為登入驗證方法4〇
400之一實施例,其為應用14C 的登入驗證運算160所執行。當每一 田母一人使用者簽入使用應 用!40時,執行登入驗證方法彻。在步称4〇2令登入 驗證運算接收存取型態安全性清單312以供使用者簽 入之用。在步驟404中,駱蛾+, Λ
Τ驗證方法400為安全性清單312 的每一個攔位初始化了 一迪鼦 .^ J 以圈。在步驟406中,驗證運算 1 6 0在使用者資料(例如,A咨 貝τ叶u夕J如在資料庫156的實體資料)的對 應棚位中檢查實體(例如,营+ _ s λ 只瓶U〜如對應至安全性清單已處理過攔位 的棚位)。如果未發現對靡的參 丁應的實體(步驟408),被處理的攔 位自安全性清單312移除。 被移除的攔位將不用作安全 在這個方法中,在執行期期間 &用途。如果發現了對應的欄 位(步驟40 8) ’則沒有任何特別的動作發生,而程序回到 =驟開始處理安全性料312的下―個欄位…旦 女全性清單3丨2的每—個攔位皆已處理完畢,則登入驗證 方法400進行步驟412。 在步驟412中’獲得了供使用者簽入之用的值型態安 陡β單318。在步驟414進入為安全性清單之每一個欄 斤執行的迴圈。在步驟416中,驗證運算在使用者 資料(例如,在資料庫1 5 6的實體資料)的對應欄位(例如, 對應至安全性清單已處理過欄位的攔位)檢查一實體。如果 發現對應的欄位,貝已處理過的攔位自安全性列纟3 1 8被 23 1234379 二°否則(例如,如果在步驟418發現—實體)對應至使 ^專屬實體的數值被供以值型態安全性清單318(或儲 =在—些其他的安全性資料結構)。上述任一種情況下程 ^會回到步驟414。當安全性清單318的每—欄位皆已 :理’則離開登入驗證運運160,而該使用者 開始發送查詢。 |j w 第5圖圖示一示例性的執行期方法5〇〇,其例示執行 樣二操作實施例。…,執行期方法5。°之態 :藉“全性運算151(第i圖)來部署。方法5〇〇開 :實步驟502’當執行期元件15〇接收了摘要查詢所輸入 =例時(例如,帛2A圖和第2B園所示之摘要查詢2〇2)。 並:504中,執行期元件15〇讀取並分離摘要查詢之實 並確定了個別的選擇標準和所欲 5〇6中,π U攔位。在步驟 查二 牛150進入一迴圈用以處理出現於摘要 句的每一個查詢選擇標準敘述, 的資料^ # ^立—「具體查詢」 貢枓選擇部份。在一實施例中,一 名稱(徂、路祐w 選擇私準包含一攔位 值表^ 之用)、一比較運算子(=,>,<,等等)和一數 件:::…對象)。在步驟5。",執行期元 存鵪要14"摘要查”旬的選擇標準之欄位名稱在資料儲 要I48找尋攔位内容。如上所述,該 存取方法之定I其用以存取相關”攔:谷包括一 此外,該攔位容可能包括安全性資二實體資料。 元件150判定所擷取的查詢攔位内容 A,執行期 者(例如,發出查詢的使用者)的安::規:於特定使用 女全性規則(步驟510)。亦 24 1234379 離~執仃期70件1 50參照存取型態安全性清單3 12和值型 恶安全性、、主留Q 。 屮招 ^ 以決定符合該攔位内容的欄位名稱是否 。士 D 田 * 則, 壬一清單上都找不到該欄位内容的安全性規 執一 ^進仃至步騍5丨6。如果一安全性規則的確存在則 動 _件1 5 〇判疋是否必須採取一規則中設定的安全性 5 ,驟5 1 2)。在限制存取型態的情況下,如果在步驟 :的存取型態安全性料⑴上發現了符合攔位内容 二攔位之一個欄位實體,則必須採取-規則所設定的 =性動作,而不論攔位實體之值為何。在限制值型態的 情況下,‘里务止 ^ " 在步称510的值型態安全性清單318中,發 現攔位值符合被分析之邏輯查詢元件/標準中的邏輯棚 位值’ m採取—個由規則所設定的安全性動作。 步驟川獲得肯定的回應,則執行期元件⑸記下必 取該動作(步驟514)。而後程序進行至步驟516。、 而後執订期7C件150為已處理過之邏輯棚位建立了 — 個「具體查詢部份」(步驟516)。如本文所定義者, 「具體查詢部份」係—個個「具體查詢」的部份, 有邏輯攔位為基礎執行資料選擇。—個「具體查詢」係— 種以❹_和XQuefy之類的語言所表示之查詢並符人 實艘資料儲存的資料(例如,—相關資料庫或取儲二 庫)。因此’該「具體查詢」係用以自實體資料儲存 第1圈所示之職8為代表)找出資料的位置和擷取資料 而後’為現有攔位所產生的「具體查詢部份」被加入〜 體查詢敘述」中(步驟51R、 hk >, 、 以騍518)。方法500再回到步驟5〇6以 25 l234379 (^顿526)。其可以以一插片 法 近似於參考步驟512所述之方 兮孰仃。如果步驟526獲得肯定的回應,則 15〇 驟53〇。 任種狀况下,程序皆進行至步 在步驟530中,執行期元件 立了 ^你 為了邏輯結果攔位建 個(供確欲傳回之資料 「且科志h 的實體位置的具體查詢之) 具體查詢部份」。而後,在步 ,、骽一 被加入「具體查詢敘述」。 ,「具體查詢部份」 一旦在摘要查詢中的每一個結 行期元件150決# I 鬥各經過處理後,執 决疋疋否必須採取任何 否曾以上述之方法記錄了任何動作)(:,作(依據是 否,則在步称542執行查詢。然巾 称534)。如果為 動作,重新檢視所# ^ ^ 果必須採取安全性 饱視所圮錄之動作以決定 實施例中,每一個動你址杜— 戚袼之動作。在一 母個動作破指定了 一個數 升高則該值遞增。在步驟538 t H 纟中嚴格程度 否動作是關鍵的(例如,防止執行杳50決定是 步驟542執行查詢。—。如果為否,則在 如果動作疋闕鍵的, 而通知使用者安全祕 幻不執行查詢, I女全性違規(步驟54〇)。 請注意,上述,〜 而終止方法500。 上遮由安全性運算151 常可能在兩次中的一 執行之查詢驗證通 ^ 认现作。在一奢说A:,山 每-個查詢條件建立時發生二驗證可以在 通知給使用者。妒 法發送安全性違規的 尋找安全性限制的漏洞之使用去㈣為匕可能增加了 詢)。因此,-個替代了解(例如’増加修正查 替代度方法係在進人查詢和使用者發出查 27 1234379 詢的整個過程只執行一次查詢驗證。$法之後者亦確保了 執行期元件150在進行檢查或驗證前先獲得了一個「完整 呈現」的查詢’從而令使用者的意圖較單一條件時來得明 顯。 針對值型態限制之執行期方法5 〇 〇可以參照上文中 「姓」攔位之示例和表Π之資料儲存摘要。假設使用者為 MaryMcGoon,則一實體為了在「姓」攔任之值在 登入期間被輸入值型態安全性清單318(登入驗證方法 3〇〇)。假設現在Mary McGoon發出了 一個邏輯查詢,其在 「姓」攔位包含值McGoon,則執行期元件15〇檢查是否 存取型態安全性清單312或值型態安全性清單318(當她登 入時為了 Mary McGoon而產生)之一個包含「姓」欄位的 女全性規則(步驟5 1 0和524)。在判定值型態安全性清單 3 1 8包含一個「姓」攔位之安全性規則之後,安全性運算 151決定該規則是否需要採取動作以回應所欲之存取。本 實施例中,需要採取一個動作,因為被解析之邏輯查詢標 準包含值McGoon ’而規則係一值型態規則,用以設定使 用者Mary McGoon之動作。經由表Π的資料儲存元件所 設定之動作(而其被記錄於值型態安全性清單3丨8)為 「No Action」。如果所欲之存取的確需要動作,那麼安全性 運算1 5 1記錄下必須採取在安全性資訊〖62中所定義之動 作(步驟514和528)。 在本實施例中’當設定之使用者以一特定值發出一杳 詢時,則執行一設定的安全性動作(其中,在Mary McGoon 28 1234379 的例子中是沒動作的)。當然,習知此項技術者將了解安全 性規則邏輯亦能以「非」運算子設定。例如,如果一使用 者(例如,Mary McGoon)在查詢中輸入一些其他人的名 字,一安全性規則可以被設定為r RunAndL〇g」,但是如果 相同的使用者輸入他自己的名字或反之亦然,則採取 「No Action」。 繼續Mary McGoon的例子,假設Mary的記錄指出她 已做過HIV檢驗,則存取型態安全性清單會包含一行列供 ΗIV檢驗棚位之用(為登入驗證方法3〇〇之結果)。進一步 假設Mary發出一個參照HIV檢驗攔位之查詢。 執行期元件1 5 0檢查存取型態安全性清單3丨2或值型 態安全性清單318(當Mary McGoon登入時,為她產生的) 之一是否包含一安全性規則以供r HIV檢驗」之用(步驟 5 1 0和524)。在決定該存取型態安全性清單3丨2包含一安 全性規則供「HIV檢驗」之用後,安全性運算1 5丨必然已 決定該規則需要動作以回應所欲之存取(步驟512和 5 2 6)。這是因為對存取型態限制而言,設定於查詢中之欄 位值不正確’因此,在存取型態安全性清單3 12之HI v檢 驗攔位之存在指出一安全性規則存在並且需要實施。需要 注意的是’在本實施例之每一個中,決定一規則需要「動 作」只是決定已設定一規則而且已滿足實施規則之條件。 當然,如先前之實施例所述,該規則可能是一「不動作」 規則(見表Π,以第3 8行為例),其設定將採取「不動作」。 在本實施例中,將採取之動作為「LogAndDoNotRun」。 29 1234379 312和值白的了解’存取型態安全性清單 另-實施例:並不Γ:18只是被提供來加強表現。在 150直接存取資料按户^早312和318,而執行期元件 資枓儲存摘要元件148以驗證査詢。 516和1第6圖’圖示為方法600之-實施例,依據步驟 在牛驟,其建立供邏輯攔位之用的「具體查詢部份」。 在步驟602中,方、土 士 一詢是否相關於現有邏輯欄位之 是—個簡單存取方法。如果…,而後奠基於 實體資料位置資料和程序㈣「具體查詢部份」依照如上 所述之方法5GG持續進行。反之,程序持續進行至步驟祕 以查詢是否相關於現有邏輯攔位之存取方法係—過滤的存 取方法。:itu果是的話’則建立奠基於某些實體資料實體之 實體資料位置資訊之該「具體查詢部份」(步冑608)。在 步驟6U)中,該「具艘查詢部份」以額外邏輯(過滅選擇) 來擴充,又該額外的邏輯用於區分與實體資料實艎相關的 資料。而後,依照上述之方法500,程序繼續進行。 如果存取方法不是一個經過過濾的存取方法,程序自 步驟606進行至步驟612,其中方法600查詢是否存取方 法是一種複合式存取方法。如果該存取方法是一種複合式 存取方法,則在複合式欄位表示中,每一個子棚位之實體 資料位置在步驟614中被定位並擷取。在步驟616中,複 合式攔位表示的實體攔位位置資訊係替代複合式欄位表示 的邏輯欄位參考,籍以產生「具體查詢部份」。而後,依照 上述之方法5 00,程序持續進行。 30 1234379 如果存 6 1 2進行至 及之其他存 於所有可以 只使用了簡 單存取方法 位設定了異 料轉換。在 立一「具體 始轉換。例 或立即接續 資料格式轉 與基礎實體 上文中 表格的攔位 如,一值型 另一人的相 施例中,安 訊(自發出^ 防止一使用 設定於一應 在一實 其他「敏感 成了特定攔 取方法不是複合式存取方法,則程序自步驟 步驟618。步驟618代表任何本發明實施例所思 取方法型態。然了,應了解所思及之實施例少 實施之存取方法。例如,在一特定的實施例中, 單的存取方法,在另一實施例中,只使用了簡 和過濾的處理方法。如上所述,如果一邏輯攔 於基礎實體資料的資料格式,則有必要執行資 一實施例中,當根據方法600為一邏輯攔位建 查詢部份」時,替每一個別的存取方法執行初 如該轉換可以以步驟604、608和616之部份 匕們來執行。步驟5 42中,在查詢之後將實體 換成邏輯欄位格式。當然,如果邏輯攔位定義 資料相同,則無需轉換。 ’安全性條件之前提為在一使用者發出查詢之 和另一人之相同攔位之間建立關聯。亦即,例 態限制需要比較一使用者專屬值(例如,姓)和 同值(該使用者所欲存取者)。當然,在另一實 全性限制可以延伸為包含任何其他「敏感」資 [詢之該特定使用者的觀點)。例如,可能需要 者存取先前配偶的姓。而被限制的值/攔位可以 用140的安全性運算。 施例中,攔位關聯可以達成上述用以包含任何 」資訊的延伸安全性限制之態樣。欄位關聯促 位相關於其他攔位值的安全性。例如,「姓」棚 31 1234379 位可以關聯於一 「仕从 搣> ^ 住址」攔位,以擷取現有任何在相同住 :的其他人的名字。而&,使用者被給定的那些名字和名 字的歷史貝料可供檢查用以產生被防止存取的使用者名字 的擴充^^同其他示例,資料庫中被給定的族系資料 矛規則可以被寫入以劉覽—家族樹和建立過去N世代名字 的=清單(其中,例如,N表一整數)。尚有另一示例, 所、、Ό疋之醫生的有效病人清單(來自已備便的資料倉儲), 可由醫生施加某種程度的安全性限制於所有其他病人。 如上所述,某些安全性動作包括登入所欲之存取。更 一般地來說,熟知該項技術者將了解,當啟動一安全性規 則時’可能採取任何變化之回應。例如,可能發送一通知(例 如’電子郵件)給一系統管理者。 在前面已經知道,資料儲存摘要元件丨48只是一個實 施例的示例’它提供了各種優點。在一態樣中,其優點之 達成係籍由在應用查詢内容和基礎資料表示間定義一個鬆 散的連結。不同於以特別的表格、行列和關聯資訊來編譯 一個應用(如同SQL使用之情況),應用以較抽象的方法定 義了資料查詢需求。而後,在執行期時,該方法相關於一 個特定的實體資料表示。與本發明相關的鬆散的查詢資料 使請求實體(例如,應用)得以作用,即使基礎資料表示已 被修正或是請求實體欲與比請求實體建立時所使用者來得 新的實體資料表示一起使用。在一給定之實體資料表示被 修正或重新建構的情況下,更新符合的資料儲存摘要以反 應在基礎實體資料模組的改變。可獲得相同組合的邏輯欄 32 1234379 位以供查詢使用,並僅是相關於實體資料模組中不同的項 目或位置。結果,請求實體被寫入摘要查詢介面以持續不 變地作用,即使對應的實體資料模組遭到重大的改變。在 凊求實體欲與比請求實體建立時所使用者來得新的實體 資料# - _ , 表不一起使用的情況下,可使用相同的技術(例如,相 擇哥 、貢料)來執行新的實體資料模組,唯須遵循不同的名字 組織資訊策略(例如,不同的綱要)。新的綱要所包含的 資訊可以利用簡單、過濾和複合式攔位存取方法技術對應 至應用所請求的邏輯攔位組。替代性的方法為,新的實體 表示可以使用一替代性的技術來表示相似的資訊(例如,使 rp 以XML為基礎的資料儲存器和一相關的資料庫系統)。 在任種情況下,被寫入以使用摘要查詢介面的既存請求 實體可以輕易地改為以所提供之替代性的資料儲存摘要來 使用新的實體資料表示。又該替代性的資料儲存摘要對應 至以新的實體資料模組中的實體表示和位置參照查詢之襴 位。 對於終端使用者而言,資料儲存摘要提供一資料過濾 機制,顯示適當的資料和防止存取設定之内容。然而,應 了解資料儲存摘要只是本發明之一實施例。更一舷而言, 本發明可實施於任何根據使用者資料相依性決定執行査构 與否之方法。'亦即,查詢之執行係根據終端使用者和特定 資料間的關係’又該特定之資料係籍由查詢之執行來存取/ 傳回。 然而,應強調的是
熟知本項技術者將已了解本發明 33 1234379
或特定查詢所傳回之多個結果所參照。 茶P、、、之特疋值、定義和程式語言以及示 因此’本發明並不侷限於任何特定的示
例僅供示範之用。 範和示例。尤有甚者,當本發明之態樣提及SELeCTI〇n 操作、亦思及其他的輸入/輸出操作,包括眾所週知的操 作,諸如 ADD、MODIFY、INSERT、DELETE 和其他相類 者。當然,某些存取方法可以對摘要查詢功能之型態設下 限制,又該摘要查詢功能可以籍由採用特定存取方法之攔 位來定義。例如,相關於複合式存取方法的欄位不是 MODIFY、INSERT和DELETE可實行之目標。 當上文提及一些本發明的實施例時,亦思及本發明沒 有背離它的基本範圍和下文中申請專利範圍之其他的或改 進之實施例。 【圖式簡單說明】 為使達成上述本發明的功能之方法可以被徹底了解’ 此處參考附圖所示之實施例提供本發明更詳盡之敘述和上 34 1234379 文之簡單通論。 然而,請注意,附圖所示本發明之實施例並不能視為 對本文申請專利範圍之限制,本發明亦適用於其他等效之 實施例。 1圖為一電腦系統之一實施例; 第2A圖圖示本發明一實施例之軟體元件邏輯/結構; 第2B圖圖示一摘要查尋和一摘要之資料儲存的邏輯; 第3圖為一流程圖,其圖示一應用之初始化及操作; 第4圖為一流程圖,其圖示一使用者之登入驗證程序; 第5A圖為一流程圖,其圖示一執行期元件之操作; 第5B圖為一流程圖,其圖示一執行期元件之操作;和 第6圖為一流程圖,其圖示一執行期元件之操作。 【元件代表符號簡單說明】 100網路系統 102客戶端電腦 104伺服器 11 2記憶體 114儲存器 116輸入裝置 119輸入裝置 ' 11 8網路介面裝置 122瀏覽器程式 35 1234379 1 2 6網路 1 3 2記憶體 134儲存裝置 1 3 6匯流排 1 3 8操作系統 140應用
142應用查詢内容 146摘要查詢介面 1 4 8資料儲存摘要元件 1 5 0執行期元件 1 5 1安全性運算 152超文字傳輸通訊協定伺服器 156資料庫 158檔案 160登入驗證運算
162安全性資訊 200本發明元件之關係示圖 202摘要查詢 2 1 4 1 xml資料表示 2142相關的資料表示 214N其他的資料表示 300登入驗證方法 302獲取資料 36 1234379 3 06確認最嚴格規則 3 08是否規則為存取型態? 3 1 0將規則置於存取型態安全性清單 3 1 2存取清單 3 1 4是否規則為值型態? 3 1 6將規則置於其他的安全性清單
3 1 8值型態清單 400登入驗證方法 402接收存取型態安全性清單以供使用者之用 404為安全性清單之每一個攔位 406使用者資料的對應欄位中檢查實體 408發現實體 410自安全性清單移除攔位 4 1 2得供使用者之用的值型態安全性清單 414入為安全性清單之每一個欄位所執行的迴圈
4 1 6使用者資料的對應攔位檢查實體 418發現實體 420儲存使用者值於安全性清單 422自安全性清單移除欄位 5 00示例性的執行期方法 504讀取摘要查詢定義 506對每一查詢選擇 5 08自儲存摘要獲得查詢攔位内容 37 1234379 5 1 0是否有該欄位使用者之安全性規則? 5 1 2是否為規則所設定之動作? 5 1 4記下必須採取該動作 5 1 6建立欄位之具體查詢部份 518加入具體查詢内容 520對每一結果攔位 522自儲存摘要獲得查詢攔位内容
5 24有該欄位之使用者的安全性清單嗎? 526規則是否指定了動作? 528記錄下必須採取之動作 530為欄位建立具體查詢部份 532增加具體查詢途述 5 34是否記錄了任何安全性動作? 536決定已記錄之最嚴格動作 538是否動作是關鍵的?
540離開而不執行該查詢 542執行查詢 600 —種方法 602是簡單存取方法嗎? 6 04根據實體欄位位置建立具體查詢部份 606是過濾的存取方法嗎? 608根據實體欄位位置建立具體查詢部份 6 1 0以過濾選擇來擴充部份 38 1234379 612是複合式存取方法嗎? 614在組成中擷取攔位的實體位置 6 1 6利用實體位置和組成表示來產生部份 618其他的存取方法程序
39

Claims (1)

1234379 拾、申請專利範圍: 1. 一種對資料提供安全性之方法,包括下列步驟: 接收由一使用者向資料庫發送之查詢,其中該查詢 係以至少一個攔位和該至少一個攔位之一個相關值設 定;和
以專屬於該至少一個攔位之使用者的資料的存在與 否為基礎,決定是否必須啟動該至少一個欄位之使用者 專屬的安全性規則。 2. 如申請專利範圍第1項所述之方法,其中該查詢係一種 SQL查詢。 3. 如申請專利範圍第1項所述之方法,更包含啟動該安全 性規則之步驟;其中啟動該安全性規則之步驟包含決定 是否執行該查詢之步驟。
4. 如申請專利範圍第1項所述之方法,更包含依據專屬於 該至少一個欄位之使用者的資料存在與否以決定是否 需要啟動該安全性規則之步驟,無論專屬於該至少一個 欄位之使用者的資料之值為何。 5 ·如申請專利範圍第1項所述之方法,其中決定是否必須 啟動該安全性規則之步驟包含決定該至少一個欄位值 之相關值和專屬於該至少一個欄位之使用者的資料值 是否相符之步驟。 6.如申請專利範圍第1項所述之方法,更包含,在啟動該 安全性規則之前,決定專屬於該至少一個欄位之使用者 40 1234379 的資料存在與否。 7.如申請專利範圍第6項所述之方法,其中決定專屬於該 至少一個邏輯攔位之使用者的資料存在與否之步驟,係 在使用者登入時執行。 8 · —種對資料提供安全性之方法,包括以下步驟:
產生至少一個安全性清單以表示每一個當中存在有 給定之使用者資料的多個欄位之每一個,其中多個欄位 之每一個具有專為該給定之使用者所定義的安全性規 則; 接收由該給定之使用者向資料庫發出的查詢,其中 該查詢係以該至少一個欄位和該至少一個攔位之相關 值設定; 存取該至少一個安全性清單以決定是否該查詢之該 至少一個攔位係顯示於該至少一個安全性清單;和
如果該查詢之該至少一個攔位係顯示於該至少一個 安全性清單,則執行該安全性規則。 9. 如申請專利範圍第8項所述之方法,其中該至少一個安 全性清單包含一個值型態安全性清單,其含有值型態安 全性清單中顯示之多個欄位的每一值,其中存取該至少 一個安全性清單之步驟包含決定是否該查詢之該至少 一個欄位之相關值符合在值型態安全性清單中顯示之 一個對應攔位之一個值。 10. 如申請專利範圍第8項所述之方法,其中實施該安全性 41 1234379 &則之步驟包含防止執行該查詢。 1 1 ·如申請專利範圍第8項所述之方法,其中實施該安全性 規則之步驟包含登入並發出該查詢。 12·如申請專利範圍第8項所述之方法,其中如果該查詢之 該至少一個攔位係顯示於安全性清單,則實施該安全性 規則,而不論在安全性清單上顯示之袭詢的該至少一個 攔位值為何。 13· 一種提供安全性予具有特定實體資料表不之資料的方 法’包含以下步驟: 提供一查詢内容,其包含多個邏輯棚位用以疋義摘 要查詢; 提供對照規則,其對應多個邏輯攔位至資料的實體 個體; 接收一個由一使用者向資料發出的摘要查§句’其中 該摘要查詢之定義係依據查詢内容和由該至少一個邏 輯攔位和該至少一個邏輯襴位之相關值所設定;和 以專屬於該至少一個邏輯攔位之使用者的資料存在 與否,決定是否必須啟動專屬於該至少一個邏輯攔位的 使用者安全性規則。 14·如申專利範圍第13項所述之方法,更包括在啟動該 安全|±規則之前,決定專屬於該至少一個邏輯攔位的使 用者的資料存在與否之步驟。 5.如申清專利範圍帛13項所述之方法,更包含啟動該安 42 1234379 全全性規則之步驟;其中啟動該安全性規則之步驟包含 決定是否執行該查詢。 16.如申請專利範圍_ 13項所述之方法,更包含以專屬於 該至少一個欄位的使用者的資料存在與否決定是否必 須啟動該安全性規則之步驟,而不論專屬於該至少—個 邏輯的使用者的資料之值為何。
17·如申請專利範圍第13項所述之方法,其中決定是否需 要啟動該安全性規則之步驟,包含決定該至少一個糊位 的相關值和專屬於該至少一個攔位的使用者的資料值 之間是否相符。 18. —種包含安全性驗證指令之電腦可讀取媒體,當執行該 指令時,可進行一安全性驗證的操作,包括:
接收由一使用者向資料庫發出之查詢,其中該杳詢 係以至少一個攔位和該至少一個攔位之相關值設定;和 以專屬於該至少一個攔位的使用者的資料存在與 否’決定是否必須啟動專屬於該至少一個棚位的使用者 之安全性規則。 19.如申請專利範圍第18項所述之電腦可讀取媒體,該安 全性驗證之操作更包含啟動該安全性規則;其中啟動該 安全性規則包含決定是否執行該查詢。 20·如申請專利範圍第18項所述之電腦可讀取媒雜,其中 該查詢係一種SQL查詢。 21.如申請專利範圍第18項所述之電腦可讀取媒體,該安 43 1234379 全性驗證的操作更包含決定是否必須啟動該安全性規 則係依據專屬於該至少一個攔位的使用者之資料存在 與否,而不論專屬於該至少一個攔位的使用者之資料值 為何。
22. 如申請專利範圍第18項所述之電腦可讀取媒體,其中 決定是否需要啟動該安全性規則,包含決定該至少一個 欄位的相關值和專屬於該至少一個攔位的使用者的資 料值之間是否相符。 23. —種包含安全性驗證指令之電腦可讀取媒體,當執行該 指令時,可進行一安全性驗證的操作,包括: 產生至少一個安全性清單以表示每一個當中存在有 給定之使用者資料的多個攔位之每一個,其中多個欄位 之每一個具有專為該給定之使用者所定義的安全性規 則;
接收由該給定之使用者向資料庫發出的查詢,其中 該查詢係以該至少一個攔位和該至少一個攔位之相關 值設定; 存取該至少一個安全性清單以決定是否該查詢之該 至少一個欄位係顯示於該至少一個安全性清單;和 如果該查詢之該至少一個攔位係顯示於該至少一個 安全性清單,則執行該安全性規則。 24. 如申請專利範圍第23項所述之電腦可讀取媒體,其中 該至少一個安全性清單包含一個值型態安全性清單,其 44 1234379 含有值型態安全性清單中顯示之多個攔位的每一值,其 中存取該至少一個安全性清單包含決定是否該查詢之 該至少一個攔位之相關值符合在值型態安全性清單中 顯示之一個對應攔位之一個值。 2 5.如申請專利範圍第23項所述之電腦可讀取媒體,其中 實施該安全性規則之步驟包含防止執行該查詢。
2 6.如申請專利範圍第23項所述之電腦可讀取媒體,其中 實施該安全性規則之步驟包含登入並發出該查詢。 2 7.如申請專利範圍第23項所述之電腦可讀取媒體,其中 如果該查詢之該至少一個欄位係顯示於安全性清單,則 實施該安全性規則,而不論在安全性清單上顯示之查詢 的該至少一個欄位值為何。 28.—種電腦可讀取媒體,包含儲存於其中的資訊,該資訊 包含:
一個查詢内容,其包含多個邏輯欄位,用以定定摘 要查詢; 多個對應規則,其將多個邏輯攔位對應至資料之實 體個體; 多個邏輯攔位之多個使用者專屬的安全性規則; 一種執行期元件,可用以執行一安全性驗證之操 作,以回應接收的摘要查詢,又該查詢係由一使用者向 資料庫發出,其中該摘要查詢係依據查詢内容而定義, 並以至少一個邏輯欄位和該至少一個邏輯攔位的相關 45 1234379 值來設定,該安全性驗證操作包含: 以專屬於該至少一個邏輯攔位之使用者 存在與否依基礎,決定是否必須啟動專屬於 一個邏輯攔位之使用者的安全性規則。 29.如申請專利範圍第28項所述之電腦可讀取媒體 全性驗證之操作更包含啟動該安全性規則;其中 安全性規則的步驟包含決定是否執行該查詢。 3 0.如申請專利範圍第2 8項所述之電腦可讀取媒體 全性驗證的操作更包含決定是否必須啟動該安 則係依據專屬於該至少一個欄位的使用者之資 與否,而不論專屬於該至少一個欄位的使用者之 為何。 3 1.如申請專利範圍第28項所述之電腦可讀取媒體 決定執行期元件是否需要啟動該安全性規則的 含決定該至少一個攔位的相關值和專屬於該至 欄位的使用者的資料值之間是否相符。 的資料 該至少 ’該安 啟動該 *該安 全性規 料存在 資料值 ,其中 步驟包 少一個 46
TW092120019A 2002-10-03 2003-07-22 Intelligent use of user data to pre-emptively prevent execution of a query violating access controls TWI234379B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/264,243 US7698441B2 (en) 2002-10-03 2002-10-03 Intelligent use of user data to pre-emptively prevent execution of a query violating access controls

Publications (2)

Publication Number Publication Date
TW200406113A TW200406113A (en) 2004-04-16
TWI234379B true TWI234379B (en) 2005-06-11

Family

ID=32042191

Family Applications (1)

Application Number Title Priority Date Filing Date
TW092120019A TWI234379B (en) 2002-10-03 2003-07-22 Intelligent use of user data to pre-emptively prevent execution of a query violating access controls

Country Status (9)

Country Link
US (1) US7698441B2 (zh)
EP (1) EP1550038A4 (zh)
JP (1) JP4716729B2 (zh)
KR (1) KR100737300B1 (zh)
CN (1) CN100336059C (zh)
AU (1) AU2003278954A1 (zh)
CA (1) CA2498708C (zh)
TW (1) TWI234379B (zh)
WO (1) WO2004034186A2 (zh)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996558B2 (en) 2002-02-26 2006-02-07 International Business Machines Corporation Application portability and extensibility through database schema and query abstraction
US7900133B2 (en) 2003-12-09 2011-03-01 International Business Machines Corporation Annotation structure type determination
US7711750B1 (en) * 2004-02-11 2010-05-04 Microsoft Corporation Systems and methods that specify row level database security
US7661141B2 (en) * 2004-02-11 2010-02-09 Microsoft Corporation Systems and methods that optimize row level database security
US20050289342A1 (en) * 2004-06-28 2005-12-29 Oracle International Corporation Column relevant data security label
US20060294066A1 (en) * 2005-06-23 2006-12-28 International Business Machines Corporation Visual display of information using historical condition support and event profiles
US8577684B2 (en) * 2005-07-13 2013-11-05 Intellisist, Inc. Selective security masking within recorded speech utilizing speech recognition techniques
US8321387B2 (en) * 2005-07-28 2012-11-27 International Business Machines Corporation Restricting access to sensitive data
US7440945B2 (en) 2005-11-10 2008-10-21 International Business Machines Corporation Dynamic discovery of abstract rule set required inputs
US7444332B2 (en) * 2005-11-10 2008-10-28 International Business Machines Corporation Strict validation of inference rule based on abstraction environment
US7756843B1 (en) * 2006-05-25 2010-07-13 Juniper Networks, Inc. Identifying and processing confidential information on network endpoints
US8433915B2 (en) 2006-06-28 2013-04-30 Intellisist, Inc. Selective security masking within recorded speech
GB0625641D0 (en) * 2006-12-21 2007-01-31 Symbian Software Ltd Dynamic filtering for partially trusted servers
TWI382319B (zh) * 2006-12-22 2013-01-11 Hon Hai Prec Ind Co Ltd 多任務解析系統及方法
US20090019424A1 (en) * 2007-07-12 2009-01-15 Sap Ag System and method of application context driven access restriction
KR101039698B1 (ko) * 2009-06-12 2011-06-08 (주)소만사 애플리케이션을 경유한 db접근을 보호하기 위한 데이터베이스 보안 시스템, 서버 및 방법
US10162851B2 (en) * 2010-04-19 2018-12-25 Salesforce.Com, Inc. Methods and systems for performing cross store joins in a multi-tenant store
US20110264688A1 (en) * 2010-04-26 2011-10-27 International Business Machines Corporation Peer to peer (p2p) data licensing model in a distributed abstract query environment
US8266170B2 (en) 2010-04-26 2012-09-11 International Business Machines Corporation Peer to peer (P2P) missing fields and field valuation feedback
KR101104845B1 (ko) * 2010-09-08 2012-01-16 (주)소만사 데이터베이스와 클라이언트 간 db vpn을 이용한 안전 통신 시스템 및 방법
KR101143998B1 (ko) * 2011-09-20 2012-05-09 주식회사 안철수연구소 데이터베이스 보안 장치 및 방법
US9819798B2 (en) 2013-03-14 2017-11-14 Intellisist, Inc. Computer-implemented system and method for efficiently facilitating appointments within a call center via an automatic call distributor
CN104516882B (zh) 2013-09-26 2018-02-06 国际商业机器公司 确定sql语句的危害度的方法和设备
US9619581B2 (en) * 2013-12-20 2017-04-11 Microsoft Technology Licensing, Llc Constructing queries for execution over multi-dimensional data structures
US10769122B2 (en) * 2014-03-13 2020-09-08 Ab Initio Technology Llc Specifying and applying logical validation rules to data
US9251221B1 (en) 2014-07-21 2016-02-02 Splunk Inc. Assigning scores to objects based on search query results
AU2016219159B2 (en) * 2015-02-12 2021-05-13 Visa International Service Association Multi-party encryption cube processing apparatuses, methods and systems
US10754978B2 (en) 2016-07-29 2020-08-25 Intellisist Inc. Computer-implemented system and method for storing and retrieving sensitive information
CN109582691B (zh) * 2018-11-15 2023-04-07 百度在线网络技术(北京)有限公司 用于控制数据查询的方法和装置
US11106679B2 (en) * 2019-10-30 2021-08-31 Ocient Holdings LLC Enforcement of sets of query rules for access to data supplied by a plurality of data providers
US11379601B2 (en) * 2019-12-11 2022-07-05 Paypal, Inc. Detection of sensitive database information
US11768916B2 (en) 2019-12-11 2023-09-26 Paypal, Inc. Detection of sensitive database information

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69031191T2 (de) 1989-05-15 1998-02-12 Ibm System zur Steuerung von Zugriffsprivilegien
US5560008A (en) 1989-05-15 1996-09-24 International Business Machines Corporation Remote authentication and authorization in a distributed data processing system
US5204961A (en) 1990-06-25 1993-04-20 Digital Equipment Corporation Computer network operating with multilevel hierarchical security with selectable common trust realms and corresponding security protocols
US5023765A (en) 1990-12-03 1991-06-11 Barton Daniel W Pivotable lamp bracket for linear lighting fixture
JPH0799497B2 (ja) 1990-12-14 1995-10-25 インターナショナル・ビジネス・マシーンズ・コーポレイション ソフトウェアの使用を管理するための装置及び方法
US5577209A (en) 1991-07-11 1996-11-19 Itt Corporation Apparatus and method for providing multi-level security for communication among computers and terminals on a network
US5355474A (en) 1991-09-27 1994-10-11 Thuraisngham Bhavani M System for multilevel secure database management using a knowledge base with release-based and other security constraints for query, response and update modification
US5481700A (en) 1991-09-27 1996-01-02 The Mitre Corporation Apparatus for design of a multilevel secure database management system based on a multilevel logic programming system
US5572673A (en) 1993-12-01 1996-11-05 Sybase, Inc. Secure multi-level system for executing stored procedures
US5751949A (en) 1995-05-23 1998-05-12 Mci Corporation Data security system and method
US5859966A (en) 1995-10-10 1999-01-12 Data General Corporation Security system for computer systems
US5768532A (en) 1996-06-17 1998-06-16 International Business Machines Corporation Method and distributed database file system for implementing self-describing distributed file objects
US6226745B1 (en) * 1997-03-21 2001-05-01 Gio Wiederhold Information sharing system and method with requester dependent sharing and security rules
JP4578676B2 (ja) * 1997-10-10 2010-11-10 ラムバス・インコーポレーテッド デバイスのタイミングを補償する装置及び方法
US6038563A (en) * 1997-10-31 2000-03-14 Sun Microsystems, Inc. System and method for restricting database access to managed object information using a permissions table that specifies access rights corresponding to user access rights to the managed objects
US6085191A (en) * 1997-10-31 2000-07-04 Sun Microsystems, Inc. System and method for providing database access control in a secure distributed network
US6112181A (en) 1997-11-06 2000-08-29 Intertrust Technologies Corporation Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6141754A (en) * 1997-11-28 2000-10-31 International Business Machines Corporation Integrated method and system for controlling information access and distribution
US6272488B1 (en) 1998-04-01 2001-08-07 International Business Machines Corporation Managing results of federated searches across heterogeneous datastores with a federated collection object
US6487552B1 (en) * 1998-10-05 2002-11-26 Oracle Corporation Database fine-grained access control
US6578037B1 (en) * 1998-10-05 2003-06-10 Oracle Corporation Partitioned access control to a database
WO2000026750A1 (en) * 1998-11-05 2000-05-11 NEUVIS, Inc Method for controlling access to information
US6237003B1 (en) * 1998-11-30 2001-05-22 Platinum Technology Ip, Inc. Method and apparatus for supporting dynamic run-time object definition in a relational database management system
US6745332B1 (en) 1999-06-29 2004-06-01 Oracle International Corporation Method and apparatus for enabling database privileges
JP3671765B2 (ja) * 1999-09-24 2005-07-13 日本電信電話株式会社 異種情報源問い合わせ変換方法及び装置及び異種情報源問い合わせ変換プログラムを格納した記憶媒体
US7089588B2 (en) 2000-01-19 2006-08-08 Reynolds And Reynolds Holdings, Inc. Performance path method and apparatus for exchanging data among systems using different data formats
JP2001344147A (ja) * 2000-05-31 2001-12-14 Dainippon Printing Co Ltd 汎用データベースアクセス装置
US6954748B2 (en) * 2002-04-25 2005-10-11 International Business Machines Corporation Remote data access and integration of distributed data sources through data schema and query abstraction

Also Published As

Publication number Publication date
EP1550038A2 (en) 2005-07-06
TW200406113A (en) 2004-04-16
WO2004034186A2 (en) 2004-04-22
KR100737300B1 (ko) 2007-07-09
CN1688977A (zh) 2005-10-26
CA2498708A1 (en) 2004-04-22
US20040068661A1 (en) 2004-04-08
KR20050069995A (ko) 2005-07-05
US7698441B2 (en) 2010-04-13
JP4716729B2 (ja) 2011-07-06
EP1550038A4 (en) 2009-04-01
CA2498708C (en) 2011-03-22
CN100336059C (zh) 2007-09-05
AU2003278954A8 (en) 2004-05-04
WO2004034186A3 (en) 2004-06-24
JP2006502494A (ja) 2006-01-19
AU2003278954A1 (en) 2004-05-04

Similar Documents

Publication Publication Date Title
TWI234379B (en) Intelligent use of user data to pre-emptively prevent execution of a query violating access controls
US11038867B2 (en) Flexible framework for secure search
US10108813B2 (en) Query conditions-based security
US9251364B2 (en) Search hit URL modification for secure application integration
US8005816B2 (en) Auto generation of suggested links in a search system
US7941419B2 (en) Suggested content with attribute parameterization
US8595255B2 (en) Propagating user identities in a secure federated search system
US8875249B2 (en) Minimum lifespan credentials for crawling data repositories
US8332430B2 (en) Secure search performance improvement
US20120072426A1 (en) Self-service sources for secure search
US20090125540A1 (en) Method for executing federated database queries using aliased keys
US20050268080A1 (en) Offline configuration tool for secure store administration
US11372859B2 (en) Efficiently supporting value style access of MOBs stored in SQL LOB column by providing value based semantics for LOBs in RDBMS
Cisco Using Extension Points
Cisco Using Extension Points
Foggon Introducing Relational Databases
AU2005201978A1 (en) Method of Providing Secure Access to Static Data in an Electronic Document

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees