feat(lib): annotate cookies with what rule was passed (#576)

* feat(lib): annotate cookies with what rule was passed

Anubis JWTs now contain a policyRule claim with the cryptographic hash
of the rule that it passed. This is intended to help with a future move
away from proof of work being the default.

Signed-off-by: Xe Iaso <me@xeiaso.net>

* test(lib): fix cookie storage logic

Signed-off-by: Xe Iaso <me@xeiaso.net>

---------

Signed-off-by: Xe Iaso <me@xeiaso.net>
This commit is contained in:
Xe Iaso 2025-05-30 14:42:02 -04:00 committed by GitHub
parent 28ab29389c
commit fbbab5a035
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 164 additions and 23 deletions

12
lib/testdata/rule_change.yaml vendored Normal file
View file

@ -0,0 +1,12 @@
bots:
- name: old-rule
path_regex: ^/old$
action: CHALLENGE
- name: new-rule
path_regex: ^/new$
action: CHALLENGE
status_codes:
CHALLENGE: 401
DENY: 403