docs: def CheckPermissions(self, username, subject):
      """Checks if a given user has access to a given subject."""
  
      if subject in self.authorized_users:
        return ((username in self.authorized_users[subject]) or
                self.group_access_manager.MemberOfAuthorizedGroup(
                    username, subject))
  
      # In case the subject is not found, the safest thing to do is to raise.
      # It's up to the users of this class to handle this exception and
      # grant/not grant permissions to the user in question.
      raise InvalidSubject("Subject %s was not found." % subject)