Huiwen
9719e619be
[IdP] add user_id claim and allow to customize OIDC subject via FF ( #19455 )
...
* [papi] add user_id field to idp token
* [idp] allow to customize claim keys
* fixup update FF
* Update splitor and add more unit tests
2024-02-22 19:03:03 +02:00
Filip Troníček
112eefcc56
[papi] List editor options ( #18530 )
...
* options.init
* Respond with options
* Move to editor service
* Unused imports
* Mount ot the correct service
* Sort by orderkey
* Simplify enum name
* Add tests
* Options -> `result` for consistency
* fix result field
2023-08-18 11:19:44 +02:00
Filip Troníček
614007dde5
[papi]: Add GetSuggestedRepoURLs ( #18514 )
...
* [papi]: Add `GetSuggestedRepos`
* Rename method
* req to be consistent
* Move to SCMService
* Remove usr impl
* Add tests
* Revert billing test change
* Revert user changes
* --
2023-08-15 13:55:41 +02:00
Anton Kosyakov
b3ae12f956
git real time ( #18323 )
2023-08-03 20:51:28 +08:00
Milan Pavlik
ff4876856c
[server, papi] Track login completed metrics by outcome, type ( #18254 )
...
Co-authored-by: geropl <gero@gitpod.io>
2023-07-27 20:29:28 +08:00
Milan Pavlik
fcb8c5f79d
[papi] Extract JWT cookie when extracting creds ( #17875 )
...
* [papi] Extract JWT cookie when extracting creds
* fix
* fix
* fix
* Fix
* fix
* Update components/public-api-server/pkg/auth/middleware.go
Co-authored-by: Gero Posmyk-Leinemann <32448529+geropl@users.noreply.github.com>
---------
Co-authored-by: Gero Posmyk-Leinemann <32448529+geropl@users.noreply.github.com>
2023-06-14 15:37:04 +08:00
Milan Pavlik
9937cd864d
[go] Remove jwtSessions feature flag ( #17867 )
2023-06-08 15:29:58 +08:00
Pudong
6c44003efa
[idp] periodically persist public key ( #17759 )
...
* [idp] make key id stable
* [idp] periodically persist public key
* fix
* addressed feedback
* Update components/public-api-server/pkg/identityprovider/cache.go
Co-authored-by: Christian Weichel <chris@gitpod.io>
* use option
* add test
* fix
---------
Co-authored-by: Christian Weichel <chris@gitpod.io>
2023-06-02 00:22:06 +08:00
Milan Pavlik
0dc46c5bcc
[public-api] Measure incoming JWT Sessions - WEB-102 ( #17345 )
...
* retest
* retest
* [installer] Add cookie name to config
* Fix
* retest
* [installer] Add cookie name to config
* [public-api] Measure incoming JWT Sessions
* fix
* Fix
* Fix
* fix
* retest
2023-04-24 21:34:45 +08:00
Milan Pavlik
d9ccc1d141
[papi] OIDC service signs state with HS256, reusing signing PK - WEB-206 ( #17328 )
...
* [papi] OIDC service signs state with RSA256
* Fix
* retest
* fix
* add test
2023-04-24 17:14:45 +08:00
Milan Pavlik
d069f76edc
[public-api] Refactor JWT Sign/Verify to be reusable for OIDC - WEB-206 ( #17327 )
...
* [public-api] Refactor JWT Sign/Verify to be reusable for OIDC
* fix
2023-04-24 15:14:45 +08:00
Milan Pavlik
4f55ce16da
[public-api] JWT Signer & Verifier WEB-101 ( #17308 )
...
* [public-api] JWT Signer & Verifier
* upgrade other to v5
2023-04-21 17:32:42 +08:00
Milan Pavlik
45cf0d2319
[public-api] Explicit panic handler ( #17105 )
2023-03-31 10:03:40 +02:00
Christian Weichel
da4cafd5e5
Gitpod OIDC Identity Provider ( #16482 )
...
* Prototype IDP provider
* [gp cli] Add IDP commands
* [public-api] Remove zitadel based IDP implementation
* [gitpod-cli] Add IDP support for Vault
* [idp] Remove per-org IDP
* [idp] Add key cache and random key IDs
* [idp] Defer GetIDToken authorisation to server
* [idp] Add Redis public key cache
* [gitpod-cli] Hide IDP commands
* [idp] Add key ID to JWT
* [idp] Add unit tests
* [idp] Adress review comments
* [public-api-server] Use logging middleware globally
* [public-api-server] Simplify service registration
* [idp] Add Redis outage resilience
2023-03-03 17:11:01 +01:00
Alex Tugarev
80dc959279
[oidc] encode and validate state params
...
Using JWT tokens for encoding/decoding/validation of state params carried throughout the OIDC/OAuth2 flow.
Validating of integrity is crucial, as this piece of information contains the ID of the OIDC client to continue with when Gitpod receives the callback from a 3rd party. Tests should show that expiration time is checked and signature validation is effective.
2023-02-15 18:55:20 +01:00
Milan Pavlik
0a7ca4c08a
Use context to store and populate origin
2023-02-15 15:39:20 +01:00
Alex Tugarev
3ef29bf278
[papi] Add signing secret for JWTs
...
Praparation to use with `golang-jwt/jwt`
2023-01-30 11:15:37 +01:00
Milan Pavlik
17e83b9985
[iam] Remove component
2023-01-23 17:33:31 +01:00
Milan Pavlik
27f1ba0939
[public-api] Move oidc handler package from iam
2023-01-23 15:45:31 +01:00
Milan Pavlik
0aad145ad4
[public-api] Bind OIDC HTTP service to Public API
2023-01-23 15:24:30 +01:00
Milan Pavlik
b984390bfb
[oidc] Move create RPC directly to public-api
2023-01-20 15:20:28 +01:00
Milan Pavlik
7012fe2ce3
[oidc] List client configs API implementation
2023-01-19 14:30:27 +01:00
Milan Pavlik
da841d0c1b
[public-api] Set proxy connection pool to size 500
2023-01-16 13:47:24 +01:00
Alex Tugarev
ba6ce0ecce
[public-api] Implement CreateClientConfig
2023-01-13 17:37:21 +01:00
Milan Pavlik
0309d14721
[gitpod-db] Helper to construct db connection params from env
2022-12-21 10:07:30 -03:00
Gero Posmyk-Leinemann
8a03b3a156
[installer, gitpod-db] Introduce database.ssl.ca
2022-12-15 12:29:24 -03:00
Alex Tugarev
a51c8b662e
🧹 fix typo and copy-paste-error
2022-12-15 09:46:24 -03:00
Christian Weichel
478a75e744
Switch license to AGPL
2022-12-08 13:05:19 -03:00
Milan Pavlik
114a3bd1b4
[oidc] Add stub RPCs
2022-12-07 05:05:17 -03:00
Milan Pavlik
0d759f7a66
[public-api] Implement ProjectsService.CreateProject
2022-11-23 10:58:53 -03:00
Milan Pavlik
a0a9ddddc5
[public-api] Use personal access token signing key
2022-11-22 07:11:52 -03:00
Laurie T. Malau
ee08e7863c
[db] Move db models to gitpod-db/go module
2022-11-21 08:37:50 -03:00
Jean Pierre
cd144de51f
Add IDEClientService
2022-11-17 07:07:46 +02:00
Milan Pavlik
728d87011f
[public-api] Wire up DB connection
2022-11-16 18:17:46 +02:00
Laurie T. Malau
98e6fe730c
[public api] Use tokens feature flag
2022-11-15 14:36:45 +02:00
Jean Pierre
5c8f4c1f32
User service
2022-11-12 11:34:42 +02:00
Laurie T. Malau
2fef159ce4
[public api] Wire up UnimplementedTokensService
2022-11-11 18:25:41 +02:00
Milan Pavlik
2926d142ed
[public-api] Make publiic api package match path
2022-11-09 09:42:39 +01:00
Milan Pavlik
4c3007af75
[public-api] Implement experimental TeamsService.CreateTeam
2022-11-01 13:56:06 +01:00
Milan Pavlik
9d1a82446d
[public-api] Implement connection pool with LRU cache
2022-10-31 13:59:05 +01:00
Milan Pavlik
2d888a5ded
[public-api] Move API definitions to experimental package
2022-10-19 17:23:34 +02:00
Milan Pavlik
063be607c6
[public-api] Add logs interceptor
2022-10-19 11:59:34 +02:00
Milan Pavlik
d6242ed18a
[public-api] Remove unimplemented, or no longer needed RPCs
2022-10-19 10:34:34 +02:00
Milan Pavlik
bbc39b9d33
[public-api] Add client/server metrics interceptor
2022-10-19 09:33:34 +02:00
Milan Pavlik
0a476c52e8
[public-api] U Refactor to use connect handlers, route to HTTP server
2022-10-12 12:19:27 +02:00
Milan Pavlik
46d734e482
[public-api] Authentication interceptors for connect API
2022-10-10 16:54:26 +02:00
Milan Pavlik
e836dd4fe3
[public-api] Bind unimplemented WorkspacesServiceHandler using Connect
2022-10-06 16:06:22 +02:00
Milan Pavlik
31f273205f
[proxy] Route HTTP 1.x requests to public-api-server
2022-10-05 07:56:20 +02:00
Milan Pavlik
aa6a8ffb0e
[public-api] Reeuse metrics registry from baseserver
2022-10-03 13:50:19 +02:00
Milan Pavlik
42224aeee9
[baseserver] Add metric with version of the server, use in public api and usage
2022-09-16 14:20:17 +02:00