首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java安全架構深度解析 (JDK 1.2):權限模型、存取控制與程式碼簽章

     編輯:Java 相關知識

JDK 1.2 引入精細粒度安全架構,取代早期「沙箱」非黑即白模式。本文系統梳理核心類與機制。

核心類體系

  • Permission 階層:Permission (抽象基類) → BasicPermission (命名權限) → RuntimePermission/SecurityPermission/PropertyPermission 等;FilePermission、SocketPermission 等資源權限;AllPermission (全權限)
  • CodeSource:程式碼來源 (URL + 數位憑證)
  • Policy:權限分配策略,支援策略檔配置與自訂實作
  • ProtectionDomain:程式碼來源 + 權限集合
  • AccessController:核心存取控制演算法 (檢查呼叫堆疊所有 Domain 是否具備權限) + 特權區塊 (doPrivileged)

關鍵機制

  1. 類載入器安全:雙親委派模型、命名空間隔離、簽章驗證
  2. SecurityManager vs AccessController:前者相容舊 API,委派後者執行實際檢查
  3. 輔助工具:keytool (金鑰/憑證)、policytool (策略)、jarsigner (JAR 簽章驗證)
  4. GuardedObject/SignedObject:物件層級保護與簽章

未來演進方向

使用者認證/信任整合、資源消耗管理、權限動態分組、物件級保護、保護域子域劃分、簽章 Applet 執行。現代 Java (模組系統、強封裝、Sealed Classes) 繼續強化供應鏈安全與運行時隔離。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved