docs: def check_permission(self, identifiers, permission_s, logical_operator):
          """
          like Yosai's authentication process, the authorization process will
          raise an Exception to halt further authz checking once Yosai determines
          that a Subject is unauthorized to receive the requested permission
  
          :param identifiers: a collection of identifiers
          :type identifiers:  subject_abcs.IdentifierCollection
  
          :param permission_s: a collection of 1..N permissions
          :type permission_s: List of Permission objects or Strings
  
          :param logical_operator:  indicates whether all or at least one
                                    permission check is true (any)
          :type: any OR all (from python standard library)
  
          :raises UnauthorizedException: if any permission is unauthorized
          """
          self.assert_realms_configured()
          permitted = self.is_permitted_collective(identifiers,
                                                   permission_s,
                                                   logical_operator)
          if not permitted:
              msg = "Subject lacks permission(s) to satisfy logical operation"
              raise UnauthorizedException(msg)