SSO with SAML 2.0
Connect your identity provider to FinologeeBKO with SAML 2.0: values to register, what to send to Finologee, and provider examples
Introduction
This page explains how to connect your identity provider to FinologeeBKO with SAML 2.0. For the overview of SSO, the onboarding sequence and the choice between protocols, see Single Sign-On (SSO).
The generic sections come first: the values to register, the requirements and what to send to Finologee. Examples for specific identity providers follow.
Placeholders
| Placeholder | Meaning |
|---|---|
{alias} | Connection identifier provided by Finologee, one per identity provider connection |
{idp-metadata-url} | The SAML metadata URL of your identity provider |
Provider-specific placeholders are explained in the example sections.
Values to register in your identity provider
Finologee sends you the connection identifier {alias}. Register FinologeeBKO in your identity provider with the following values.
| Setting | Value |
|---|---|
| Service provider entity ID (Audience URI) | https://idp.finologee.com/auth/realms/services |
| Assertion Consumer Service URL (reply URL) | https://idp.finologee.com/auth/realms/services/broker/{alias}/endpoint |
| Assertion Consumer Service binding | HTTP-POST |
| Service provider metadata | https://idp.finologee.com/auth/realms/services/broker/{alias}/endpoint/descriptor (available once Finologee has set up the connection) |
| NameID format | urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress |
| Required attribute | Email address |
| Recommended attributes | First name, last name |
| Single logout URL (optional) | https://idp.finologee.com/auth/realms/services/broker/{alias}/endpoint, binding HTTP-POST or HTTP-Redirect |
If your identity provider can import service provider metadata, you can use the metadata URL instead of entering the values by hand, once Finologee confirms the connection is set up.
One entity ID for all connectionsThe service provider entity ID is the same for every FinologeeBKO connection in an environment. Some identity providers, including Microsoft Entra ID, do not allow two applications with the same identifier in one tenant. If your identity provider already has an application with this entity ID, for example for another FinologeeBKO tenant, contact Finologee before you create a new one.
Sandbox valuesThe values above are for production. Finologee sends the sandbox values together with the connection identifier.
Requirements
Your identity provider must meet the following requirements:
- Signed responses: the SAML response, the assertion, or both must be signed with your identity provider's signing certificate.
- Email address: the NameID, or an attribute, must carry the user's email address. It must be identical to the email address of the user in FinologeeBKO.
- Metadata by URL: your identity provider should publish its SAML metadata at a URL, so that the Finologee IDP reads your endpoints and signing certificate from it. If only a metadata XML file is available, send the file instead.
What to send to Finologee
Once your identity provider is configured, send Finologee:
- Your
{idp-metadata-url}, or the metadata XML file - Which attribute carries the email address: the NameID or the name of an attribute
- The names of the attributes that carry the first name and last name
- The label for the login button, for example the name of your organisation
Example: Microsoft Entra ID
These steps use the Microsoft Entra admin center. You need at least the Application Administrator or Cloud Application Administrator role.
Placeholders for Microsoft Entra ID
| Placeholder | Meaning |
|---|---|
{tenant-id} | The Directory (tenant) ID of your Microsoft Entra tenant |
{application-id} | The Application ID of the FinologeeBKO enterprise application |
Steps
-
Browse to Entra ID > Enterprise apps and select New application.
-
Select Create your own application, enter a name, for example
FinologeeBKO, and choose the option to integrate an application that is not in the gallery. Select Create. -
In the application, open Single sign-on and select SAML.
-
In Basic SAML Configuration, select Edit and enter the values from Values to register:
- Identifier (Entity ID): the service provider entity ID
- Reply URL (Assertion Consumer Service URL): the Assertion Consumer Service URL
- Logout Url (Optional): the single logout URL, if you want it
Alternatively, select Upload metadata file and upload the service provider metadata once Finologee has set up the connection.
-
In Attributes & Claims, select Edit and set:
- Unique User Identifier (Name ID): source attribute
user.mail, name identifier format Email address emailaddress:user.mailgivenname:user.givennamesurname:user.surname
- Unique User Identifier (Name ID): source attribute
-
In SAML Certificates, copy the value of App Federation Metadata Url. This is your
{idp-metadata-url}. -
Open Users and groups and assign the users or groups who may sign in.
Values to send
| Item | Value |
|---|---|
| Metadata URL | The App Federation Metadata Url from step 6 |
| Email attribute | NameID |
| Name attributes | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname and http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname, the default claim names in Microsoft Entra ID |
Email address in Microsoft Entra IDThe
user.mailattribute is only filled when the user's Email (mail) attribute is populated. A missing email address is the most common cause of a failed first login. Check the attribute on each user before testing.
Microsoft Entra ID error codes
| Error | Meaning | What to check |
|---|---|---|
AADSTS50011 | The reply URL in the request does not match the reply URLs of the application | The Reply URL in Basic SAML Configuration, character by character |
AADSTS700016 | No application with this identifier was found in the tenant | The Identifier (Entity ID) in Basic SAML Configuration |
AADSTS50105 | The user is not assigned to the application | Assign the user or one of their groups under Users and groups |
See Microsoft's error code reference and the guide to SAML single sign-on for enterprise applications.
Example: Okta
These steps use the Okta Admin Console.
Steps
- Go to Applications > Applications and select Create App Integration.
- Select SAML 2.0 as the sign-in method.
- Enter a name, for example
FinologeeBKO, and continue to the SAML settings. - Set Single sign-on URL to the Assertion Consumer Service URL from Values to register.
- Set Audience URI (SP Entity ID) to the service provider entity ID.
- Set Name ID format to EmailAddress and Application username format to Email.
- Under Attribute Statements, add:
email:user.emailfirstName:user.firstNamelastName:user.lastName
- Finish the wizard.
- On the Sign On tab, copy the Metadata URL. This is your
{idp-metadata-url}. - On the Assignments tab, assign the users or groups who may sign in.
Values to send
| Item | Value |
|---|---|
| Metadata URL | The Metadata URL from step 9 |
| Email attribute | NameID, or email |
| Name attributes | firstName and lastName |
See Okta's documentation on creating a SAML app integration and the SAML field reference.
Example: Keycloak
This example applies when your own organisation runs Keycloak as its identity provider.
Placeholders for Keycloak
| Placeholder | Meaning |
|---|---|
{keycloak-host} | The host name of your Keycloak server |
{realm} | The realm that holds your users |
Steps
- In the admin console, select
{realm}, open Clients and select Create client. - Set Client type to SAML and set Client ID to the service provider entity ID from Values to register.
- Set Valid redirect URIs and Master SAML Processing URL to the Assertion Consumer Service URL, then save.
- Set Name ID format to email.
- Make sure assertions are signed: turn Sign assertions on.
- Add mappers for the email address, first name and last name, for example
email,firstNameandlastNamefrom the user properties. - On the Keys tab, turn Client signature required off, unless you created the client by importing the service provider metadata.
Values to send
| Item | Value |
|---|---|
| Metadata URL | https://{keycloak-host}/realms/{realm}/protocol/saml/descriptor (older installations may include /auth before /realms) |
| Email attribute | NameID, or the name of the email mapper |
| Name attributes | The names of the first name and last name mappers |
See the Keycloak Server Administration Guide, section "Creating a SAML client".
Certificate rotation
Your identity provider signs SAML responses with a certificate that expires. When it expires, or when a new certificate becomes active without Finologee knowing, SSO stops working for every user of the connection.
- Before the certificate expires, add a new signing certificate in your identity provider. Do not activate it yet.
- Notify Finologee and agree a date for the switch.
- Finologee updates the connection with the new certificate.
- Activate the new certificate on the agreed date and test a login.
- Remove the old certificate once the new one works.
Microsoft Entra ID creates signing certificates with a default validity of three years and sends expiry notices 60, 30 and 7 days before the expiry date. See Microsoft's guide to managing federation certificates.
Troubleshooting
| Symptom | Likely cause | What to do |
|---|---|---|
| Your identity provider reports a reply URL mismatch | The Assertion Consumer Service URL registered does not match exactly | Compare the registered value with Values to register, including the connection identifier |
| Your identity provider reports an unknown entity ID or application | The service provider entity ID registered does not match | Check the entity ID, with no trailing slash |
| Your identity provider reports that the user is not assigned | The application is restricted to assigned users | Assign the user, or one of their groups, to the application |
| Login fails for all users after a certificate change | The new signing certificate was activated before Finologee updated the connection | Reactivate the previous certificate and follow Certificate rotation |
| The user signs in but FinologeeBKO does not recognise them | The email address is missing from the NameID or attribute, or it differs from the email address of the FinologeeBKO user | Check the user's email attribute in your identity provider and the email address in FinologeeBKO |
| The user is asked to complete a profile form | The first name or last name attribute is missing | Add both attributes to the SAML response |
If the problem remains, contact [email protected] with the time of the attempt, the user's email address and any error code shown.
Related documentation
- Single Sign-On (SSO) - Overview, onboarding sequence and choice of protocol
- SSO with OpenID Connect - The same setup with OpenID Connect
- User & Groups - Enabling SSO for each user
Updated 18 days ago

