W3cubDocs

/Symfony 2.7

Symfony\Component\Security\Acl\Domain\Acl

class Acl implements AuditableAclInterface, NotifyPropertyChanged

An ACL implementation.

Each object identity has exactly one associated ACL. Each ACL can have four different types of ACEs (class ACEs, object ACEs, class field ACEs, object field ACEs).

You should not iterate over the ACEs yourself, but instead use isGranted(), or isFieldGranted(). These will utilize an implementation of PermissionGrantingStrategy internally.

Methods

__construct(int $id, ObjectIdentityInterface $objectIdentity, PermissionGrantingStrategyInterface $permissionGrantingStrategy, array $loadedSids = array(), bool $entriesInheriting)

Constructor

addPropertyChangedListener(PropertyChangedListener $listener)

Adds a property changed listener

deleteClassAce(int $index)

Deletes a class-based ACE

deleteClassFieldAce(int $index, string $field)

Deletes a class-field-based ACE

deleteObjectAce(int $index)

Deletes an object-based ACE

deleteObjectFieldAce(int $index, string $field)

Deletes an object-field-based ACE

array getClassAces()

Returns all class-based ACEs associated with this ACL

array getClassFieldAces(string $field)

Returns all class-field-based ACEs associated with this ACL

array getObjectAces()

Returns all object-based ACEs associated with this ACL

array getObjectFieldAces(string $field)

Returns all object-field-based ACEs associated with this ACL

int getId()

Returns the primary key of this ACL

ObjectIdentityInterface getObjectIdentity()

Returns the object identity associated with this ACL

AclInterface|null getParentAcl()

Returns the parent ACL, or null if there is none.

insertClassAce(SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts a class-based ACE

insertClassFieldAce(string $field, SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts a class-field-based ACE

insertObjectAce(SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts an object-based ACE

insertObjectFieldAce(string $field, SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts an object-field-based ACE

bool isEntriesInheriting()

Whether this ACL is inheriting ACEs from a parent ACL.

bool isFieldGranted(string $field, array $masks, array $securityIdentities, bool $administrativeMode = false)

Determines whether field access is granted

bool isGranted(array $masks, array $securityIdentities, bool $administrativeMode = false)

Determines whether access is granted

bool isSidLoaded($sids)

Whether the ACL has loaded ACEs for all of the passed security identities

string serialize()

Implementation for the \Serializable interface

unserialize(string $serialized)

Implementation for the \Serializable interface

setEntriesInheriting(bool $boolean)

Sets whether entries are inherited

setParentAcl(AclInterface $acl = null)

Sets the parent ACL

updateClassAce(int $index, int $mask, string $strategy = null)

Updates a class-based ACE

updateClassFieldAce(int $index, string $field, int $mask, string $strategy = null)

Updates a class-field-based ACE

updateObjectAce(int $index, int $mask, string $strategy = null)

Updates an object-based ACE

updateObjectFieldAce(int $index, string $field, int $mask, string $strategy = null)

Updates an object-field-based ACE

updateClassAuditing(int $index, bool $auditSuccess, bool $auditFailure)

Updates auditing for class-based ACE

updateClassFieldAuditing(int $index, string $field, bool $auditSuccess, bool $auditFailure)

Updates auditing for class-field-based ACE

updateObjectAuditing(int $index, bool $auditSuccess, bool $auditFailure)

Updates auditing for object-based ACE

updateObjectFieldAuditing(int $index, string $field, bool $auditSuccess, bool $auditFailure)

Updates auditing for object-field-based ACE

Details

public __construct(int $id, ObjectIdentityInterface $objectIdentity, PermissionGrantingStrategyInterface $permissionGrantingStrategy, array $loadedSids = array(), bool $entriesInheriting)

Constructor

Parameters

int $id
ObjectIdentityInterface $objectIdentity
PermissionGrantingStrategyInterface $permissionGrantingStrategy
array $loadedSids
bool $entriesInheriting

public addPropertyChangedListener(PropertyChangedListener $listener)

Adds a property changed listener

Parameters

PropertyChangedListener $listener

public deleteClassAce(int $index)

Deletes a class-based ACE

Parameters

int $index

public deleteClassFieldAce(int $index, string $field)

Deletes a class-field-based ACE

Parameters

int $index
string $field

public deleteObjectAce(int $index)

Deletes an object-based ACE

Parameters

int $index

public deleteObjectFieldAce(int $index, string $field)

Deletes an object-field-based ACE

Parameters

int $index
string $field

public array getClassAces()

Returns all class-based ACEs associated with this ACL

Return Value

array

public array getClassFieldAces(string $field)

Returns all class-field-based ACEs associated with this ACL

Parameters

string $field

Return Value

array

public array getObjectAces()

Returns all object-based ACEs associated with this ACL

Return Value

array

public array getObjectFieldAces(string $field)

Returns all object-field-based ACEs associated with this ACL

Parameters

string $field

Return Value

array

public int getId()

Returns the primary key of this ACL

Return Value

int

public ObjectIdentityInterface getObjectIdentity()

Returns the object identity associated with this ACL

public AclInterface|null getParentAcl()

Returns the parent ACL, or null if there is none.

Return Value

AclInterface|null

public insertClassAce(SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts a class-based ACE

Parameters

SecurityIdentityInterface $sid
int $mask
int $index
bool $granting
string $strategy

public insertClassFieldAce(string $field, SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts a class-field-based ACE

Parameters

string $field
SecurityIdentityInterface $sid
int $mask
int $index
bool $granting
string $strategy

public insertObjectAce(SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts an object-based ACE

Parameters

SecurityIdentityInterface $sid
int $mask
int $index
bool $granting
string $strategy

public insertObjectFieldAce(string $field, SecurityIdentityInterface $sid, int $mask, int $index, bool $granting = true, string $strategy = null)

Inserts an object-field-based ACE

Parameters

string $field
SecurityIdentityInterface $sid
int $mask
int $index
bool $granting
string $strategy

public bool isEntriesInheriting()

Whether this ACL is inheriting ACEs from a parent ACL.

Return Value

bool

public bool isFieldGranted(string $field, array $masks, array $securityIdentities, bool $administrativeMode = false)

Determines whether field access is granted

Parameters

string $field
array $masks
array $securityIdentities
bool $administrativeMode

Return Value

bool

public bool isGranted(array $masks, array $securityIdentities, bool $administrativeMode = false)

Determines whether access is granted

Parameters

array $masks
array $securityIdentities
bool $administrativeMode

Return Value

bool

Exceptions

NoAceFoundException when no ACE was applicable for this request

public bool isSidLoaded($sids)

Whether the ACL has loaded ACEs for all of the passed security identities

Parameters

$sids

Return Value

bool

public string serialize()

Implementation for the \Serializable interface

Return Value

string

public unserialize(string $serialized)

Implementation for the \Serializable interface

Parameters

string $serialized

public setEntriesInheriting(bool $boolean)

Sets whether entries are inherited

Parameters

bool $boolean

public setParentAcl(AclInterface $acl = null)

Sets the parent ACL

Parameters

AclInterface $acl

public updateClassAce(int $index, int $mask, string $strategy = null)

Updates a class-based ACE

Parameters

int $index
int $mask
string $strategy if null the strategy should not be changed

public updateClassFieldAce(int $index, string $field, int $mask, string $strategy = null)

Updates a class-field-based ACE

Parameters

int $index
string $field
int $mask
string $strategy if null the strategy should not be changed

public updateObjectAce(int $index, int $mask, string $strategy = null)

Updates an object-based ACE

Parameters

int $index
int $mask
string $strategy if null the strategy should not be changed

public updateObjectFieldAce(int $index, string $field, int $mask, string $strategy = null)

Updates an object-field-based ACE

Parameters

int $index
string $field
int $mask
string $strategy if null the strategy should not be changed

public updateClassAuditing(int $index, bool $auditSuccess, bool $auditFailure)

Updates auditing for class-based ACE

Parameters

int $index
bool $auditSuccess
bool $auditFailure

public updateClassFieldAuditing(int $index, string $field, bool $auditSuccess, bool $auditFailure)

Updates auditing for class-field-based ACE

Parameters

int $index
string $field
bool $auditSuccess
bool $auditFailure

public updateObjectAuditing(int $index, bool $auditSuccess, bool $auditFailure)

Updates auditing for object-based ACE

Parameters

int $index
bool $auditSuccess
bool $auditFailure

public updateObjectFieldAuditing(int $index, string $field, bool $auditSuccess, bool $auditFailure)

Updates auditing for object-field-based ACE

Parameters

int $index
string $field
bool $auditSuccess
bool $auditFailure

© 2004–2016 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Security/Acl/Domain/Acl.html