Hidetake Iwata
898e8a12de
Refactor PKCE implementation ( #1239 )
2025-01-12 21:41:20 +09:00
Hidetake Iwata
606f1cd0b6
Remove unused struct field ( #1238 )
2025-01-12 15:55:26 +09:00
Hidetake Iwata
c66570c030
Remove unused struct member ( #1224 )
2025-01-08 12:50:15 +09:00
Hidetake Iwata
438068e9de
refactor: Move useAccessToken to oidc.Provider ( #1160 )
...
* refactor: Move useAccessToken to oidc.Provider
* Generated by GitHub Actions (go / generate)
https://github.com/int128/kubelogin/actions/runs/11530911738
---------
Co-authored-by: update-generated-files-action <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-26 21:07:44 +09:00
Hidetake Iwata
3d114bfeba
Lock token cache file before authentication ( #1126 )
...
* Lock token cache file in authentication
* Fix tests
* make generate
* Lock before FindByKey
* Fix test
2024-09-21 14:54:32 +09:00
Hidetake Iwata
66127ff3fc
Migrate to mockery packages feature ( #1124 )
...
* Migrate to mockery packages feature
* Fix workflow
2024-08-17 12:27:13 +09:00
Adam Kafka
905238ce07
Add new --oidc-use-access-token flag to get-token ( #1084 )
...
* Add new `--oidc-use-access-token` flag to `get-token`
Implements https://github.com/int128/kubelogin/issues/1083 . See
description there for context.
In its current form, this PR is bare bones functionality. I have not yet
added any tests to confirm this behavior. Additionally, we could
consider updtating some of the naming. It is confusing to return a
`TokenSet` where `IDToken` actually has an `accessToken`. I'm open to
feedback on how best to improve this.
However, this PR is functional. I have validated it locally. Without
adding `--oidc-use-access-token`, and `id_token` is successfully
returned. Adding `--oidc-use-access-token` results in an `access_token`
being successfully returned.
* Fix failing tests
Needed to plumb through our new parameter `UseAccessToken` to the mocks
as well.
* Add a test to make sure new flag is plumbed through
* Support Access Tokens whose audience differ from the client_id
As noted in the PR, there are some cases where the access token `aud`
field will not be the `client_id`. To allow for these, we use a
different token verifier that will not verify that claim.
---------
Co-authored-by: Adam kafka <akafka@tesla.com >
2024-08-16 16:57:05 +09:00
Hidetake Iwata
622dc5ba0b
Refactor #944 ( #951 )
2023-06-24 15:26:39 +09:00
Reza Nikoopour
069ff68d99
Added flag to let user set redirect uri for authcode-keyboard ( #944 )
2023-06-23 16:53:55 +09:00
renovate[bot]
9e2fcd8cdb
fix(deps): update module github.com/golang-jwt/jwt/v4 to v5 ( #925 )
...
* fix(deps): update module github.com/golang-jwt/jwt/v4 to v5
* Replace with `jwt.RegisteredClaims`
* Replace with `jwt.NewNumericDate`
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hidetake Iwata <int128@gmail.com >
2023-05-14 21:38:48 +09:00
Hidetake Iwata
10412effa2
Run go fmt ( #866 )
...
* Run go fmt
* Generated by GitHub Actions (go / generate)
https://github.com/int128/kubelogin/actions/runs/4971610724
---------
Co-authored-by: update-generated-files-action <41898282+github-actions[bot]@users.noreply.github.com>
2023-05-14 18:21:55 +09:00
Martin Linkhorst
f03d4fe821
get-token: add --force-refresh flag to refresh ID token ( #879 )
2023-02-17 15:25:11 +09:00
Hidetake Iwata
adfbc48b24
Handle verification_url field in device flow ( #846 )
2022-12-24 19:10:21 +09:00
Hidetake Iwata
345465a5d3
Refactor test ( #847 )
2022-12-24 17:00:59 +09:00
Bastian
cda2eccaac
feat(authentication): add oauth2 device grant ( #837 )
2022-12-22 08:03:10 +09:00
Hidetake Iwata
7152bccd21
refactor: migrate to Testify Mock ( #739 )
2022-07-16 16:55:51 +09:00
Hidetake Iwata
237e53313d
Add flag to set custom browser command ( #622 )
...
* Add flag to set custom browser command
* Use --browser-command in system_test
* Add --browser-command= to setup message
2021-09-05 11:35:03 +09:00
Hidetake Iwata
b1d8e8f7e1
Refactor: rewrite with Go errors package ( #427 )
2020-11-21 12:10:42 +09:00
Hidetake Iwata
5a3227409c
Refactor: rename to infrastructure package ( #426 )
2020-11-21 07:56:52 +09:00
Hidetake Iwata
13d232ec21
Refactor: move oidc/client package ( #425 )
2020-11-21 07:27:34 +09:00
Hidetake Iwata
34762216c1
Refactor: extract tlsclientconfig.Config ( #409 )
2020-11-03 14:37:24 +09:00
Hidetake Iwata
64bfc5a465
Refactor authentication use-cases ( #395 )
2020-10-03 20:01:26 +09:00
Hidetake Iwata
5b2c82fc33
Refactor: replace DTO with oidc.TokenSet type ( #394 )
...
* Refactor: remove IDTokenClaims from TokenSet and decode in use-cases
* Refactor: use oidc.TokenSet for cache repository
2020-10-03 17:49:21 +09:00
Hidetake Iwata
1dee4a354e
Refactor: extract oidc.Provider ( #393 )
2020-10-03 08:35:35 +09:00
Hidetake Iwata
ebdfcfb1c8
Add --authentication-timeout-sec flag ( #387 )
2020-09-27 21:55:55 +09:00
TJ Miller
56169d1673
Add support for HTTPS redirect URI ( #381 )
...
* Add local server certificate option
* fix trailing slash from step 5 kubectl config set-credentials
* Add local https documentation
* Change flags to --local-server-cert and --local-server-key
* Add tests for flags
Co-authored-by: TJ Miller <millert@us.ibm.com >
Co-authored-by: Hidetake Iwata <int128@gmail.com >
2020-09-25 09:44:00 +09:00
Hidetake Iwata
c051d4e51a
Refactor: close channel in writer goroutine ( #375 )
2020-09-03 06:44:46 +09:00
Hidetake Iwata
58d170fa65
Add --open-url-after-authentication option ( #350 )
...
* Add --open-url-after-authentication option
* Add integration test for --open-url-after-authentication
2020-08-01 10:38:33 +09:00
Hidetake Iwata
c488888834
Refactor: pull up packages of domain ( #349 )
2020-07-30 09:37:10 +09:00
Hidetake Iwata
2cd741735e
Refactor: move templates.AuthCodeBrowserSuccessHTML to authcode ( #348 )
2020-07-30 09:29:49 +09:00
Hidetake Iwata
dbb684f10e
Refactor: use oidc.TokenSet in adaptors ( #347 )
2020-07-30 09:26:21 +09:00
Hidetake Iwata
a0e81e762c
Refactor: split authentication package into methods ( #346 )
2020-07-30 00:31:23 +09:00
Hidetake Iwata
c4ce1629e2
Refactor: regenerate with the latest mockgen ( #345 )
2020-07-30 00:04:56 +09:00
Hidetake Iwata
804a245fde
Refactor: rename to AuthCodeBrowser ( #342 )
2020-07-26 18:49:22 +09:00
Hidetake Iwata
4f96435e97
Show debug logs in authentication ( #325 )
2020-07-14 09:50:02 +09:00
Hidetake Iwata
77a6b91be8
Change authentication success page more descriptive ( #312 )
...
* Refactor: rename to authcode_browser.go
* Change authentication success page more descriptive
2020-06-23 15:00:58 +09:00
Hidetake Iwata
e88138c640
Refactor: fix token verifier does not respect clock ( #290 )
2020-05-13 15:45:14 +09:00
Hidetake Iwata
175275bf3d
Fix to send challenge only if provider supports PKCE ( #283 )
2020-05-08 22:19:32 +09:00
Hidetake Iwata
59b5f1bd89
Add --oidc-redirect-url-hostname flag ( #269 )
2020-04-08 15:25:19 +09:00
Matthew M. Boedicker
123d7c8124
Add --oidc-extra-url-params argument ( #255 )
...
* Add --oidc-extra-url-params argument
This accepts a comma-separated list of key-value pairs that will be
added to get token requests as query string parameters.
Closes #254 .
* Refactor
- move code setting the extra params to the authorization code flow specific functions (it is not needed in ROPC flow)
- add unit tests
- rename flag to --oidc-auth-request-extra-params
- add description to README.md
* Add integration test for --oidc-auth-request-extra-params
Co-authored-by: Hidetake Iwata <int128@gmail.com >
2020-03-25 11:52:53 +09:00
Hidetake Iwata
0e2d402c40
Bump github.com/int128/oauth2cli to v1.9.0 ( #244 )
...
* Bump github.com/int128/oauth2cli to v1.9.0
* Generate state parameter and pass to oauth2cli
* Refactor: use base64.NoPadding
2020-02-22 15:26:54 +09:00
Hidetake Iwata
8b9e31b4c5
Refactor: error messages and testing/logger ( #243 )
...
* Refactor: respect -v option in testing/logger
* Refactor: revise error messages
2020-02-22 12:31:00 +09:00
Hidetake Iwata
d59e3355fe
Refactor: rename to adaptor/reader
2020-02-21 22:56:43 +09:00
Hidetake Iwata
9d2d0109d5
Refactor: extract adaptor/clock and testing/clock
2020-02-21 22:49:48 +09:00
Hidetake Iwata
aac8780caf
Refactor: move to testing/logger
2020-02-21 22:39:27 +09:00
Hidetake Iwata
f89525b184
Refactor: extract domain/jwt and testing/jwt ( #241 )
...
* Refactor: extract domain/jwt and testing/jwt
* Refactor: remove jwt-go dep from product code
2020-02-21 22:33:08 +09:00
Hidetake Iwata
2fa306c348
Improve error message if cannot open browser ( #230 )
2020-02-11 15:50:10 +09:00
Hidetake Iwata
c53d415255
Refactor test and interfaces ( #227 )
...
* Refactor: extract adaptors.browser package
* Refactor: rename to idp.Provider
* Refactor: rename to adaptors.credentialpluginwriter
2020-02-07 11:56:31 +09:00
Hidetake Iwata
d223175b92
Refactor dependency injection ( #209 )
...
* Refactor: use func type instead of factory interface
* Refactor: remove duplicated dependencies in di.go
2020-01-17 22:01:40 +09:00
Hidetake Iwata
76f61300d6
Refactor: extract oidc.Claims model ( #202 )
...
* Refactor: extract oidc.Claims model
* Refactor: extract Claims.IsExpired()
2019-12-26 20:17:30 +09:00