Configuring SAML SSO with Microsoft Entra ID (formerly Azure AD)

If you're needing assistance with setting up Entra ID SSO, the following information will provide helpful guidance throughout the process.

This article contains the following sections:


Disclaimer: Advanced SSO is currently unsupported by Knack; however, the following information can help guide you through the basic configuration of SAML SSO with Microsoft Entra ID. For additional details, refer to Knack's SSO Overview.

 

1. Getting Setup in Knack

To begin, follow these steps to create your SAML-based SSO configuration in Knack:

  • Navigate to your Knack login page and select the Login view's settings:
    entra1
  • Select the "Add Provider" button and select "SAML 1.1 or 2.0". This will open the configuration form where you can customize your SSO login button:
    entra2
  • Upon making your selection, a configuration form will appear, presenting fields essential for setting up your Azure SSO instance. At the top of this SSO configuration form, you will find options to customize the login button that will be incorporated into your login page:

entra3

Note: Settings like button text, color, and font are customizable. However, there is currently an issue with uploading an image. Please reach out to our support team if you have any questions: Create Support Ticket


 

2. Knack SAML Provider Settings

To configure Microsoft Entra ID with Knack, you'll need specific information for the Provider Settings:

entra4 

Before entering in information for these fields, you'll need to retrieve the Assertion Consumer Service URL (ACS) from Knack’s SSO XML configuration. This ACS URL will be utilized in a subsequent step to configure Entra ID:

Retrieving the Assertion Consumer Service URL (ACS)

To successfully save the SAML configuration form in Knack, it is necessary to fill in all required fields. Begin by entering a placeholder URL (e.g., URL.com) in the Provider Entry Point field, and populate the Issuer and the four ID property fields with any placeholder characters. This approach serves as a temporary measure to allow you to save the SAML SSO configuration:

entra5

Once the above required fields are saved, download the XML metadata file from the configuration form by clicking the button higlighted below. The ACS URL will be visible in the downloaded XML:

entra6

This action will prompt your browser to open a new XML file, allowing you to view the Assertion Consumer Service URL:

entra7
    • Europe-based apps: https://eu-api.knack.com/v1/applications/YOUR_APP_ID/auth/Azure/return
    • US-based apps: https://us-api.knack.com/v1/applications/YOUR_APP_ID/auth/Azure/return
    • HIPAA/GovCloud apps: https://usgc-api.knack.com/v1/applications/YOUR_APP_ID/auth/Azure/return

Note: Each ACS URL is unique to the app and region.


 

3. Basic Configuration in Microsoft Entra ID

With the ACS URL retrieved from your Knack app's SSO XML configuration file, you can now proceed to configure SAML SSO on the Entra ID side.

During this process, you'll also gather necessary data from Entra ID to input into the Provider Settings within the Knack configuration form.

Using the ACS URL retrieved above, configure the basic SSO settings in Entra ID:

  • Identifier (Entity ID): This should be the base URL of your Knack live app (e.g., https://example.knack.com/your-app).
  • Reply URL (Assertion Consumer Service URL): Use the ACS URL you downloaded in the prior step.

image.png

Notes:

  • The fields mentioned above are essential for your setup, while the remaining fields on the Basic SAML configuration page are optional. You can leave those unfilled until your SSO configuration is fully connected.
  • You may create a Logout URL in Entra ID, which can be added to the Logout URL field setting in the Provider Settings in Knack at a later stage. Please note that this step is optional and not necessary for the core configuration.

 

4. Attributes and Claims in Entra ID

The next step is to collect the Attributes and Claims from Entra ID:

entra17

An example of the structure that should be entered into the four property fields in Knack is as follows:

  • ID: http://schemas.microsoft.com/identity/claims/objectidentifier
  • First Name: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
  • Last Name: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
  • Email: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress

Note: The properties mentioned above can be customized within the Entra ID portal, providing you with flexibility in your configuration. However, it is essential to ensure that the values you use match the exact capitalization found in your Knack app.

When transferring these values to Knack, even minor discrepancies in case can lead to errors. Therefore, please pay close attention to maintain uniformity between Entra ID and Knack to avoid any potential issues.

This is an example of what the configuration may resemble:

image.png


 

5. SAML Certificates Additional Settings

The SAML Certificates page provides you with the option to download the Certificate (Base 64). Once downloaded, you will need to copy and paste this certificate into the Identity Provider's Certificate field in Knack's SAML SSO configuration form:

image.png

The format of the downloaded text will appear as follows:

-----BEGIN CERTIFICATE----- 

MIID... (Base64 content) ... 

(More Base64 content)

 -----END CERTIFICATE-----

Please ensure you copy the entire text from the beginning to the end, including the lines marked " -----BEGIN CERTIFICATE----- and -----END CERTIFICATE----- ".

Then, paste this complete text into the Identity Provider's Certificate field in Knack, formatted as shown below:

image.png

You will need to obtain the Login URL, which should be entered in the Provider Entry Point field within Knack:

image.png
  • SAML Certificates: Download and copy the Certificate (Base 64) from Entra ID and paste it into Knack’s Identity Provider’s Certificate field.
  • Login URL: Add to Knack’s Provider Entry Point field.
  • Issuer: Use the Application ID from Entra ID’s Overview and paste it into Knack’s Issuer field.

Note: To successfully complete the configuration, you will need two key pieces of information from Knack: the Assertion Consumer Service URL (ACS) and the base URL of your Live App. These details are essential for populating the settings outlined in the SAML configuration page section.

 

Here is an example of how the Provider Settings section in Knack may appear once configured:

entra16


 

Troubleshooting Tips

  • Login Permissions: Ensure new user registration is enabled if you want new users to log in via SSO without pre-existing Knack accounts:
    entra14
    • If this setting is set to "Yes", any user will have the ability to access and create a new account through the SSO instance.
  • Case Sensitivity: Matching case is crucial for attributes.

Reminder: As Knack does not officially support advanced SSO, please refer to external tutorials or Microsoft Entra documentation for in-depth guidance.