docs: async def check_permissions(self, action: str, **kwargs):
          """
          Check if the action should be permitted.
          Raises an appropriate exception if the request is not permitted.
          """
          for permission in await self.get_permissions(action=action, **kwargs):
  
              if not await ensure_async(permission.has_permission)(
                      scope=self.scope, consumer=self, action=action, **kwargs):
                  raise PermissionDenied()