|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface Acl
表示存取控制列表 (ACL) 的介面。存取控制列表是一種資料結構,用於保護對資源的存取。
可將一個 ACL 看作是具有多個 ACL 項的資料結構。每個介面型別為 AclEntry 的 ACL 項都包含一組與特定主體相關聯的權限。(主體表示一個實體,如單獨使用者或一個使用者組)。另外,可以將每個 ACL 項指定為 positive 或 negative 的。如果為 positive,則將權限授予相關聯的主體。如果為 negative,則拒絕該權限。
每個 ACL 中的 ACL 項都遵循以下規則:
java.security.acl
套件為 ACL 和相關的資料結構(ACL 項、組、權限等等)提供了介面,sun.security.acl
類別則提供了該介面的預設實作。例如,java.security.acl.Acl
為 ACL 提供了介面,而 sun.security.acl.AclImpl
類別則提供了該介面的預設實作。
java.security.acl.Acl
介面擴展了 java.security.acl.Owner
介面。該 Owner 介面用於維護每個 ACL 的所有者列表。只允許 ACL 的所有者修改該 ACL。例如,只有所有者才能調用 ACL 的 addEntry
方法來向 ACL 中添加新的 ACL 項。
AclEntry
,
Owner
,
getPermissions(java.security.Principal)
方法摘要 | |
---|---|
boolean |
addEntry(Principal caller,
AclEntry entry)
向此 ACL 中添加 ACL 項。 |
boolean |
checkPermission(Principal principal,
Permission permission)
檢查指定的主體是否具有指定的權限。 |
Enumeration<AclEntry> |
entries()
返回此 ACL 中各項的列舉。 |
String |
getName()
返回此 ACL 的名稱。 |
Enumeration<Permission> |
getPermissions(Principal user)
返回一個指定主體(表示一個實體,如個體或組)的許可權限集合的列舉。 |
boolean |
removeEntry(Principal caller,
AclEntry entry)
從此 ACL 中移除 ACL 項。 |
void |
setName(Principal caller,
String name)
設置此 ACL 的名稱。 |
String |
toString()
返回 ACL 內容的字元串表示形式。 |
從介面 java.security.acl.Owner 繼承的方法 |
---|
addOwner, deleteOwner, isOwner |
方法詳細資訊 |
---|
void setName(Principal caller, String name) throws NotOwnerException
caller
- 調用此方法的主體。必須是此 ACL 的所有者。name
- 賦予此 ACL 的名稱。
NotOwnerException
- 如果調用方主體不是此 ACL 的所有者。getName()
String getName()
setName(java.security.Principal, java.lang.String)
boolean addEntry(Principal caller, AclEntry entry) throws NotOwnerException
caller
- 調用此方法的主體。必須是此 ACL 的所有者。entry
- 要添加到此 ACL 中的 ACL 項。
NotOwnerException
- 如果調用方主體不是此 ACL 的所有者。boolean removeEntry(Principal caller, AclEntry entry) throws NotOwnerException
caller
- 調用此方法的主體。必須是此 ACL 的所有者。entry
- 要從此 ACL 中移除的 ACL 項。
NotOwnerException
- 如果調用方主體不是此 ACL 的所有者。Enumeration<Permission> getPermissions(Principal user)
還要確定個體 positive 和 negative 權限集合。positive 權限集合包含該主體的 positive ACL 項(如果有的話)中所指定的權限。類似地,negative 權限集合包含該主體的 negative ACL 項(如果有的話)中所指定的權限。如果此 ACL 中沒有針對該主體的 positive(negative)ACL 項,則認為個體 positive(或 negative )權限集合為 null。
然後使用個體權限總是覆寫組權限這一簡單規則來計算授予該主體的權限集合。也就是說,該主體的個體 negative 權限集合(特定權限的拒絕)覆寫組的 positive 權限集合,該主體的個體 positive 權限集合則覆寫組的 negative 權限集合。
user
- 要返回其權限集合的主體。
Enumeration<AclEntry> entries()
boolean checkPermission(Principal principal, Permission permission)
getPermissions
方法所使用的相同演算法來確定該許可權限集合。
principal
- 主體,假定是一個有效的、已進行身份驗證的 Principal。permission
- 要檢查的權限。
getPermissions(java.security.Principal)
String toString()
Object
中的 toString
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。