Progress will discontinue Telerik Platform on May 10th, 2018. Learn more

Linking or Unlinking SAML Users

Linking or Unlinking SAML Users

You can link a SAML user account to a Telerik Platform user account, allowing the user to log in with either. You can unlink the SAML user account at any time, keeping the Telerik Platform user management functionality.

See the coverage in Introduction to SAML Login Integration for more details.

You need the SAML assertion for the user to perform linking. The way you obtain the assertion depends on whether you are implementing active federation or passive federation.

Linking with a SAML Account

You link a SAML IdP user account to an existing Telerik Platform user account using the LinkSamlAccount() method. It takes as argument the userId of the Telerik Platform user account that you want to link to, and the acquired SAML assertion. Don't forget to log in the user first or use MasterKey authorization.

public async Task LinkUser(EverliveApp app, Guid userId, string accessToken)
{
    await app.WorkWith().Users().LinkSamlAccount(userId, accessToken).ExecuteAsync();
}

The method returns an error if a Telerik Platform user account is already linked to a SAML IdP user account. To link it to a new SAML IdP user account, first unlink it from the previous one and then reinvoke LinkSamlAccount() with the new SAML assertion.

These are important points you need to know about linking:

  • The user who you are linking must be logged in to their Telerik Platform account (in other words, you need the Telerik Platform access token to perform linking).
  • Users who have linked their SAML IdP identity to their Telerik Platform account can log in using either of them.
  • The SAML IdP user profile is stored as an object in the user account's Identity.SAML field. It is visible only when using MasterKey authentication or when using Bearer authentication but the access token is issued for the same user.
  • If the Telerik Platform user account's Email is empty and the SAML IdP user profile contains an email, then it is stored in the user account's Email field.
  • You cannot link a single SAML IdP account to multiple Telerik Platform user accounts. If you try this, you receive an error.

Unlinking from a SAML Account

You unlink a SAML IdP user account from an existing Telerik Platform user account using the UnlinkSamlAccount() method. It takes as argument the userId of the Telerik Platform user account that you want to unlink. For example:

public async Task UnlinkUser(EverliveApp app, Guid userId)
{
    await app.WorkWith().Users().UnlinkSamlAccount(userId).ExecuteAsync();
}

If the user is not linked, you receive an error.

These are important points you need to know about unlinking:

  • The user who you are unlinking must be logged in to their Telerik Platform account (in other words, you need the Telerik Platform access token to perform unlinking).
  • Telerik Platform deletes the user's SAML IdP profile by setting Profile.SAML to null in the user account object.
  • After a user has been unlinked you can relink them.
  • The users can unlink only their own SAML IdP account. They cannot unlink other users' SAML IdP accounts, even if they have update permissions for the Users content type. This restriction is not present when using MasterKey authentication.
  • You can only unlink user accounts that existed before linking them to an AD account.

See Also

Start a free trial Request a demo
Contact us: +1-888-365-2779
sales@telerik.com
Copyright © 2016-2017, Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved.