Inheritance: implements Neos\Flow\Security\Authorization\PrivilegeManagerInterface
コード例 #1
0
 /**
  * Returns TRUE if access is granted on the given privilege target in the current security context
  * or if set based on the override decision value.
  *
  * @param string $privilegeTargetIdentifier The identifier of the privilege target to decide on
  * @param array $privilegeParameters Optional array of privilege parameters (simple key => value array)
  * @return boolean TRUE if access is granted, FALSE otherwise
  */
 public function isPrivilegeTargetGranted($privilegeTargetIdentifier, array $privilegeParameters = [])
 {
     if ($this->overrideDecision === false) {
         return false;
     } elseif ($this->overrideDecision === true) {
         return true;
     }
     return parent::isPrivilegeTargetGranted($privilegeTargetIdentifier, $privilegeParameters);
 }
コード例 #2
0
 /**
  * @test
  */
 public function isPrivilegeTargetGrantedReturnsTrueIfThereIsNoDenyVoteAndOneGrantVote()
 {
     $mockRole1 = $this->getMockBuilder(Security\Policy\Role::class)->disableOriginalConstructor()->getMock();
     $mockRole1->expects($this->any())->method('getPrivilegeForTarget')->will($this->returnValue($this->abstainPrivilege));
     $mockRole2 = $this->getMockBuilder(Security\Policy\Role::class)->disableOriginalConstructor()->getMock();
     $mockRole2->expects($this->any())->method('getPrivilegeForTarget')->will($this->returnValue($this->grantPrivilege));
     $mockRole3 = $this->getMockBuilder(Security\Policy\Role::class)->disableOriginalConstructor()->getMock();
     $mockRole3->expects($this->any())->method('getPrivilegeForTarget')->will($this->returnValue($this->abstainPrivilege));
     $this->mockSecurityContext->expects($this->any())->method('getRoles')->will($this->returnValue([$mockRole1, $mockRole2, $mockRole3]));
     $this->assertTrue($this->privilegeManager->isPrivilegeTargetGranted('somePrivilegeTargetIdentifier'));
 }