HomeDev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

IRegistrar interface

Describes the IRegistrar interface in Optimizely Customized Commerce 13.

The IRegistrar interface supports self-registered users who do not need back-end access functionality. A common use case for this is a user store for management functions of your site, and another user store for customers who buy goods from your ecommerce site.

The interface uses EPiServer.ServiceLocation.ServiceLocator to register the default instance of the interface. Then, in your front-end code, use the ServiceLocator instance when writing your controllers, so you can easily switch to a new IRegistrar user store in the future if needed.

πŸ“˜

Note

This configuration requires the EPiServer.Commerce.Security NuGet package as dependency.

Interface methods

  • String AuthenticationType – Sets OWIN Authentication Type.
  • IPrincipal CreateUser(string userName, string password, string email); – Creates a user in the user store and returns a ClaimsPrincipal. The principal should contain the following claims for roles Everyone and Registered.
  • void DeleteUser(string userName); – Deletes the user.
  • bool ChangePassword(string userName, string oldPassword, string newPassword); – Changes the user's password.
  • ClaimsIdentity CreateIdentity(string userName); – Creates the ClaimsIdentity with the proper claims provided by the user store.
  • bool ValidateUser(string userName, string password); – Validates the userName and password.
  • void SignIn(AuthenticationProperties properties, params ClaimsIdentity\[] identities); – Calls in the controller when logging in a user; gets the OWIN context and signin with the Authentication property of the OwinContext.