Hello.
It is possible, however some simple modification is required.
You can navigate to
\CMSModules\Membership\Pages\Users\User_Edit_General.aspx.cs and see code below, which is responsible for this link:
// Display impersonation link if current user is global administrator
if (CMSContext.CurrentUser.IsGlobalAdministrator && RequestHelper.IsFormsAuthentication() && (ui != null) && (ui.UserID != CMSContext.CurrentUser.UserID) && !ui.IsPublic())
{
// Display impersonation link only if both users have disabled access to sitemanager
// or current user has access enabled
if (!CMSContext.CurrentUser.UserSiteManagerDisabled || !ui.UserIsGlobalAdministrator || ui.UserSiteManagerDisabled)
{
string message = GetImpersonalMessage(ui);
// Header actions
string[,] actions = new string[1, 11];
actions[0, 0] = HeaderActions.TYPE_LINKBUTTON;
actions[0, 1] = GetString("Membership.Impersonate");
actions[0, 2] = "if (!confirm('" + message + "')) { return false; }";
actions[0, 4] = GetString("Membership.Impersonate");
actions[0, 5] = GetImageUrl("Objects/CMS_User/Impersonate.png");
actions[0, 6] = "impersonate";
actions[0, 8] = "true";
CurrentMaster.HeaderActions.Actions = actions;
CurrentMaster.HeaderActions.ActionPerformed += new CommandEventHandler(HeaderActions_ActionPerformed);
}
}
If you modify if condition in a proper way, given element can be shown for any user or role.
Best Regards,
Radek Macalik