IAcl Interface

Definition

Interface representing an Access Control List (ACL).

[Android.Runtime.Register("java/security/acl/Acl", "", "Java.Security.Acl.IAclInvoker")]
public interface IAcl : IDisposable, Java.Interop.IJavaPeerable, Java.Security.Acl.IOwner
[<Android.Runtime.Register("java/security/acl/Acl", "", "Java.Security.Acl.IAclInvoker")>]
type IAcl = interface
    interface IOwner
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Attributes
Implements

Remarks

Interface representing an Access Control List (ACL). An Access Control List is a data structure used to guard access to resources.

An ACL can be thought of as a data structure with multiple ACL entries. Each ACL entry, of interface type AclEntry, contains a set of permissions associated with a particular principal. (A principal represents an entity such as an individual user or a group). Additionally, each ACL entry is specified as being either positive or negative. If positive, the permissions are to be granted to the associated principal. If negative, the permissions are to be denied.

The ACL Entries in each ACL observe the following rules:

<ul> <li>Each principal can have at most one positive ACL entry and one negative entry; that is, multiple positive or negative ACL entries are not allowed for any principal. Each entry specifies the set of permissions that are to be granted (if positive) or denied (if negative).

<li>If there is no entry for a particular principal, then the principal is considered to have a null (empty) permission set.

<li>If there is a positive entry that grants a principal a particular permission, and a negative entry that denies the principal the same permission, the result is as though the permission was never granted or denied.

<li>Individual permissions always override permissions of the group(s) to which the individual belongs. That is, individual negative permissions (specific denial of permissions) override the groups' positive permissions. And individual positive permissions override the groups' negative permissions.

</ul>

The java.security.acl package provides the interfaces to the ACL and related data structures (ACL entries, groups, permissions, etc.).

The java.security.acl.Acl interface extends the java.security.acl.Owner interface. The Owner interface is used to maintain a list of owners for each ACL. Only owners are allowed to modify an ACL. For example, only an owner can call the ACL's addEntry method to add a new ACL entry to the ACL.

Added in 1.1.

This member is deprecated. This class is deprecated and subject to removal in a future version of Java SE. It has been replaced by java.security.Policy and related classes since 1.2.

Java documentation for java.security.acl.Acl.

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Properties

Handle

Gets the JNI value of the underlying Android object.

(Inherited from IJavaObject)
JniIdentityHashCode

Returns the value of java.lang.System.identityHashCode() for the wrapped instance.

(Inherited from IJavaPeerable)
JniManagedPeerState

State of the managed peer.

(Inherited from IJavaPeerable)
JniPeerMembers

Member access and invocation support.

(Inherited from IJavaPeerable)
Name

Returns the name of this ACL instance.

PeerReference

Returns a JniObjectReference of the wrapped Java object instance.

(Inherited from IJavaPeerable)

Methods

AddEntry(IPrincipal, IAclEntry)

Adds an ACL entry to this ACL.

AddOwner(IPrincipal, IPrincipal)

Adds an owner.

(Inherited from IOwner)
CheckPermission(IPrincipal, IPermission)

Checks whether or not the specified principal has the specified permission.

DeleteOwner(IPrincipal, IPrincipal)

Deletes an owner.

(Inherited from IOwner)
Disposed()

Called when the instance has been disposed.

(Inherited from IJavaPeerable)
DisposeUnlessReferenced()

If there are no outstanding references to this instance, then calls Dispose(); otherwise, does nothing.

(Inherited from IJavaPeerable)
Entries()

Returns an enumeration of the entries in this ACL.

Finalized()

Called when the instance has been finalized.

(Inherited from IJavaPeerable)
GetPermissions(IPrincipal)

Returns an enumeration for the set of allowed permissions for the specified principal (representing an entity such as an individual or a group).

IsOwner(IPrincipal)

Returns true if the given principal is an owner of the ACL.

(Inherited from IOwner)
RemoveEntry(IPrincipal, IAclEntry)

Removes an ACL entry from this ACL.

SetJniIdentityHashCode(Int32)

Set the value returned by JniIdentityHashCode.

(Inherited from IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates) (Inherited from IJavaPeerable)
SetName(IPrincipal, String)

Sets the name of this ACL.

SetPeerReference(JniObjectReference)

Set the value returned by PeerReference.

(Inherited from IJavaPeerable)
ToString()

Returns a string representation of the ACL contents.

UnregisterFromRuntime()

Unregister this instance so that the runtime will not return it from future Java.Interop.JniRuntime+JniValueManager.PeekValue invocations.

(Inherited from IJavaPeerable)

Extension Methods

JavaCast<TResult>(IJavaObject)

Performs an Android runtime-checked type conversion.

JavaCast<TResult>(IJavaObject)
GetJniTypeName(IJavaPeerable)

Applies to