SecurityEnterprise SSOOkta (SAML 2.0)

Okta SSO Setup (SAML 2.0)

This guide walks you through configuring Okta as your identity provider for Ledly using SAML 2.0.

Okta SSO requires an Okta account with administrative access and a Ledly Enterprise plan ($1,999/mo).

Prerequisites

  • Okta Administrator access
  • Ledly organization administrator access
  • Ledly Enterprise plan ($1,999/mo)

Configuration Values

You’ll need these Ledly values when configuring Okta:

SettingValue
Single sign-on URL (ACS URL)https://ledlyv2-production.up.railway.app/api/sso/okta/callback
Audience URI (SP Entity ID)https://ledlyv2-production.up.railway.app
Name ID formatEmailAddress

Step 1: Create Okta Application

Log in to Okta Admin Console

Navigate to your Okta Admin Console at https://your-domain.okta.com/admin

Create a new application

  1. Go to ApplicationsApplications in the sidebar
  2. Click Create App Integration
  3. Select SAML 2.0 as the Sign-in method
  4. Click Next

Configure General Settings

FieldValue
App nameLedly
App logo(Optional) Upload Ledly logo
App visibilityConfigure as needed

Click Next to continue.


Step 2: Configure SAML Settings

SAML Settings

Enter the following values:

FieldValue
Single sign-on URLhttps://ledlyv2-production.up.railway.app/api/sso/okta/callback
Recipient URLSame as above (or leave “Use this for Recipient URL” checked)
Destination URLSame as above (or leave “Use this for Destination URL” checked)
Audience URI (SP Entity ID)https://ledlyv2-production.up.railway.app
Default RelayStateLeave empty
Name ID formatEmailAddress
Application usernameEmail

Attribute Statements

Add these attribute statements to pass user information to Ledly:

NameName formatValue
emailUnspecifieduser.email
firstNameUnspecifieduser.firstName
lastNameUnspecifieduser.lastName

Group Attribute Statements (Optional)

If you want to pass group membership:

NameName formatFilter
groupsUnspecifiedMatches regex .* (or filter specific groups)

Click Next to continue.


Step 3: Complete Okta Setup

Feedback (Optional)

Select “I’m an Okta customer adding an internal app” or your appropriate option.

Click Finish to create the application.

Get SAML Configuration Values

After creating the app, you need to get the configuration values for Ledly:

  1. Click on your new Ledly application
  2. Go to the Sign On tab
  3. Scroll down to SAML Signing Certificates
  4. Click View SAML setup instructions (or click ActionsView IdP metadata)

You’ll need these values from the setup instructions:

ValueDescription
Identity Provider Single Sign-On URLThe URL Ledly will redirect users to
Identity Provider IssuerUnique identifier for your Okta org
X.509 CertificateCertificate to validate SAML assertions

Download the Certificate

  1. In the SAML Signing Certificates section
  2. Find the active certificate (status: Active)
  3. Click ActionsDownload certificate
  4. Keep this file - you’ll upload it to Ledly
⚠️

Keep your X.509 certificate secure. This certificate is used to verify that authentication requests genuinely come from your Okta organization.


Step 4: Assign Users

Before users can sign in, you need to assign them to the application:

  1. In your Ledly application, click the Assignments tab

Assign Users or Groups

For individual users:

  1. Click AssignAssign to People
  2. Find and select the users who need access
  3. Click Assign for each user
  4. Click Done

For groups (recommended):

  1. Click AssignAssign to Groups
  2. Select the groups (e.g., “All Employees”, “Marketing Team”)
  3. Click Assign for each group
  4. Click Done

Users must be assigned to the Ledly application in Okta before they can sign in via SSO.


Step 5: Configure Ledly

Now configure Ledly to use your Okta identity provider:

  1. Log in to Ledly at app.ledly.io
  2. Go to SettingsSSO

Select Okta

Select Okta (SAML 2.0) as your identity provider.

Enter Configuration Values

Enter the values you collected from Okta:

FieldValue
Issuer URLYour Identity Provider Issuer from Okta
SSO URLYour Identity Provider Single Sign-On URL
IdP CertificatePaste the X.509 certificate content or upload the file

Configure SSO Options

OptionRecommended Setting
Auto-provision usersEnabled - Creates accounts for new SSO users
Default roleMember - New users start with member permissions
Allow password loginYour choice - Enable for fallback access

Save Configuration

Click Save to apply the SSO configuration.


Step 6: Test SSO

Test with an Admin Account First

  1. Open an incognito/private browser window
  2. Navigate to your Ledly login page
  3. Click Sign in with SSO or enter your email
  4. Verify you’re redirected to Okta
  5. Sign in with your Okta credentials
  6. Confirm you’re redirected back to Ledly and logged in

Verify User Attributes

After logging in via SSO:

  1. Go to SettingsProfile
  2. Verify your name and email were populated correctly

Test JIT Provisioning (Optional)

  1. Assign a test user in Okta who doesn’t have a Ledly account
  2. Have them sign in via SSO
  3. Verify their account was automatically created

Configuration Reference

SAML URLs

URL TypeURL
ACS URL (Assertion Consumer Service)https://ledlyv2-production.up.railway.app/api/sso/okta/callback
SP Entity IDhttps://ledlyv2-production.up.railway.app
SP Metadata URLContact support for SP metadata XML

Supported SAML Features

FeatureSupported
SP-initiated SSOYes
IdP-initiated SSOYes
Signed assertionsRequired
Encrypted assertionsOptional
Single Logout (SLO)Coming soon

Troubleshooting

”SAML Response Invalid” Error

Possible causes:

  • Clock skew between Okta and Ledly servers
  • Expired or wrong certificate configured

Solutions:

  1. Ensure your IdP certificate in Ledly matches the active certificate in Okta
  2. Check that the certificate hasn’t expired
  3. Verify the Issuer URL matches exactly

”User Not Found” Error

Possible causes:

  • User not assigned to the application in Okta
  • JIT provisioning is disabled

Solutions:

  1. Verify the user is assigned to the Ledly app in Okta
  2. Enable “Auto-provision users” in Ledly SSO settings

”Audience Mismatch” Error

Possible causes:

  • SP Entity ID doesn’t match

Solution: Verify the Audience URI in Okta is exactly:

https://ledlyv2-production.up.railway.app

“Invalid ACS URL” Error

Possible causes:

  • Callback URL mismatch

Solution: Verify the Single sign-on URL in Okta is exactly:

https://ledlyv2-production.up.railway.app/api/sso/okta/callback

Certificate Expiration

Okta certificates typically expire after 5 years. When a certificate expires:

  1. In Okta, generate a new certificate under SAML Signing Certificates
  2. Download the new certificate
  3. Update the certificate in Ledly SettingsSSO
  4. Test the connection before deactivating the old certificate

Revoking SSO Access

Remove User Access

To remove a specific user’s SSO access:

  1. In Okta Admin, go to ApplicationsLedly
  2. Click Assignments
  3. Find the user and click X to unassign

Disable SSO Integration

To disable SSO for your entire organization:

  1. In Ledly, go to SettingsSSO
  2. Toggle off the SSO configuration or select “None” as provider
  3. Users will need to sign in with email/password

Support

If you need help with Okta SSO setup:

When contacting support, include:

  • Your Ledly organization ID
  • Any error messages displayed
  • Screenshots of your Okta configuration (redact sensitive values)