Sometimes, we may be in a situation where we need to authenticate users against an external security system before providing them access to secured pages or media items of the Sitecore website; this can be achieved by creating virtual users in Sitecore.
In some cases, virtual users are easier and simpler to implement than authentication providers. In this recipe, we will create a virtual user for an authenticated user of an external system, apply some predefined roles and permissions, and log in that user to access website resources.
This recipe assumes that a previewer user is already authenticated in any external application, and we will log in this user as a virtual user with the provided access of Sitecore website resources based on predefined roles. We have already created a custom external\External Previewer
role with proper access rights that we need to provide to the external previewer.