Skip to content
Go to Dashboard

SAML-based single sign-on (SSO) with Okta for Persona Dashboard

Overview

You can enable SAML-based Single Sign-On (including Just-In-Time (JIT) provisioning with SAML) for the Persona Dashboard via Okta by following this guide.

By default, users can choose to login through SAML or via email and password. SAML enforcement can be configured by navigating to Organization > Security for a user with Admin permissions.

Retrieve your Organization Slug

Log in to your Persona dashboard as a user with Admin permissions.

  1. Navigate to Organization > Security.
  2. Under Single Sign-On, click Set up.
  3. Here, you’ll find your Organization Slug.

Make note of your Organization Slug. You’ll need it in the next steps.

Add Persona to Okta

  1. Log in to your Okta organization as a user with administrative privileges. Make sure to switch to the Admin Console with Classic UI. The new UI does not currently support SAML based integrations.
  2. Click Applications in the menu bar. Then click Add Application and then Create New App.
  3. In the Create a New Application Integration dialog box, leave Web as the platform and select SAML 2.0 as the protocol. Click Create.
  4. On (1) General Settings, enter Persona as the name of the new Application. Click Next.
  5. On (2) Configure SAML, enter the following for the fields.

General

  • Single sign on URL: https://withpersona.com/saml/<ORGANIZATION-SLUG>/acs
  • Audience URI: https://withpersona.com/saml/<ORGANIZATION-SLUG>/metadata
  • Name ID Format: Unspecified
  • Application username: Email
⚠️ ORGANIZATION-SLUG comes from the first section (Retrieving your Organization Slug)

Attribute Statements

NameName formatValue
user_emailUnspecifieduser.email
name_firstUnspecifieduser.firstName
name_lastUnspecifieduser.lastName
  1. Click Next and then leave any feedback.
  2. Get your Identity Provider metadata XML URL for Persona to integrate back with Okta. This can be found under the Sign On tab in the SAML 2.0 callout by clicking the Identity Provider metadata link. Copy the URL and keep it handy for the next steps. The format of the URL should look like https://dev-12345.okta.com/app/abcdefg/sso/saml/metadata

Complete the Okta integration in Persona

  1. Log in to your Persona dashboard as a user with Admin permissions
  2. Navigate to Organization > Security.
  3. Under Single Sign-On, click Set up.
  4. Enter in the Metadata URL you obtained from the last step in the Adding Persona to Okta section.
  5. Click Get metadata.

If done successfully, you should see a notification letting you know that your Okta integration has been set up.

Logging in to Persona through Okta

  1. To log in to Persona through Okta, first make sure that the user has been assigned to the Application in Okta.
  2. The user should then see Persona in their Okta dashboard. By clicking Persona, they should automatically log in to their Persona dashboard.

Renewing an expiring SAML SSO certificate

SAML signing certificates expire. Persona monitors your certificate’s expiration and will remind you before it lapses, but the replacement certificate has to be generated and activated in Okta and made available to Persona.

If Persona already has your live Identity Provider metadata URL on file, we automatically pick up the renewed certificate once you’ve activated it in Okta — no further action is needed on the Persona side. If your integration was set up by uploading a static metadata XML file instead of the live URL, you’ll need to re-upload the updated metadata after rotating the certificate.

⚠️ You do not need to create a new Okta application. Reuse the existing application you set up for Persona login -- creating a new one is the most common way to break SSO.

Generate a new certificate in Okta

  1. Log in to your Okta organization as a user with administrative privileges. Switch to the Admin Console with Classic UI.
  2. Go to Applications and open the existing application you use for Persona login.
  3. Click the Sign On tab.

Generate a new certificate in Okta

  1. Scroll to the SAML Signing Certificates section and click Edit.
  2. Click Generate New Certificate. A new certificate row appears with a status of Inactive.

Activate the new certificate

⚠️ Leave your current certificate Active until the new one is activated and working. Keep a copy of your existing metadata XML so you can roll back if logins break.
  1. In the SAML Signing Certificates table, find the newly generated (Inactive) certificate row.

Activate Certificate in Okta SSO

  1. In the Actions column, click Activate. Its status changes to Active and the previous certificate becomes Inactive.

Activate Action for Certificate in Okta SAML SSO

Refresh the metadata in Persona

If Persona already has your live Identity Provider metadata URL, the renewed certificate is picked up automatically — skip these steps. Otherwise:

  1. In Okta, copy your Identity Provider metadata URL from the Sign On tab (format: https://dev-12345.okta.com/app/abcdefg/sso/saml/metadata).
  2. Log in to your Persona dashboard as a user with Admin permissions.
  3. Navigate to Organization > Security.
  4. Under Single Sign-On, click Set up / Edit.
  5. Enter the metadata URL and click Get metadata (or upload the updated metadata XML file).

FAQs

Does Persona support JIT provisioning via SAML?

Yes, we support JIT provisioning for users.

Is there an API for creating and disabling users?

We currently don’t have an API for creating/disabling users.

Is it possible to send over the user’s role in Persona as an attribute in the SAML assertion?

At the moment, all new users will be set to an Organization’s default role configured from within the dashboard. We do not currently support sending a user’s role as an attribute, but if this is a high priority for your team please reach out to your Persona contact or Persona support to let us know about your need.

Access to SAML-based SSO with Okta by plan

Startup ProgramEssential PlanGrowth PlanEnterprise Plan
SAML-based SSO with OktaAvailableAvailableAvailableAvailable
SCIM with OktaNot AvailableNot AvailableNot AvailableAvailable

Learn about pricing and plans

Was this article helpful?
Thanks for the feedback — it helps us improve these docs.