| 
 | 1 | +---  | 
 | 2 | +id: lambdatest-sso-oidc  | 
 | 3 | +title: LambdaTest SSO Integration Using OIDC  | 
 | 4 | +hide_title: true  | 
 | 5 | +sidebar_label: OIDC Integration  | 
 | 6 | +description: Integrate your identity provider with your LambdaTest organization through OIDC (OpenID Connect) for seamless single sign-on authentication.  | 
 | 7 | +keywords:  | 
 | 8 | +  - sso  | 
 | 9 | +  - lambdatest sso  | 
 | 10 | +  - oidc  | 
 | 11 | +  - openid connect  | 
 | 12 | +  - identity provider  | 
 | 13 | +  - managed sso  | 
 | 14 | +  - azure ad  | 
 | 15 | +  - google workspace  | 
 | 16 | +  - okta  | 
 | 17 | +url: https://www.lambdatest.com/support/docs/lambdatest-sso-oidc/  | 
 | 18 | +site_name: LambdaTest  | 
 | 19 | +slug: lambdatest-sso-oidc/  | 
 | 20 | +---  | 
 | 21 | + | 
 | 22 | +<script type="application/ld+json"  | 
 | 23 | +      dangerouslySetInnerHTML={{ __html: JSON.stringify({  | 
 | 24 | +       "@context": "https://schema.org",  | 
 | 25 | +        "@type": "BreadcrumbList",  | 
 | 26 | +        "itemListElement": [{  | 
 | 27 | +          "@type": "ListItem",  | 
 | 28 | +          "position": 1,  | 
 | 29 | +          "name": "LambdaTest",  | 
 | 30 | +          "item": "https://www.lambdatest.com"  | 
 | 31 | +        },{  | 
 | 32 | +          "@type": "ListItem",  | 
 | 33 | +          "position": 2,  | 
 | 34 | +          "name": "Support",  | 
 | 35 | +          "item": "https://www.lambdatest.com/support/docs/"  | 
 | 36 | +        },{  | 
 | 37 | +          "@type": "ListItem",  | 
 | 38 | +          "position": 3,  | 
 | 39 | +          "name": "OIDC Integration",  | 
 | 40 | +          "item": "https://www.lambdatest.com/support/docs/lambdatest-sso-oidc/"  | 
 | 41 | +        }]  | 
 | 42 | +      })  | 
 | 43 | +    }}  | 
 | 44 | +></script>  | 
 | 45 | + | 
 | 46 | +# LambdaTest SSO Integration Using OIDC  | 
 | 47 | + | 
 | 48 | +* * *  | 
 | 49 | + | 
 | 50 | +LambdaTest provides seamless Single Sign-On (SSO) integration with various identity providers using OpenID Connect (OIDC), enabling your team to access LambdaTest using their existing organizational credentials. This managed SSO solution streamlines user management and enhances security by centralizing authentication through your identity provider.  | 
 | 51 | + | 
 | 52 | +This comprehensive guide will walk you through configuring OIDC-based SSO between your LambdaTest organization and your identity provider, using Azure AD as the example throughout the documentation.  | 
 | 53 | + | 
 | 54 | + | 
 | 55 | +## What is OIDC (OpenID Connect)?  | 
 | 56 | + | 
 | 57 | +* * *  | 
 | 58 | + | 
 | 59 | +OpenID Connect (OIDC) is a simple identity layer built on top of the OAuth 2.0 protocol. It allows clients to verify the identity of the end-user based on the authentication performed by an authorization server, as well as to obtain basic profile information about the end-user in an interoperable and REST-like manner.  | 
 | 60 | + | 
 | 61 | +**Key Benefits of OIDC:**  | 
 | 62 | +- **Simplified Integration**: Easier to implement compared to SAML  | 
 | 63 | +- **Modern Standard**: Built on OAuth 2.0, widely adopted  | 
 | 64 | +- **RESTful**: Uses JSON and HTTP, making it developer-friendly  | 
 | 65 | +- **Flexible**: Supports various authentication flows  | 
 | 66 | +- **Secure**: Industry-standard security practices  | 
 | 67 | + | 
 | 68 | +## Prerequisites  | 
 | 69 | + | 
 | 70 | +* * *  | 
 | 71 | + | 
 | 72 | +To enable LambdaTest SSO through OIDC integration, you will need:  | 
 | 73 | + | 
 | 74 | +- **Identity Provider Access**: Administrative access to your identity provider  | 
 | 75 | +- **LambdaTest Enterprise Plan**: An active LambdaTest organization subscription  | 
 | 76 | +- **Administrative Access**: Admin-level access to your LambdaTest organization  | 
 | 77 | +- **SSO Request**: Contact LambdaTest support to enable SSO for your organization  | 
 | 78 | + | 
 | 79 | +> **Note**: If you don't have SSO enabled for your LambdaTest organization, please contact our support team at [[email protected]](mailto:[email protected])  | 
 | 80 | +.  | 
 | 81 | + | 
 | 82 | +## Step-by-Step Integration Guide  | 
 | 83 | + | 
 | 84 | +* * *  | 
 | 85 | + | 
 | 86 | +### Step 1: Create Application in Your Identity Provider  | 
 | 87 | + | 
 | 88 | +The exact steps vary by identity provider, but the general process involves creating a new application or client registration. We'll use Azure AD as our example:  | 
 | 89 | +1. **Access Azure Portal**: Sign in to the [Azure Portal](https://portal.azure.com/) using an administrator account.  | 
 | 90 | + | 
 | 91 | +2. **Navigate to App Registrations**: In the Azure Portal, search for "App registrations" in the search bar and select it from the results.  | 
 | 92 | + | 
 | 93 | +3. **Create New Registration**: Click **New registration** to create a new application registration.  | 
 | 94 | + | 
 | 95 | +<img loading="lazy" src={require('../assets/images/lambdatest-sso-oidc/app-registration.png').default} alt="Azure App Registration" width="944" height="487" className="doc_img" style={{border: '1px solid #000'}}/>  | 
 | 96 | + | 
 | 97 | +4. **Configure Application Details**:  | 
 | 98 | +   - **Name**: Enter a descriptive name such as "LambdaTest SSO" or "LambdaTest OIDC Integration"  | 
 | 99 | +   - **Supported account types**: Select "Accounts in this organizational directory only"  | 
 | 100 | +   - **Redirect URI**: Leave this blank for now (we'll configure it later)  | 
 | 101 | +   - Click **Register** to create the application  | 
 | 102 | + | 
 | 103 | +<img loading="lazy" src={require('../assets/images/lambdatest-sso-oidc/app-registration-2.png').default} alt="Azure App Registration" width="944" height="487" className="doc_img" style={{border: '1px solid #000'}}/>  | 
 | 104 | + | 
 | 105 | + | 
 | 106 | +### Step 2: Configure Application Settings  | 
 | 107 | + | 
 | 108 | +1. **Access Application Overview**: After registration, you'll be redirected to the application overview page.  | 
 | 109 | + | 
 | 110 | +2. **Copy Client ID**:   | 
 | 111 | +   - Note down the **Client ID** (also called Application ID in Azure AD) - you'll need this for LambdaTest configuration  | 
 | 112 | +   - This unique identifier represents your application in your identity provider  | 
 | 113 | + | 
 | 114 | +3. **Copy Tenant/Domain Information**:  | 
 | 115 | +   - Note down the **Directory (tenant) ID** - this identifies your Azure AD tenant  | 
 | 116 | +   - You'll need this for the OpenID Connect metadata document URL  | 
 | 117 | + | 
 | 118 | +### Step 3: Create Client Secret  | 
 | 119 | + | 
 | 120 | +1. **Navigate to Certificates & Secrets**: In your application's left sidebar, click **Certificates & secrets**.  | 
 | 121 | + | 
 | 122 | +2. **Create New Client Secret**:  | 
 | 123 | +   - Click **New client secret**  | 
 | 124 | +   - **Description**: Enter a descriptive name like "LambdaTest SSO Secret"  | 
 | 125 | +   - **Expires**: Select your preferred expiration period (recommended: 24 months)  | 
 | 126 | +   - Click **Add**  | 
 | 127 | + | 
 | 128 | +<img loading="lazy" src={require('../assets/images/lambdatest-sso-oidc/app-client-secret-create.png').default} alt="Azure App Client Register" width="944" height="487" className="doc_img" style={{border: '1px solid #000'}}/>  | 
 | 129 | + | 
 | 130 | +3. **Copy Secret Value**:   | 
 | 131 | +   - **Important**: Copy the secret value immediately - it won't be shown again  | 
 | 132 | +   - Store this securely as you'll need it for LambdaTest configuration  | 
 | 133 | + | 
 | 134 | +<img loading="lazy" src={require('../assets/images/lambdatest-sso-oidc/app-client-secret.png').default} alt="Azure Client Secret" width="944" height="487" className="doc_img" style={{border: '1px solid #000'}}/>  | 
 | 135 | + | 
 | 136 | +> **Important**: Store the client secret securely as you'll need it for LambdaTest configuration. Most providers only show the secret once.  | 
 | 137 | +
  | 
 | 138 | +### Step 4: Configure Redirect URI  | 
 | 139 | + | 
 | 140 | +1. **Navigate to Authentication**: In your application's left sidebar, click **Authentication**.  | 
 | 141 | + | 
 | 142 | +2. **Add Redirect URI**:  | 
 | 143 | +   - Click **Add a platform**  | 
 | 144 | +   - Select **Web**  | 
 | 145 | +   - **Redirect URI**: Enter the redirect URI provided by LambdaTest (typically: `https://lambdatest.auth0.com/login/callback`)  | 
 | 146 | +   - Click **Save**  | 
 | 147 | + | 
 | 148 | +<img loading="lazy" src={require('../assets/images/lambdatest-sso-oidc/app-redirect.png').default} alt="Azure Redirect URI" width="944" height="487" className="doc_img" style={{border: '1px solid #000'}}/>  | 
 | 149 | + | 
 | 150 | +### Step 5: Collect OpenID Connect Metadata  | 
 | 151 | + | 
 | 152 | +1. **Get Well-Known OIDC URL**: The OpenID Connect well-known configuration URL follows this pattern:  | 
 | 153 | +   ```  | 
 | 154 | +   https://login.microsoftonline.com/{tenant-id}/v2.0/.well-known/openid-configuration  | 
 | 155 | +   ```  | 
 | 156 | +   Replace `{tenant-id}` with your Directory (tenant) ID from Step 2.  | 
 | 157 | + | 
 | 158 | +   **Examples of Well-Known OIDC URLs:**  | 
 | 159 | +   - **Azure AD**: `https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration`  | 
 | 160 | +   - **Google Workspace**: `https://accounts.google.com/.well-known/openid-configuration`  | 
 | 161 | +   - **Okta**: `https://yourcompany.okta.com/.well-known/openid-configuration`  | 
 | 162 | +   - **Auth0**: `https://yourdomain.auth0.com/.well-known/openid-configuration`  | 
 | 163 | + | 
 | 164 | +2. **Verify Well-Known URL**: You can test the URL in your browser to ensure it returns valid JSON configuration.  | 
 | 165 | + | 
 | 166 | +<img loading="lazy" src={require('../assets/images/lambdatest-sso-oidc/app-oidc-metadata.png').default} alt="Azure Metadata URL" width="944" height="487" className="doc_img" style={{border: '1px solid #000'}}/>  | 
 | 167 | + | 
 | 168 | +> **Verify Well-Known URL**: Test the URL in your browser to ensure it returns valid JSON configuration.  | 
 | 169 | +
  | 
 | 170 | +### Step 6: Contact LambdaTest Support for OIDC Configuration  | 
 | 171 | + | 
 | 172 | +Since OIDC integration requires server-side configuration, you cannot create the connection directly through the LambdaTest interface. Instead, you need to contact our support team to configure the OIDC integration for you.  | 
 | 173 | + | 
 | 174 | +1. **Gather Required Information**: Collect the following details from your identity provider configuration:  | 
 | 175 | +   - **Client ID**: The client ID from Step 2  | 
 | 176 | +   - **Client Secret**: The secret value from Step 3  | 
 | 177 | +   - **OpenID Connect Metadata URL**: The metadata document URL from Step 5  | 
 | 178 | +   - **Connection Name**: A descriptive name like "Company OIDC" or "LambdaTest SSO"  | 
 | 179 | + | 
 | 180 | +2. **Contact LambdaTest Support**: Reach out to our support team with the configuration details:  | 
 | 181 | + | 
 | 182 | + | 
 | 183 | +3. **Provide Configuration Details**: Include the following information in your support request:  | 
 | 184 | +   ```  | 
 | 185 | +   Identity Provider: Azure AD  | 
 | 186 | +   Client ID: [Your Application (client) ID]  | 
 | 187 | +   Client Secret: [Your Client Secret]  | 
 | 188 | +   Well-Known OIDC URL: [Your OIDC Well-Known URL]  | 
 | 189 | +   Connection Name: [Unique Connection Name]  | 
 | 190 | +   ```  | 
 | 191 | + | 
 | 192 | +4. **Wait for Configuration**: Our support team will configure the OIDC integration on your behalf.  | 
 | 193 | + | 
 | 194 | +### Step 7: Configure User Access (Optional)  | 
 | 195 | + | 
 | 196 | +1. **Set User Assignment**: In Azure AD, navigate to your application and click **Users and groups**.  | 
 | 197 | + | 
 | 198 | +2. **Assign Users**:  | 
 | 199 | +   - Click **Add user/group**  | 
 | 200 | +   - Select the users or groups who should have access to LambdaTest  | 
 | 201 | +   - Click **Assign**  | 
 | 202 | + | 
 | 203 | +3. **Configure App Roles** (if needed): You can define custom app roles for different access levels within LambdaTest.  | 
 | 204 | + | 
 | 205 | + | 
 | 206 | +## Testing Your OIDC Integration  | 
 | 207 | + | 
 | 208 | +* * *  | 
 | 209 | + | 
 | 210 | +### Method 1: Direct SSO Login  | 
 | 211 | + | 
 | 212 | +1. **Access LambdaTest SSO**: Navigate to [https://accounts.lambdatest.com/sso](https://accounts.lambdatest.com/sso)  | 
 | 213 | + | 
 | 214 | +2. **Enter Email**: Enter your Azure AD email address  | 
 | 215 | + | 
 | 216 | +3. **Initiate SSO**: Click **CONTINUE WITH SSO**  | 
 | 217 | + | 
 | 218 | +4. **Complete Authentication**: You'll be redirected to Microsoft's login page. Enter your Azure AD credentials.  | 
 | 219 | + | 
 | 220 | +5. **Verify Success**: After successful authentication, you should be redirected to your LambdaTest organization.  | 
 | 221 | + | 
 | 222 | + | 
 | 223 | +### Method 2: Direct OIDC Login (For Testing)  | 
 | 224 | + | 
 | 225 | +Since OIDC doesn't support classic IDP-based SSO login, you can use this URL to simulate the login process:  | 
 | 226 | + | 
 | 227 | +```  | 
 | 228 | +https://accounts.lambdatest.com/auth0/login?connection={connection-name}  | 
 | 229 | +```  | 
 | 230 | + | 
 | 231 | +Replace `{connection-name}` with the connection name you created in LambdaTest.  | 
 | 232 | + | 
 | 233 | +## Troubleshooting Common Issues  | 
 | 234 | + | 
 | 235 | +* * *  | 
 | 236 | + | 
 | 237 | +### Application Not Found  | 
 | 238 | +- **Issue**: "Application not found" error during login  | 
 | 239 | +- **Solution**: Verify that the Application (Client) ID is correct and the application is properly registered in Azure AD  | 
 | 240 | + | 
 | 241 | +### Invalid Client Secret  | 
 | 242 | +- **Issue**: "Invalid client secret" error  | 
 | 243 | +- **Solution**: Ensure the client secret is correctly copied and hasn't expired. Create a new secret if needed.  | 
 | 244 | + | 
 | 245 | +### Redirect URI Mismatch  | 
 | 246 | +- **Issue**: "Redirect URI mismatch" error  | 
 | 247 | +- **Solution**: Verify that the redirect URI in Azure AD exactly matches the one provided by LambdaTest  | 
 | 248 | + | 
 | 249 | +### User Not Assigned  | 
 | 250 | +- **Issue**: "User not assigned to application" error  | 
 | 251 | +- **Solution**: Ensure the user is assigned to the application in Azure AD under Users and groups  | 
 | 252 | + | 
 | 253 | +### Well-Known URL Issues  | 
 | 254 | +- **Issue**: "Invalid well-known URL" error  | 
 | 255 | +- **Solution**: Verify the OpenID Connect well-known URL is accessible and contains valid JSON configuration  | 
 | 256 | + | 
 | 257 | +### Domain Configuration  | 
 | 258 | +- **Issue**: Users from different domains cannot access LambdaTest  | 
 | 259 | +- **Solution**: Ensure all required domains are configured in both Azure AD and LambdaTest settings  | 
 | 260 | + | 
 | 261 | + | 
 | 262 | + | 
 | 263 | + | 
 | 264 | +<nav aria-label="breadcrumbs">  | 
 | 265 | +  <ul className="breadcrumbs">  | 
 | 266 | +    <li className="breadcrumbs__item">  | 
 | 267 | +      <a className="breadcrumbs__link" href="https://www.lambdatest.com">  | 
 | 268 | +        Home  | 
 | 269 | +      </a>  | 
 | 270 | +    </li>  | 
 | 271 | +    <li className="breadcrumbs__item">  | 
 | 272 | +      <a className="breadcrumbs__link" target="_self" href="https://www.lambdatest.com/support/docs/">  | 
 | 273 | +        Support  | 
 | 274 | +      </a>  | 
 | 275 | +    </li>  | 
 | 276 | +    <li className="breadcrumbs__item breadcrumbs__item--active">  | 
 | 277 | +      <span className="breadcrumbs__link">  | 
 | 278 | +        OIDC Integration  | 
 | 279 | +      </span>  | 
 | 280 | +    </li>  | 
 | 281 | +  </ul>  | 
 | 282 | +</nav>  | 
0 commit comments