1. 17 Apr, 2018 2 commits
  2. 17 Jan, 2018 1 commit
  3. 16 Jan, 2018 1 commit
    • Eric Chiang's avatar
      NewVerifier: fix defaulting of RS256 · 20c0c224
      Eric Chiang authored
      When NewVerifier was introduced, it forgot to default the
      SupportedSigningAlgs value in the verification config. This means
      an attacker can pass a token signed with any asymmetric "alg" value.
      
      This isn't a P0 because the public key set from the provider should
      only return asymmetric keys, so an attacker can't sneak a token
      signed with a symmetric algorithm like HS512. RS256 is also the
      weakest hash supported by square/go-jose, so you can't downgrade to
      a weaker signing hash. Additionally, using jose.ParseSigned ensures
      tokens encrypted with algorithms like A128GCM are rejected.
      
      Additionally NewVerifier isn't expected to be used commonly. It's
      mostly for testing (though that doesn't reduce the severity).
      
      Unify the verifier creation code and make it impossible to pass an
      empty list of SupportedSigningAlgs.
      
      No new tests because the Verify path is already tested.
      20c0c224
  4. 04 Jan, 2018 2 commits
  5. 20 Nov, 2017 2 commits
  6. 26 Oct, 2017 1 commit
  7. 21 Oct, 2017 1 commit
    • Eric Chiang's avatar
      *: expose KeySet, NewRemoteKeySet, and NewVerifier · 43cab48f
      Eric Chiang authored
      Expose internal types to let users create IDTokenVerifiers without
      using metadata discovery (/.well-known/openid-configuration). This
      expands support to providers that don't implement discovery, and
      lets users deliver verification keys out-of-band.
      43cab48f
  8. 20 Oct, 2017 1 commit
  9. 02 Oct, 2017 1 commit
  10. 01 Oct, 2017 1 commit
  11. 11 Jul, 2017 2 commits
  12. 16 Jun, 2017 1 commit
  13. 22 May, 2017 1 commit
  14. 09 May, 2017 1 commit
  15. 02 May, 2017 1 commit
    • Eric Chiang's avatar
      *: remove nonce verification code · 9e2f6d98
      Eric Chiang authored
      Problems with this:
      * Code that didn't originate an oauth2 flow would always have to
        skip nonce checks.
      * Code that checks nonces is likely to be dependent on the context
        of the Verify call, for example an HTTP request in a handler. The
        hook doesn't provide this context since its global to the verifier.
      * The weirdness of this being conditional to if the nonce was present.
      
      Overall I think it's simpler to let the user do the nonce verification.
      9e2f6d98
  16. 26 Apr, 2017 1 commit
    • Eric Chiang's avatar
      *: various cleanups and improved unit testing · ecdf5af1
      Eric Chiang authored
      Biggest cleanup is that the remoteKeySet now does the key ID matching
      instead of the idTokenVerifier.
      
      On the testing side, added tests that actually exercise the expected
      caching behavior.
      ecdf5af1
  17. 25 Apr, 2017 1 commit
  18. 20 Apr, 2017 1 commit
  19. 07 Mar, 2017 2 commits
  20. 02 Mar, 2017 2 commits
  21. 28 Feb, 2017 1 commit
  22. 30 Jan, 2017 1 commit
  23. 27 Jan, 2017 2 commits
  24. 26 Jan, 2017 1 commit
  25. 19 Jan, 2017 1 commit
  26. 18 Jan, 2017 1 commit
  27. 06 Jan, 2017 2 commits
  28. 28 Dec, 2016 1 commit
  29. 27 Dec, 2016 1 commit
  30. 29 Nov, 2016 2 commits
  31. 28 Nov, 2016 1 commit