ALWAYS VERIFY
WITH AN
EXPECTED
ALGORITHM
@philnash
Slide 59
Slide 59 text
PUBLIC KEYS
AND
ENCRYPTION
@philnash
Slide 60
Slide 60 text
WHAT CAN YOU
USE THEM FOR?
Slide 61
Slide 61 text
STATELESS
SESSIONS
@philnash
Slide 62
Slide 62 text
Stateless sessions - revocation
• exp claim - token expiry time
• Without state, you can't revoke individual tokens
except by expiry
• Requires a blacklist of revoked tokens to check
against
@philnash
Slide 63
Slide 63 text
Stateless sessions - storage
• Cookies
• ensure you have CSRF protection
• localStorage
• vulnerable to XSS
• requires JS to store and insert as an
Authentication header
@philnash
Slide 64
Slide 64 text
MICROSERVICE
ARCHITECTURE
@philnash
Slide 65
Slide 65 text
Microservice architecture
• Authentication server signs tokens with private
key
• Other servers can verify with public key
@philnash
Slide 66
Slide 66 text
OPENID
CONNECT
@philnash
Slide 67
Slide 67 text
CLIENT SIDE
AUTH FOR 3RD
PARTY
SERVICES
@philnash
Slide 68
Slide 68 text
JWT, WTF?
Slide 69
Slide 69 text
JWT
“JSON Web Token (JWT) is a compact, URL-safe
means of representing claims to be transferred
between two parties.”
@philnash