將oracle內(nèi)置的安全特性用于PHP
來(lái)源:易賢網(wǎng) 閱讀:895 次 日期:2015-04-21 14:09:31
溫馨提示:易賢網(wǎng)小編為您整理了“將oracle內(nèi)置的安全特性用于PHP”,方便廣大網(wǎng)友查閱!

當(dāng)今大多數(shù) Web 應(yīng)用程序都需要至少采用某種基本的安全策略。例如,提供用口令保護(hù)的內(nèi)容的網(wǎng)站、僅具有管理員后端的網(wǎng)站、網(wǎng)志和個(gè)人雜志、電子商務(wù)網(wǎng)站、企業(yè)內(nèi)聯(lián)網(wǎng),等等。

構(gòu)建這些類(lèi)型的 Web 應(yīng)用程序最常用的設(shè)計(jì)方法是將安全策略整合到 Web 應(yīng)用程序的業(yè)務(wù)邏輯中,即由應(yīng)用程序決定某個(gè)用戶是否有權(quán)訪問(wèn)中的某個(gè)數(shù)據(jù)。在這種情形下,的角色僅為存儲(chǔ)數(shù)據(jù)和依請(qǐng)求提供數(shù)據(jù)。換句話說(shuō),如果 Web 應(yīng)用程序命令提供特定信息,則會(huì)直接執(zhí)行該命令而不檢查用戶的權(quán)限。

在該文中,您將學(xué)習(xí)如何利用 Oracle 內(nèi)置的安全特性在級(jí)執(zhí)行應(yīng)用程序安全規(guī)則,以提高應(yīng)用程序的整體安全性。作為附帶的好處,直接在中實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)安全不但有助于提高應(yīng)用程的安全性,而且有助于降低復(fù)雜性。

對(duì)端安全性的需求

從 Web 應(yīng)用程序控制數(shù)據(jù)訪問(wèn)會(huì)怎么樣?大多數(shù)情況下沒(méi)有問(wèn)題;這是個(gè)不錯(cuò)的解決方案,尤其是在涉及的數(shù)據(jù)為非任務(wù)關(guān)鍵或絕密的時(shí)候。許多書(shū)和在線資源中都用到了該方法。實(shí)際上,有本很受歡迎的 PHP/MySQL 書(shū)明確反對(duì)每個(gè)應(yīng)用程序創(chuàng)建一個(gè)以上的用戶帳戶,這是因?yàn)椤邦~外的用戶或復(fù)雜的權(quán)限會(huì)因某個(gè)操作在繼續(xù)前要檢查更多的信息而降低 MySQL 的執(zhí)行速度”。確實(shí)如此;但是,在放棄將安全性整合到邏輯中的想法前可能要考慮幾件事情。我們來(lái)看以下示例。

假設(shè)創(chuàng)建一個(gè)內(nèi)容管理系統(tǒng) (CMS)。其中使用來(lái)存儲(chǔ)網(wǎng)站上發(fā)布的內(nèi)容。大部分?jǐn)?shù)據(jù)是公開(kāi)的,允許匿名 Web 用戶讀??;但只允許編輯更改數(shù)據(jù)。使用單一帳戶訪問(wèn)和修改中的記錄,并通過(guò)用口令保護(hù)僅管理員可以訪問(wèn)的頁(yè)面的訪問(wèn)權(quán)限用 PHP 代碼控制安全性。

如果 Web 應(yīng)用程序的公共端遭受了一個(gè)諸如公共搜索表單(即編碼不夠嚴(yán)密的表單)上的 SQL 注入的攻擊,則該入侵者可能能夠?qū)υ摴矌艨梢栽L問(wèn)的對(duì)象執(zhí)行任意 SQL 語(yǔ)句。當(dāng)然,就這里的情形而言,執(zhí)行 SELECT 語(yǔ)句不會(huì)造成什么大問(wèn)題,這是因?yàn)閿?shù)據(jù)本來(lái)就是公共的。但由于公共權(quán)限和管理權(quán)限使用同一帳戶,因此入侵者還能執(zhí)行 UPDATE 和 DELETE 語(yǔ)句,甚至是從中刪除表。

怎么才能防止該情況的發(fā)生呢?最簡(jiǎn)單的方法就是徹底限制公共帳戶修改數(shù)據(jù)的權(quán)限。我們來(lái)看看 Oracle 是如何解決這個(gè)問(wèn)題的。

Oracle 安全性基本概述

Oracle 為 Web 開(kāi)發(fā)人員提供了控制數(shù)據(jù)訪問(wèn)的許多方法,從管理對(duì)特定對(duì)象(如表、視圖和過(guò)程)的訪問(wèn)到控制個(gè)別行或列的數(shù)據(jù)的訪問(wèn)。很顯然,對(duì) Oracle 每個(gè)安全特性或可用選項(xiàng)的討論超出了本文的范圍。在這里,我們將不涉及過(guò)多細(xì)節(jié),而僅介紹 Oracle 數(shù)據(jù)訪問(wèn)安全性的最基本方面:

·驗(yàn)證和用戶帳戶

·權(quán)限

·角色

驗(yàn)證和用戶帳戶。 與其他一樣,請(qǐng)求訪問(wèn) Oracle 的每個(gè)用戶(帳戶)必須通過(guò)驗(yàn)證。驗(yàn)證工作可以由、或網(wǎng)絡(luò)服務(wù)來(lái)做。除基本的驗(yàn)證(口令驗(yàn)證)外,Oracle 還支持強(qiáng)驗(yàn)證機(jī)制,如Kerberos、CyberSafe、RADIUS,等等。

角色。 Oracle 角色是一個(gè)權(quán)限的有名集。盡管可以直接授予用戶帳戶權(quán)限,但使用角色可以極大簡(jiǎn)化用戶管理,尤其是需要管理大量用戶時(shí)。創(chuàng)建易管理的小角色,然后根據(jù)用戶的安全級(jí)別授予用戶一個(gè)或多個(gè)角色,這樣做的效率非常高。更不用說(shuō)修改權(quán)限變得如何簡(jiǎn)單了 — 只需修改角色關(guān)聯(lián)的角色即可,無(wú)需修改每個(gè)用戶帳戶。

為了簡(jiǎn)化新用戶創(chuàng)建初期的工作,Oracle 自帶了三個(gè)預(yù)定義的角色:

·CONNECT 角色 — 該角色使用戶可以連接以及執(zhí)行基本的操作,如創(chuàng)建自己的表。默認(rèn)情況下,該角色不能訪問(wèn)其他用戶的表。

·RESOURCE 角色 — RESOURCE 角色與 CONNECT 角色相似,但它允許用戶擁有較多的系統(tǒng)權(quán)限,如創(chuàng)建觸發(fā)器或存儲(chǔ)過(guò)程。

·DBA 角色 — 允許用戶擁有所有系統(tǒng)權(quán)限。

更多信息請(qǐng)查看IT技術(shù)專(zhuān)欄

更多信息請(qǐng)查看數(shù)據(jù)庫(kù)
易賢網(wǎng)手機(jī)網(wǎng)站地址:將oracle內(nèi)置的安全特性用于PHP
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢(xún)回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門(mén)公布的正式信息和咨詢(xún)?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽(tīng)報(bào)名

  • 報(bào)班類(lèi)型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢(xún) | 簡(jiǎn)要咨詢(xún)須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專(zhuān)用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢(xún)關(guān)注公眾號(hào):hfpxwx
咨詢(xún)QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專(zhuān)用圖標(biāo)