根據is08402的定義,安全性是“使傷害或損害的風險限制在可接受的水平內”。所以直觀地說,軟件的安全性是軟件的一種內在的屬性。安全性的英文術語是safety,另一個英文術語security,也有安全的含義,但是它主要是指文件、數據、資料的保密問麒。
軟件安全性和可靠性有非常緊密的聯系,安全事故是危害度最大的失效事件t因此軟件可靠性要求通常包括了安全性的要求。但是軟件的可靠性不能完全取代軟件的安全性,因為安全性要求包括在非正常條件下不發生安全事故的能力。
安全性測試是檢查系統對非法侵入的防范能力。安全測試期間,測試人員假扮非法入侵者,采用各種辦法試圖突破防線。例如:
· 想方設法截取或破譯口令。
· 專門開發軟件來破壞系統的保護機制。
· 故意導致系統失敗,企圖趁恢復之機非法進入。
· 試圖通過瀏覽非保密數據,推導所需信息等。
理論上講,只要有足夠的時間和資源,沒有無法進入的系統。因此系統安全設計的準則是使非法侵入的代價超過被保護信息的價值,此時非法侵入者已無利圖。
1兩種級別的安全性
安全性一般分為兩個層次,即應用程序級別的安全性和系統級別的安全性,它們的關系如下:
· 應用程序級別的安全性,包括對數據或業務功能的訪問;系統級別的安全性,包括對系統的髓錄或遠程訪問。
· 應用程序級別的安全性可確保在預期的安全性情況下,操作者只能訪問特定的功能或用例,或者只能訪問有限的數據。例如,某財務系統可能會允許所有人輸入數據,創建新賬戶,但只有管理員才能刪除這些數據或賬戶。如果具有數據級別的安全性,測試就可確?!坝脩纛愋鸵荒軌蚩吹剿锌蛻粝?包括財務數據),而“用戶類型二”只能看見同一客戶的統計數據。
· 系統級別的安全性可確保只有具備系統訪問權限的用戶才能訪問應用程序,而且只能通過相應的網關來訪問。
2.測試目標
應用程序級別的安全性:核實操作者只能訪問其所屬用戶類型已被授權訪問的那些功能或數據。
系統級別的安全性:核實只有具備系統和應用程序訪問權限的操作者才能訪問系統和應用程序。
3測試范圍
確定并列出各用戶類型及其被授權訪問的功能或數據。為各用戶類型創建測試,并通過創建各用戶類型所特有的事務來核實其權限,修改用戶類型并為相同的用戶重新運行測試。對于每種用戶類型,確保正確地提供或拒絕這些附加的功能或數據。
4完成標準
各種已知的操作類型都可訪問相應的功能或數據,而且所有事務都按照預期的方式運行,并在先前的應用程序功能測試中運行了所有的事務。
原文轉自:http://www.anti-gravitydesign.com