当前位置: 首页>>代码示例>>PHP>>正文


PHP Zend_Acl_Role_Interface::isApiAuthUser方法代码示例

本文整理汇总了PHP中Zend_Acl_Role_Interface::isApiAuthUser方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Acl_Role_Interface::isApiAuthUser方法的具体用法?PHP Zend_Acl_Role_Interface::isApiAuthUser怎么用?PHP Zend_Acl_Role_Interface::isApiAuthUser使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Zend_Acl_Role_Interface的用法示例。


在下文中一共展示了Zend_Acl_Role_Interface::isApiAuthUser方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: assert

 /**
  * Returns true if and only if the assertion conditions are met
  *
  * This method is passed the ACL, Role, Resource, and privilege to which
  * the authorization query applies. If the $role, $resource, or $privilege
  * parameters are null, it means that the query applies to all Roles,
  * Resources, or privileges, respectively.
  *
  * @param  Zend_Acl                    $acl
  * @param  Zend_Acl_Role_Interface     $role
  * @param  Zend_Acl_Resource_Interface $resource
  * @param  string                      $privilege
  * @return boolean
  */
 public function assert(Zend_Acl $acl, Zend_Acl_Role_Interface $role = null, Zend_Acl_Resource_Interface $resource = null, $privilege = null)
 {
     // We need specific objects to check against each other
     if (NULL === $role || NULL === $resource) {
         return false;
     }
     // Ensure we're handled User models
     if (!$role instanceof UserModel) {
         throw new Exception('Role must be an instance of UserModel');
     }
     if (!$resource instanceof WatcherModel) {
         throw new Exception('Resource must be an instance of WatcherModel');
     }
     switch ($resource->scope) {
         case 'user':
             return $role->id == $resource->scopeId;
         case 'apiId':
             if (!$role instanceof \Application\Model\CurrentUserModel || !$role->isApiAuthUser()) {
                 return FALSE;
             }
             return $role->apiId == $resource->scopeId;
         case 'token':
             if (Zend_Auth::getInstance()->hasIdentity() && ($ident = Zend_Auth::getInstance()->getIdentity()) && isset($ident['token'])) {
                 return $ident['token'] === $resource->scopeId;
             }
             return false;
         case 'organization':
             return $role->organizationId === $resource->scopeId;
     }
     return false;
 }
开发者ID:SandeepUmredkar,项目名称:PortalSMIP,代码行数:45,代码来源:SameScope.php

示例2: assert

 /**
  * Returns true if and only if the assertion conditions are met
  *
  * This method is passed the ACL, Role, Resource, and privilege to which
  * the authorization query applies. If the $role, $resource, or $privilege
  * parameters are null, it means that the query applies to all Roles,
  * Resources, or privileges, respectively.
  *
  * @param  Zend_Acl                    $acl
  * @param  Zend_Acl_Role_Interface     $role
  * @param  Zend_Acl_Resource_Interface $resource
  * @param  string                      $privilege
  * @return boolean
  */
 public function assert(Zend_Acl $acl, Zend_Acl_Role_Interface $role = null, Zend_Acl_Resource_Interface $resource = null, $privilege = null)
 {
     // We need specific objects to check against each other
     if (NULL === $role || NULL === $resource) {
         return false;
     }
     // Ensure we're handled User models
     if (!$role instanceof UserModel) {
         throw new Exception('Role must be an instance of UserModel');
     }
     if ($resource instanceof WatcherModel) {
         if ($role instanceof \Application\Model\CurrentUserModel && $role->isApiAuthUser()) {
             return $role->apiId == $resource->owner;
         }
         return $role->id === $resource->owner;
     }
     if ($resource instanceof UserConfigModel) {
         return $role->id === $resource->userId;
     }
     if (!$resource instanceof UserModel) {
         throw new Exception('Resource must be an instance of UserModel');
     }
     return $role->getId() === $resource->getId();
 }
开发者ID:SandeepUmredkar,项目名称:PortalSMIP,代码行数:38,代码来源:SameUser.php


注:本文中的Zend_Acl_Role_Interface::isApiAuthUser方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。