* Use zitadel library for oidce token validation logic.
* Add generic ValidateToken - only functional change is that the 15s provider timeout is used for all providers.
* Use oidc.ValidateToken for azure.
* Use zitadel to check discovery for tctl sso configure.
* Update .golangci.yml.
* go mod tidy.
* Address linter/go.mod comments.
* Add GetSubject.
* Fix tests.
* Re-embed jwt.Claims for Azure; Fix tests.
* Use oidc.TokenClaims as a superset of jwt.Claims for azure claims.
* Address comments.
* Persist Join Attributes in X509 Cert
* Use proto names when encoding
* Fix kube tests
* Fix other kube tests
* Fix interface nilness issue
* Add some tests to the TLSCA package and issuer
* Add more E2E style test that covers join attributes and workload id
* Explain test better
* Add JoinAttrs test for bots
* Remove methods no longer necesarry
* Fix imports
* Fix deprecation version
* Add comment explaining why we return even on failure
* Add GoDoc
* Fix logger
* Use auth server logger
* Remove unneccessary import
* Add support for `include_enterprise_slug` in `github` joining
* Correct assertiosn in github validator token test
* Remove `want` in TestIDTokenValidator_Validate
* Fix missing `should` in docs
Co-authored-by: Krzysztof Skrzętnicki <krzysztof.skrzetnicki@goteleport.com>
* Fix spelling of customize in docs
* Update operator CRDs
* Regen protos
* Apply suggestions from code review
Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
* Try both under same header
* Try H4
* Remove spurious period
* Use bold rather than heading
---------
Co-authored-by: Krzysztof Skrzętnicki <krzysztof.skrzetnicki@goteleport.com>
Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
* Add support for GHES joining
* Add tests for GHES ID Token validation
* Add test covering Auth server github join with GHES override
* Use correct ctx
* Name interface method parameters for clarity
* Use "scheme" instead of "proto"
* Improve docs, validation and add tests
* Add API types for CircleCI joining
* Add validation for CircleCI configuration
* Add JoinMethodCircleCI across codebase
* Add token validator and token source for circleci
* Update join methods RFD
* Add CircleCI token source to register.go
* Add serverside support for circleci joining
* Add test for TokenSource
* Add success case for token validation test
* Add expired test case
* Add test case for token from another org
* Test RegisterWithToken for CircleCI
* Refactor GitHub RegisterUsingToken tests
* Refactor CircleCI RegisterUsingToken tests
* Add tests for ProvisionTokenSpecV2
* Appease linters
* Go Imports files
* Fix failing test for msising IDtoken
* Update lib/auth/join_circleci.go
Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
* Move test server cleanup closer to initialisation
* Fix weird import reordering
* Include unexpected type in error message
* Simplify boolean algebra :)
Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
* Introduce Github Actions join support
* Go mod tidy
* run goimports on source files
* Address PR comments
* More PR review comments
* Changes to tests based on PR feedback
* Improve error message in github rule validation
* Add support for SHA
* Add short message describing which fields shouldb be included