Configure Single Sign-on
claims CEL expression
(syntax of CEL), which is evaluated when a user logs in. This feature is particularly useful for restricting access to specific teams, groups, or email domains. It can:
gitpod-team
gitpod-team
and gitpod-team-2/sub_group
@gitpod.io
Create App Integration
Applications - Okta Dashboard
Next
OIDC - Open ID Connect
Web Application
Create App Integration - Okta Dashboard
Gitpod
(or choose your own name)none
none
Specify Okta settings - Okta Dashboard
Client ID
and use it as input in Gitpod setup (see details above under “General instructions”)Client Secret
and use it as input in Gitpod setup (see details above under “General instructions”)Issuer
to your Okta instance, eg: https://amazingco.okta.com/
Configure Client Secrets - Okta Dashboard
Create credentials - Google Cloud Dashboard
Cell setup SSO page
OAuth Client Created - Google Cloud Dashboard
https://accounts.google.com
New Registration
New Registration
Gitpod
Web
https://<YOUR GITPOD DOMAIN>/iam/oidc/callback
Register Application - Azure AD Dashboard
New client secret
Client secret expiry
Client secret expiry
Add a permission
email
openid
profile
OpenID Scopes
email
claim is part of the standard OIDC specification, depending on the setup, Microsoft Entra ID does not include it by default in ID tokens. Under Manage, select Token configuration and fix this:
email
scope
Add email scope
Endpoints tag
Endpoints tag
Note: Validate the Issuer URL by checking the OIDC Discovery location. In some configurations, the Issuer URL needs to be adjusted.
https://login.microsoftonline.com/{tenant}/v2.0
, the OIDC Discovery location is https://login.microsoftonline.com/{tenant}/v2.0/.well-known/openid-configuration
. Open this URL in your browser and check the issuer
field.
issuer
field in the OIDC Discovery output and ensure this matches the Authority URL (Issuer URL).
If not, e.g. if it reads like https://sts.windows.net/{tenant}
, please try again with{authority_url}/v2.0/.well-known/openid-configuration
and use {authority_url}/v2.0
as Issuer URL in Gitpod’s SSO setup.
Client ID
Congiton User Pool Process
Congito Sing In Requirements
Cognito user pool
as provider typeCongito Security Requirements
Congito Security Requirements
Required Attributes
section, ensure that name is selected:Required Attribute Name
Configure message delivery
Integrate your app
Generate a client secret
in the Client secret section:
Required client secret
Required callback url
Cognito
(under Advanced app client settings)Auth Code Grant
OpenID
, Email
, Profile
:
Required callback url
Issuer URL
issuer URL
highlighted above into the respective field on the Gitpod SSO setup pageApp Client Data
Client ID
from the Cognito app client page into the respective field on the Gitpod SSO setup pageClient Secret
into the respective field on the Gitpod SSO setup pagehttps://gitlab-demo.gitpod.io/admin/applications
.
New application
button.
New Application - GitLab Dashboard
read_user
, openid
, profile
and email
Application Settings - GitLab Dashboard
https://gitlab-demo.gitpod.io
Application Settings Saved - GitLab Dashboard
claims
with CEL expression (syntax
of CEL).
More details see step 6.https://gitlab.com/groups/<group_name>/-/settings/applications
.
Add new application
button.
New Application - GitLab Dashboard
read_user
, openid
, profile
and email
Application Settings - GitLab Dashboard
Application Settings - GitLab Dashboard - 2
https://gitlab.com
Application Settings Saved - GitLab Dashboard
claims
with CEL expression (syntax
of CEL)gitpod-team
gitpod-team
and gitpod-team-2/sub_group
@gitpod.io