Workforce identity in Kinde
Workforce identity
Add a SAML application to let your team sign in to a third-party tool using Kinde as the identity provider. For background, see Workforce identity in Kinde.
Workforce identity is available on the Kinde Scale plan. Separate plans for workforce identity are coming soon.
Connecting an application involves an exchange of details in both directions. You tell Kinde where to send assertions, and you tell the third-party tool to trust Kinde.
Sign in to your Kinde dashboard, go to Settings > Environment > Applications, and select the Workforce identity tab.
Select Add application.
Choose your application from the catalog. If your tool is not listed, choose SAML application.
Kinde creates the application and opens its Details page.
Set a Display name to override the catalog name in your application list. This is useful when you connect more than one instance of the same tool.
Select Import SP metadata if your tool publishes a metadata file. Supply the metadata URL or XML. Kinde fills in the entity ID, ACS URL, and certificates for you, saving you time. Select Save to apply the settings.
In Service provider (SP) configuration, enter the SP entity ID. This is the entity ID configured in the third-party application.
Enter the Assertion Consumer Service (ACS) URL. This is where Kinde posts the SAML response.
Check the Name ID format. Kinde defaults to the email address format, which suits most applications.
Choose the Name ID source, which is the Kinde user field sent as the SAML NameID. Choose Email or User ID. Email is the default.
Select Save.
Go to the Kinde IdP metadata tab and copy the IdP metadata URL. If your tool supports auto-configuration, use this URL to import all of Kinde’s details at once.
For manual configuration, copy the following values into the third-party tool’s SAML settings:
Kinde generates the signing certificate for an application the first time it is actually used. If the certificate field is empty, select Test SSO on this tab, or complete a real sign-in through the application, and the certificate will be created.
Most applications need more than a NameID. On the Attribute mapping tab, map Kinde fields to the SP attribute names your tool expects.
Go to the Attribute mapping page.
Select a Kinde field. You can map standard profile fields and any user properties you have defined.
Enter the SP attribute name exactly as the service provider expects it.
Select Add mapping to add more.
Select Save.
Check the service provider’s SAML documentation for the attribute names it requires. Names are usually case-sensitive and must match exactly.
User property values are the same across organizations. Organization-specific role claims are not supported yet.
See Authentication methods for more information.
The Test SSO button appears once both the SP entity ID and the ACS URL are set.
Go to the Kinde IdP metadata tab.
Scroll to the end of the page. Under Test this connection, select Test SSO.
Kinde signs you in and runs a real SAML sign-in to the application, so you can confirm the connection before rolling it out.
Once the connection works, decide who sees it.
Go to the Details tab of your workforce identity application and make sure it is Enabled in the Settings section.
Turn on Show on self-serve portal.
Optionally use Limit to organizations to restrict the tile to chosen organizations. Leave every box unchecked to show the tile to all organizations. This controls the portal tile only, it does not block sign-in from the tool itself.
Select Save.
Go to Settings > Environment > Self-serve portal.
Under User self-management, turn on the Applications toggle.
Select Save.
The tile appears in the self-serve portal when the user signs in.
Learn more about Self-serve portal for users.
Users can sign in by going to the third-party tool directly, which does not depend on the portal setting.
By default, anyone who can sign in to Kinde can sign in to an enabled application. To limit access to people who hold specific roles:
Go to the Access control tab.
Switch on Enable role-based access control.
Select the Allowed roles. Only organization members holding one of these roles can sign in.
Select Save.
You need at least one role defined for your business before you can turn this on.
Role-based access control is evaluated within an organization. If Kinde cannot determine which organization someone is signing in from, access is denied. Test the sign-in path you expect people to use after turning this on.
Two separate timers on the Sessions tab decide how long a sign-in stays valid.
Session lifetime is how much time can pass since the person last authenticated before this application requires a fresh sign-in, even if their browser session is still active. The default is 86400 seconds (24 hours). The maximum is 30 days.
SAML authentication validity period is the expiry window written into each issued assertion, which the service provider checks when it receives one. Keep this short. The default is 3600 seconds (one hour). The maximum is 24 hours.
To require a sign-in for every launch of the application, regardless of these timers:
Go to the Details tab.
Scroll down to the end of the Security section, and turn on Force re-authentication.
Select Save.
The Security section of the Details tab controls how Kinde protects each assertion it sends.
The SP encryption certificate is required when Encrypt assertion is on.
Single logout is also configured in the Security section of the Details tab.
The SP logout callback URL is the third-party application’s endpoint, not Kinde’s single logout URL. Kinde’s own single logout URL is on the IdP metadata tab and belongs in the third-party tool’s configuration.
RelayState arrives with each logout request rather than from your own configuration. If you leave the SP logout callback URL blank, make sure the service provider validates the RelayState value against its own allow list before treating it as a redirect target, otherwise it can be used to send people to an arbitrary destination after logout.
Deleting a SAML application is a destructive action that cannot be reversed. Its configuration, attribute mappings, access rules, and session records are removed, and anyone using it loses access.
People cannot sign in; they see an access denied message.
Check the Access control tab. If role-based access control is on, confirm the person holds one of the allowed roles in the organization they are signing in from.
The signing certificate field is empty.
The certificate is generated on first use. Select Test SSO, or complete a real sign-in.
The service provider rejects the assertion.
Confirm the SP entity ID and ACS URL match the tool exactly, and that the attribute names on the Attribute mapping tab match what the tool expects, including case.
The tile does not appear in the self-serve portal.
Confirm Show on self-serve portal is on, that the person’s organization is allowed under Limit to organizations, and that the Applications portal module is enabled.