feat: force auth for particular event types

This commit is contained in:
Vlad Stan 2023-02-15 11:41:50 +02:00
parent 58723a387f
commit a8a2ef5e27
3 changed files with 54 additions and 8 deletions

View file

@ -66,12 +66,13 @@ class StorageSpec(Spec):
class AuthSpec(BaseModel):
require_auth_events = Field(False, alias="requireAuthEvents")
skiped_auth_events = Field([], alias="skipedAuthEvents")
forced_auth_events = Field([], alias="forcedAuthEvents")
require_auth_filter = Field(False, alias="requireAuthFilter")
def event_requires_auth(self, kind: int) -> bool:
if not self.require_auth_events:
return False
return kind not in self.skiped_auth_events
if self.require_auth_events:
return kind not in self.skiped_auth_events
return kind in self.forced_auth_events
class PaymentSpec(BaseModel):