mirror of
https://github.com/penpot/penpot.git
synced 2025-07-14 03:17:18 +02:00
✨ Improve invitation token validation
This commit is contained in:
parent
b74631bf4a
commit
47363d96f1
6 changed files with 325 additions and 155 deletions
|
@ -26,10 +26,14 @@
|
|||
(t/encode))]
|
||||
(jwe/encrypt payload tokens-key {:alg :a256kw :enc :a256gcm})))
|
||||
|
||||
(defn decode
|
||||
[{:keys [tokens-key]} token]
|
||||
(let [payload (jwe/decrypt token tokens-key {:alg :a256kw :enc :a256gcm})]
|
||||
(t/decode payload)))
|
||||
|
||||
(defn verify
|
||||
[{:keys [tokens-key]} {:keys [token] :as params}]
|
||||
(let [payload (jwe/decrypt token tokens-key {:alg :a256kw :enc :a256gcm})
|
||||
claims (t/decode payload)]
|
||||
[sprops {:keys [token] :as params}]
|
||||
(let [claims (decode sprops token)]
|
||||
(when (and (dt/instant? (:exp claims))
|
||||
(dt/is-before? (:exp claims) (dt/now)))
|
||||
(ex/raise :type :validation
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue