Configuring a SAML2 Authentication Provider

Posted on (updated on )

Simplelists supports SAML2 single sign-on (SSO) authentication, allowing your users to access their mailing list accounts using existing corporate credentials. Configuring SAML2 with Simplelists involves creating an Authentication Provider in your Simplelists account and then configuring your Identity Provider (IdP) such as Microsoft Entra ID, Okta, or ADFS. This guide walks you through each step of the Simplelists configuration process.

  1. Creating a Simplelists Authentication Provider
  2. Configuring your Identity Provider (IdP)

The following describes the creation and configuration of the Simplelists Authentication Provider.

Create an Authentication Provider

  1. Log into your Simplelists instance as the administrator Simplelists Administrator Dashboard
  2. From the left menu click general settings Simplelists Account Settings
  3. Under the Account Settings click the Authentication tab Simplelists Authentication
  4. Click Add Authentication... button Simplelists Add Authentication Provider
  5. Enter a unique Name
  6. Ensure that the Type is set to SAML2
  7. Click Add

Configure the Authentication Provider

  1. Under the Account Settings click the Authentication tab Simplelists Authentication
  2. Click the Name of the Authentication provider you created Simplelists Edit Authentication Provider

Select Unique or Default URLs

This option selects whether your IdP points to a unique URL versus a default URL for the Entity ID or Reply URL.

Strictly speaking, there is no difference between the default versus unique URLs. However, unique URLs allow more flexibility should you need to have multiple Simplelists instances served by your IdP.

The unique URL should probably be chosen.

Set the Attributes

User

The user attribute values entered for the following must match the values provided in the SAML2 assertion (and the attribute names you configure in the Identity Provider’s (IdP’s) configuration). These values are used to automatically update the user’s name.

Click the Use default button to enter a default value that is often provided by IdPs.

Enter Attribute names for:

  1. User attribute for first name (optional)
  2. User attribute for surname (optional)

Group

The group attribute is used to find the groups that may be passed from the Identity Provider via the SAML2 assertion.

Click the Use default button to enter a default value that is often provided by IdPs.

Enter the Attribute for groupname (optional)

Domain suffix for usernames (optional)

The user’s email domain can be used to find the proper authentication provider to be used for IdP initiated login. This is optional and the unique URL is recommended instead.

Values required for the IdP configuration

The following items will be required to configure the IdP:

  1. RelayState for IdP Initiated login
  2. Simplelists XML File
  3. Simplelists Certificates

RelayState

The RelayState value can be used in the IdP configuration as the default value sent to Simplelists during an IdP initiated login.

If the IdP sends a RelayState value during the IdP initiated login this value is verified to determine that it matches the value configured in Simplelists.

Download Simplelists XML File

Many IdPs allow uploading a metadata XML from the application to provide the proper configuration settings.

  1. Click the Download XML file button
  2. Save the saml.xml file so it can be uploaded to the IdP.

Simplelists Certificates

Simplelists signs the SAML2 AuthnRequest. The IdP can verify that the received AuthnRequest was signed by Simplelists.

  1. Click the Download Signing Certificate button
  2. Save the simplelists.cer file so it can be uploaded to the IdP.

Upload IdP values

Simplelists requires two Identity Provider files to be uploaded to the Authentication provider. These need to be downloaded from your IdP.

  1. SAML Metadata XML file
  2. CA certificate (optional)

Example values

Field Name Value
User attribute for first name (optional) http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
User attribute for surname (optional) http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
Attribute for groupname (optional) http://schemas.microsoft.com/ws/2008/06/identity/claims/groups
Domain suffix for usernames (optional) example.com

Simplelists Optional Configuration

When to configure this section

The following settings are for organizations that want to automate user provisioning through SAML. These are advanced features – get basic SSO working first, verify users can log in successfully, and then return to configure automatic user creation if needed.

Simplelists - Create Automatic user creation

For IdP initiated login you can choose to have users automatically created. Simplelists uses “Automatic user creation groups” to assign user permissions. If no groups are provided you can create the user in Simplelists first and assign security there.

  1. Open the Authentication Settings that you created above Simplelists Account Settings
  2. Set the Attribute for groupname (optional)
    • http://schemas.microsoft.com/ws/2008/06/identity/claims/groups
  3. Click the Add Group Button

Create the Automatic user creation group

Simplelists Add Groups
  1. Enter a free form description (It will appear on the Authentication Provider Page)
    • Example: Billing Manager
  2. Enter the SSO Group Name (that will be sent by Azure)
    • Example: SimpleLists-Billing Manager
  3. Select the Account Permissions
  4. Click Create

Set Simplelists user to use the SAML Provider

The authentication method is by user. You will need to set the authentication method for each user that you want to use SAML.

Simplelists Dashboard
  1. Click manage users from the left hand menu
  2. Select the User(s) that you want to modify Shows Simplelists Modify User Authentication Type
  3. From the Authentication type menu select your SAML Provider that you set up earlier
  4. Click Update to save the user

Frequently Asked Questions

Why does login redirect back to the IdP login page repeatedly?

The Reply URL (Assertion Consumer Service URL) in your IdP doesn’t match the one configured in Simplelists. Both systems must agree on exactly where SAML responses should be sent. Check for trailing slashes, http vs https, and URL path mismatches.

What causes “SAML Response signature verification failed” errors?

The certificate Simplelists has on file for your IdP doesn’t match the certificate your IdP is currently using to sign assertions. IdP certificates can expire or be rotated. Re-download your IdP’s metadata and re-upload it to Simplelists.

Why does a user log in successfully but have no permissions?

If using automatic user creation with groups, the group names in your IdP’s SAML assertion don’t match the SSO Group Names configured in Simplelists. If not using automatic creation, the user account exists but hasn’t been granted permissions – check their account settings in Simplelists.

Why is a user account deleted after logging in?

You have the group attribute configured but the IdP isn’t sending matching groups for this user. When group-based provisioning is enabled and no matching groups are found, Simplelists removes the user. Either ensure the user belongs to a mapped group in your IdP, or remove the group attribute configuration if you don’t need group-based provisioning.

Why does IdP-initiated login fail but SP-initiated login work?

The RelayState value configured in your IdP doesn’t match the value Simplelists expects. Check the RelayState value shown in your Simplelists authentication provider settings and ensure your IdP is configured to send exactly that value.

Why aren’t names or other attributes appearing for users?

The attribute claim URIs configured in Simplelists don’t match the ones your IdP is sending. These are case-sensitive and must match exactly. Inspect an actual SAML assertion from your IdP (most IdPs have tools for this) to find the exact attribute names being sent.

Related Resources

Explore more Simplelists guides and features:

References

  1. OASIS Open. Security Assertion Markup Language (SAML) v2.0 OASIS Standard. https://www.oasis-open.org/standard/saml/
  2. OASIS Security Services Technical Committee. SAML V2.0 Technical Overview. https://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.html
  3. Microsoft Learn. Enable SAML single sign-on for an enterprise application. https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/add-application-portal-setup-sso
  4. Wikipedia. SAML 2.0. https://en.wikipedia.org/wiki/SAML_2.0