ContainerImage.Pinniped/internal/controller/supervisorconfig
Ryan Richard e0ecdc004b Allow dynamic clients to be used in downstream OIDC flows
This is only a first commit towards making this feature work.
- Hook dynamic clients into fosite by returning them from the storage
  interface (after finding and validating them)
- In the auth endpoint, prevent the use of the username and password
  headers for dynamic clients to force them to use the browser-based
  login flows for all the upstream types
- Add happy path integration tests in supervisor_login_test.go
- Add lots of comments (and some small refactors) in
  supervisor_login_test.go to make it much easier to understand
- Add lots of unit tests for the auth endpoint regarding dynamic clients
  (more unit tests to be added for other endpoints in follow-up commits)
- Enhance crud.go to make lifetime=0 mean never garbage collect,
  since we want client secret storage Secrets to last forever
- Move the OIDCClient validation code to a package where it can be
  shared between the controller and the fosite storage interface
- Make shared test helpers for tests that need to create OIDC client
  secret storage Secrets
- Create a public const for "pinniped-cli" now that we are using that
  string in several places in the production code
2022-07-14 09:51:11 -07:00
..
activedirectoryupstreamwatcher Merge branch 'dynamic_clients' into require-groups-scope 2022-06-22 14:27:06 -07:00
generator All controller unit tests should not cancel context until test is over 2021-03-04 17:26:01 -08:00
ldapupstreamwatcher New controller watches OIDCClients and updates validation Conditions 2022-06-17 13:11:26 -04:00
oidcclientwatcher Allow dynamic clients to be used in downstream OIDC flows 2022-07-14 09:51:11 -07:00
oidcupstreamwatcher New controller watches OIDCClients and updates validation Conditions 2022-06-17 13:11:26 -04:00
testdata Forgot to commit some test fixtures in a prior commit 2020-10-27 17:00:00 -07:00
upstreamwatchers Refactor some variable names and update one comment 2022-01-14 10:06:00 -08:00
federation_domain_watcher_test.go Merge branch 'main' into upstream_access_revocation_during_gc 2022-01-14 10:49:22 -08:00
federation_domain_watcher.go Merge branch 'main' into upstream_access_revocation_during_gc 2022-01-14 10:49:22 -08:00
jwks_observer_test.go All controller unit tests should not cancel context until test is over 2021-03-04 17:26:01 -08:00
jwks_observer.go Use new 'go.pinniped.dev/generated/latest' package. 2021-02-16 13:00:08 -06:00
jwks_writer_test.go All controller unit tests should not cancel context until test is over 2021-03-04 17:26:01 -08:00
jwks_writer.go Update to github.com/golangci/golangci-lint/cmd/golangci-lint@v1.44.2 2022-03-08 12:28:09 -08:00
tls_cert_observer_test.go Use hostname instead of host and split on ":" 2021-06-28 23:03:05 +00:00
tls_cert_observer.go Use hostname instead of host and split on ":" 2021-06-28 23:03:05 +00:00