ContainerImage.Pinniped/internal/controller
Ryan Richard 34509e7430 Add more unit tests for dynamic clients and enhance token exchange
- Enhance the token exchange to check that the same client is used
  compared to the client used during the original authorization and
  token requests, and also check that the client has the token-exchange
  grant type allowed in its configuration.
- Reduce the minimum required bcrypt cost for OIDCClient secrets
  because 15 is too slow for real-life use, especially considering
  that every login and every refresh flow will require two client auths.
- In unit tests, use bcrypt hashes with a cost of 4, because bcrypt
  slows down by 13x when run with the race detector, and we run our
  tests with the race detector enabled, causing the tests to be
  unacceptably slow. The production code uses a higher minimum cost.
- Centralize all pre-computed bcrypt hashes used by unit tests to a
  single place. Also extract some other useful test helpers for
  unit tests related to OIDCClients.
- Add tons of unit tests for the token endpoint related to dynamic
  clients for authcode exchanges, token exchanges, and refreshes.
2022-07-20 13:55:56 -07:00
..
apicerts Switch to go.uber.org/zap for JSON formatted logging 2022-05-24 11:17:42 -04:00
authenticator Bump project deps, including kube 0.23.6->0.24.1 and Go 1.18.1->1.18.3 2022-06-07 15:26:30 -04:00
conditionsutil New controller watches OIDCClients and updates validation Conditions 2022-06-17 13:11:26 -04:00
impersonatorconfig Switch to go.uber.org/zap for JSON formatted logging 2022-05-24 11:17:42 -04:00
issuerconfig When merging CredentialIssuer updates, don't overwrite LastUpdated. 2021-05-27 17:09:12 -05:00
kubecertagent Bump project deps, including kube 0.23.6->0.24.1 and Go 1.18.1->1.18.3 2022-06-07 15:26:30 -04:00
supervisorconfig Add more unit tests for dynamic clients and enhance token exchange 2022-07-20 13:55:56 -07:00
supervisorstorage Fix code that did not auto-merge correctly in previous merge from main 2022-01-14 10:59:39 -08:00
controller_test.go Clean this test up a trivial amount using `require.Implementsf()`. 2020-12-17 08:38:16 -06:00
utils.go Upstream Watcher Controller Syncs less often by adjusting its filters 2020-12-18 15:41:18 -08:00