In
SharePoint 2013 e
2016 non è più presente la voce di menu
Accedi come utente diverso (
Sign in as different user in inglese).
Avere questa funzionalità può essere utile soprattutto in un contesto di migrazione
da una farm
SharePoint 2010 oppure per fare dei test in fase di sviluppo.
Per sopperire alla mancanza è possibile richiamare direttamente la pagina che fa il cambio utente
/_layouts/closeConnection.aspx con il parametro
loginasanotheruser=true:
https://sharepoint.sgart.local/_layouts/closeConnection.aspx?loginasanotheruser=true&Source=[new site]
è anche possibile indicare una url di destinazione dopo il cambio login tramite il parametro
Source:
https://sharepoint.sgart.local/_layouts/closeConnection.aspx?loginasanotheruser=true&Source=/nuova/url/dei/destinazione
Se invece si vuole ripristinare la
voce di menu mancante:
bisogna agire sul controllo
Welcome.ascx che si trova in
C:\Program Files\Common Files\microsoft shared\Web Server Extensions\16\TEMPLATE\CONTROLTEMPLATES (per
SharePoint 2013 usare \15\ al posto di \16\).
Andrà aggiunto il seguente codice nel controllo menu con id uguale
ID_PersonalActionMenu:
<SharePoint:MenuItemTemplate
runat="server"
ID="ID_LoginAsDifferentUser"
Text="<%$Resources:wss,personalactions_loginasdifferentuser%>"
Description="<%$Resources:wss,personalactions_loginasdifferentuserdescription%>"
MenuGroupId="100"
Sequence="100"
UseShortId="true"
/>
il codice completo del controllo
Welcome.ascx sarà:
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Assembly Name="Microsoft.Web.CommandUI, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Control Language="C#" Inherits="Microsoft.SharePoint.WebControls.Welcome,Microsoft.SharePoint,Version=16.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" AutoEventWireup="false" compilationMode="Always" %>
<SharePoint:PersonalActions ToolTip="<%$Resources:wss,open_menu%>" runat="server" id="ExplicitLogout" MenuAlignment="Right" Visible="false">
<CustomTemplate>
<SharePoint:FeatureMenuTemplate runat="server"
FeatureScope="Site"
Location="Microsoft.SharePoint.StandardMenu"
GroupId="PersonalActions"
id="ID_PersonalActionMenu"
UseShortId="true"
>
<SharePoint:MenuItemTemplate runat="server" id="ID_PersonalInformation"
Text="<%$Resources:wss,personalactions_personalinformation%>"
Description="<%$Resources:wss,personalactions_personalinformationdescription%>"
MenuGroupId="100"
Sequence="100"
ImageUrl="/_layouts/15/images/menuprofile.gif?rev=40"
UseShortId="true"
/>
<SharePoint:MenuItemTemplate runat="server" id="ID_RequestAccess"
Text="<%$Resources:wss,personalactions_requestaccess%>"
Description="<%$Resources:wss,personalactions_requestaccessdescription%>"
MenuGroupId="100"
UseShortId="true"
Sequence="300"
/>
<SharePoint:MenuItemTemplate runat="server" id="ID_Logout"
Text="<%$Resources:wss,personalactions_logout%>"
Description="<%$Resources:wss,personalactions_logoutdescription%>"
MenuGroupId="100"
Sequence="400"
UseShortId="true"
/>
<SharePoint:MenuItemTemplate runat="server" id="ID_PersonalizePage"
Text="<%$Resources:wss,personalactions_personalizepage%>"
Description="<%$Resources:wss,personalactions_personalizepagedescription%>"
ImageUrl="/_layouts/15/images/menupersonalize.gif?rev=40"
ClientOnClickScript="javascript:ChangeLayoutMode(true);"
PermissionsString="AddDelPrivateWebParts,UpdatePersonalWebParts"
PermissionMode="Any"
MenuGroupId="200"
Sequence="100"
UseShortId="true"
/>
<SharePoint:MenuItemTemplate runat="server" id="ID_SwitchView"
MenuGroupId="200"
Sequence="200"
UseShortId="true"
/>
<SharePoint:MenuItemTemplate runat="server" id="MSOMenu_RestoreDefaults"
Text="<%$Resources:wss,personalactions_restorepagedefaults%>"
Description="<%$Resources:wss,personalactions_restorepagedefaultsdescription%>"
ClientOnClickNavigateUrl="javascript:SP.SOD.execute('browserScript', 'MSOWebPartPage_RestorePageDefault')"
MenuGroupId="200"
Sequence="300"
UseShortId="true"
/>
<!-- sgart.it:begin:Accedi come utente diverso -->
<SharePoint:MenuItemTemplate
runat="server"
ID="ID_LoginAsDifferentUser"
Text="<%$Resources:wss,personalactions_loginasdifferentuser%>"
Description="<%$Resources:wss,personalactions_loginasdifferentuserdescription%>"
MenuGroupId="100"
Sequence="100"
UseShortId="true"
/>
<!-- sgart.it:end:Accedi come utente diverso -->
</SharePoint:FeatureMenuTemplate>
</CustomTemplate>
</SharePoint:PersonalActions>
<SharePoint:ApplicationPageLink runat="server" id="ExplicitLogin"
ApplicationPageFileName="Authenticate.aspx" AppendCurrentPageUrl=true
Text="<%$Resources:wss,login_pagetitle%>" style="display:none" Visible="false" />
Il cambio utente, funziona sicuramente in un contesto con provider di autenticazione
NTLM, non è detto che funzioni in un contesto
federato come
ADFS o con applicazioni
Office.