DDD Melbourne 2019 : Modern Authentication 101

Aug. 7, 2019
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
DDD Melbourne 2019 :  Modern Authentication 101
1 of 90

More Related Content

What's hot

Implementing OAuth with PHPImplementing OAuth with PHP
Implementing OAuth with PHPLorna Mitchell
Implementing OAuthImplementing OAuth
Implementing OAuthleahculver
OAuth Base CampOAuth Base Camp
OAuth Base CampOliver Pfaff
OAuth 2.0 – A standard is coming of age by Uwe FriedrichsenOAuth 2.0 – A standard is coming of age by Uwe Friedrichsen
OAuth 2.0 – A standard is coming of age by Uwe FriedrichsenCodemotion
OAuth and why you should use itOAuth and why you should use it
OAuth and why you should use itSergey Podgornyy
Demystifying OAuth 2.0Demystifying OAuth 2.0
Demystifying OAuth 2.0Karl McGuinness

Similar to DDD Melbourne 2019 : Modern Authentication 101

REST Service Authetication with TLS & JWTsREST Service Authetication with TLS & JWTs
REST Service Authetication with TLS & JWTsJon Todd
Identity, Security and XML Web ServicesIdentity, Security and XML Web Services
Identity, Security and XML Web ServicesJorgen Thelin
Getting Started With WebAuthnGetting Started With WebAuthn
Getting Started With WebAuthnFIDO Alliance
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...Amazon Web Services
OAuth 2OAuth 2
OAuth 2ChrisWood262
SharePoint, ADFS and Claims AuthSharePoint, ADFS and Claims Auth
SharePoint, ADFS and Claims AuthKashif Imran

Recently uploaded

Dennis Wendland_The i4Trust Collaboration Programme.pptxDennis Wendland_The i4Trust Collaboration Programme.pptx
Dennis Wendland_The i4Trust Collaboration Programme.pptxFIWARE
Salesforce Miami User Group Event - 3rd QuarterSalesforce Miami User Group Event - 3rd Quarter
Salesforce Miami User Group Event - 3rd QuarterSkyPlanner
"Intro to Stateful Services or How to get 1 million RPS from a single node", ..."Intro to Stateful Services or How to get 1 million RPS from a single node", ...
"Intro to Stateful Services or How to get 1 million RPS from a single node", ...Fwdays
Brisbane MuleSoft Meetup 13 MuleSoft Maven and Managing Dependencies Part 1.pptxBrisbane MuleSoft Meetup 13 MuleSoft Maven and Managing Dependencies Part 1.pptx
Brisbane MuleSoft Meetup 13 MuleSoft Maven and Managing Dependencies Part 1.pptxBrianFraser29
"From Orchestration to Choreography and Back", Yevhen Bobrov "From Orchestration to Choreography and Back", Yevhen Bobrov
"From Orchestration to Choreography and Back", Yevhen Bobrov Fwdays
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestrationCamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestration
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestrationBernd Ruecker

Recently uploaded(20)

DDD Melbourne 2019 : Modern Authentication 101

Editor's Notes

  1. Cons of this approach Have to lookup database each time or save state about session Non standard ways of storing passwords Password management
  2. Malicious actor Weakest link exposes everything
  3. Existing trust relationship
  4. They are what the subject is or is not. It is up to the application receiving the incoming claim to map the is/is not claims to the may/may not rules of the application.
  5. Pros No credentials are given to the application Standardized way of storing credentials and managing passwords by well known IdPs.
  6. Utilize existing trust relationships Self contained token: Drivers License Reference Token: Visa application number Story about 3 store and pin
  7. Why protocols are important Why SAML was popular (Swiss army knife)
  8. Why protocols are important Why SAML was popular (Swiss army knife)
  9. Why JWT are more modern Light weight Self contained Verifiable
  10. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  11. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  12. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  13. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair) Wax seal
  14. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  15. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  16. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  17. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  18. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  19. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  20. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  21. HS256 Symmetric (Shared secret) RS256 Asymmetric key (certificate key pair)
  22. OAuth began in November 2006 when Blaine Cook was developing the Twitter OpenID implementation The OAuth 1.0 protocol was published as RFC 5849, in April 2010. The OAuth 2.0 framework was published as RFC 6749, in October 2012.
  23. OAuth began in November 2006 when Blaine Cook was developing the Twitter OpenID implementation The OAuth 1.0 protocol was published as RFC 5849, in April 2010. The OAuth 2.0 framework was published as RFC 6749, in October 2012.
  24. OpenID Connect specifications were launched on 2014. Google, Microsoft, PingIdentity and PayPal
  25. ClientId upon registration
  26. ClientId upon registration
  27. ClientId upon registration
  28. ClientId upon registration
  29. Admin must consent to client application scopes Non interactive flow
  30. Butler example Delegation JWT Bearer Authorization Grant (RFC 7523) Token Exchange Flow Application needs to request scopes for API A and B up front
  31. Input constrained devices
  32. Input constrained devices
  33. Input constrained devices
  34. Input constrained devices
  35. Input constrained devices
  36. Input constrained devices
  37. Convert legacy applications to use OAuth
  38. Proof key for code exchange
  39. Sponsors