Explorar o código

fix Cotisation security

Olivier Massot %!s(int64=3) %!d(string=hai) anos
pai
achega
68c52f4aad
Modificáronse 2 ficheiros con 3 adicións e 3 borrados
  1. 1 1
      doc/mercure.md
  2. 2 2
      src/ApiResources/Cotisation/Cotisation.php

+ 1 - 1
doc/mercure.md

@@ -43,7 +43,7 @@ Le client web, lui s'est abonné aux mises à jour
 
 ## Sécurité
 
-Pour sécuriser les échanges et s'assurer que seul l'utilisateur voulu recoive l'update, on utilise le [système d'autorisations
+Pour sécuriser les échanges et s'assurer que seul l'utilisateur voulu reçoive l'update, on utilise le [système d'autorisations
 prévu par mercure](https://symfony.com/doc/5.4/mercure.html#authorization).
 
 Les updates publiées par ap2i sont marquées comme `private`, via le 3e argument passé au constructeur de l'update :

+ 2 - 2
src/ApiResources/Cotisation/Cotisation.php

@@ -18,7 +18,7 @@ use Symfony\Component\Validator\Constraints as Assert;
         'get' => [
             'method' => 'GET',
             'path' => '/cotisations/{organizationId}',
-            'security' => 'is_granted("COTISATION_CALL", object)',
+            'security' => 'is_granted("ROLE_COTISATION", object) and object.getOrganizationId() == user.getOrganization().getId()',
         ]
     ]
 )]
@@ -65,4 +65,4 @@ class Cotisation implements ApiResourcesInterface
 
         return $this;
     }
-}
+}