Merge pull request #46446 from nextcloud/update-app-api-rate-limit-key

use "app_api" session key in rate limit middleware, "app_api_system" is deprecated
pull/46324/merge
Alexander Piskun 10 months ago committed by GitHub
commit a5fdd1c64a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 5
      lib/private/AppFramework/Middleware/Security/RateLimitingMiddleware.php

@ -11,6 +11,7 @@ namespace OC\AppFramework\Middleware\Security;
use OC\AppFramework\Utility\ControllerMethodReflector;
use OC\Security\RateLimiting\Exception\RateLimitExceededException;
use OC\Security\RateLimiting\Limiter;
use OC\User\Session;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\Attribute\AnonRateLimit;
use OCP\AppFramework\Http\Attribute\ARateLimit;
@ -63,8 +64,8 @@ class RateLimitingMiddleware extends Middleware {
parent::beforeController($controller, $methodName);
$rateLimitIdentifier = get_class($controller) . '::' . $methodName;
if ($this->session->exists('app_api_system')) {
// Bypass rate limiting for app_api
if ($this->userSession instanceof Session && $this->userSession->getSession()->get('app_api') === true && $this->userSession->getUser() === null) {
// if userId is not specified and the request is authenticated by AppAPI, we skip the rate limit
return;
}

Loading…
Cancel
Save