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:
- Login to the backend of your website.
- Navigate to Administration » Settings » Advanced » Authentication.
- In the Authentication dropdown, select one of the supported authentication mechanisms.
- Click Save changes.
- Restart the application.
Configure certificates for your site
To ensure security, you must configure the following two types of certificates for Sitefinity CMS:
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 (Step 4 in the diagram). It is also used by Sitefinity CMS Relying party to ensure that the authentication token has been issued by the correct Identity provider (Steps 6 in the diagram).
To configure this certificate:
- Navigate to Administration » Settings » Advanced » Authentication » SecurityTokenService » IdentityServer » SigningCertificate.
- 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.
- 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.