Authentication

Overview

Sitefinity CMS supports two authentication protocols: OpenID and Default.

The OpenID protocol uses claims authentication, implemented on top of IdentityServer3, certified by OpenID Foundation. It allows implementing single sign-on and access control for modern web applications and APIs. It uses OAuth2 and OpenID Connect protocols. This integration allows easy connection with clients such as mobile, web, SPAs ,and desktop applications. It is also extensible and allows integration in new and existing architectures. 

The authentication is designed and implemented as separate Microsoft OWIN / Katana component. It uses standard Microsoft.Owin.Security libraries and standard namespace System.Security. Additionally, there are some extensions to support external provider logins, such as Facebook or LinkedIn.

The Default authentication protocol uses the same secure foundation but does not offer internal identity provider application, IdentityServer3, which makes it more lightweight, simpler to configure and mange, and more extensible. 

Select authentication protocol

To configure your site to use the Default or OpenID authentication mechanisms, perform the following: 

  1. Login to the backend of your website. 
  2. Navigate to Administration » Settings » Advanced » Authentication
  3. In the Authentication dropdown, select one of the supported authentication mechanisms. 
  4. Click Save changes.
  5. Restart the application.

Configure certificates for your site

To ensure security, you must configure the following two types of certificates for Sitefinity CMS:

  • SSL/TLS certificate for the site
    This certificate ensures the identity of the URL that is requested by the client (browser). It is used in all the steps from the above diagram.

    NOTE: Although Sitefinity works successfully on HTTP and HTTPS, we recommend to use SSL/TLS certificate for your site.

  • Identity server signing certificate (Only if you are using the OpenID protocol)

The Identity server signing certificate is used to verify the issuer of the authentication token – it is used by Sitefinity CMS Identity provider to sign the identity token . It is also used by Sitefinity CMS Relying party to ensure that the authentication token has been issued by the correct Identity provider .

To configure this certificate:

  1. Navigate to Administration » Settings » Advanced » Authentication » SecurityTokenService » IdentityServer » SigningCertificate.
  2. Fill out the fields and make sure the SubjectName field matches the subject name of the certificate.
    The Certificate store name is the location of the certificate, the store where it was installed.
    Store location can be either:
    • CurrentUser, which is the Current user certificate store that is local to a user account on the computer
    • LocalMachine, which is the Local machine certificate store, available to all users of the computer. 

  3. Restart Sitefinity CMS after configuring the certificate. 

If you have not configured the certificate, a default certificate for development and testing purposes is used and the System status dashboard widget displays a warning informing you that this is a security risk. For more information, see System status.

You can also check the error logs for information related to the warning displayed in the System status dashboard widget.

NOTE: The certificate must have a private key and the application pool user that runs Sitefinity CMS identity provider must have rights to access it to use it for signing.

Want to learn more?

Sign up for our free beginner training. Boost your credentials through advanced courses and certification.
Register for Sitefinity training and certification.

Was this article helpful?

Next article

Users