Ögonblicksbilder av PowerPivot-galleriet misslyckas för SSL Host Header Sites

Den här artikeln är skriven av Rick Andring, Support Escalation Engineer.

Om du har följt flera trådar om problem och ändringar i PowerPivot för SharePoint 2016-galleriets ögonblicksbilder, kanske du är medveten om ett problem där ögonblicksbilder av galleriet inte fungerar korrekt (oändligt "timglas") för SSL-webbplatser när det finns flera webbplatser bundna till samma port. Även om vi inte begränsat till port 443 använder vi en allmän port 443-webbplats som ett exempel eftersom det är den vanligaste användningen.

Det här problemet upptäcktes i december 2016 under testningen och igen i ett väl forskat blogginlägg av Brian Laws ( ) i februari https://info.summit7systems.com/blog/bug-report-powerpivot-for-sharepoint-2016-thumbnails-not-generating 2017.

Visa problemet i PowerPivot-galleriet

Omfattande information om ögonblicksbilder eller loggposter tas inte upp i det här inlägget (du kan se Brians blogg ovan för det mesta eller följa med i ULS-loggarna). Här är 10 000 fot:

  1. En användare laddar upp en ny PowerPivot-arbetsbok till galleriet.

  2. Händelsemottagaren identifierar filen och om den är giltig för en ögonblicksbild.

  3. SharePoint anropar ExcelRest.aspx för varje relevant objekt i arbetsboken via en URL som liknar följande exempel:

    https://localhost / _ vti _ bin/ExcelRest.aspx/PowerPivot%20Gallery/GenericWorkbook.xlsx/Model/Sheets('Sheet1')

  4. Som en del av ovanstående samtal skickas den fullständiga URL:en för dokumentet med begäran till OOS för användaren som har laddat upp dokumentet. (Bra att "localhost" inte är en giltig URL för OOS, så vi skickar också den fullständiga URL:en som en del av begäran och OOS vet vart ögonblicksbilderna ska hämtas.)

  5. Office Online Server läser in arbetsboken, hämtar ögonblicksbilder och returnerar dem till SharePoint WFE-servern.

  6. Ögonblicksbilderna tillämpas på dokumentet.

Problemet

Den nya ögonblicksbildsprocessen orsakar ett problem för SSL-webbplatser som delar en port och använder unika certifikat. När du kombinerar flera unika URL:er, var och en med sina egna unika SSL-certifikat och localhost-samtal, får du IIS förvirrande på vilket certifikat som ska fästas på begäran (eftersom det är localhost får du den första på rad i allmänhet). För att undvika ett autentiseringshopp i ett scenario där mer än en SharePoint-webb frontend (WFE) ingår, valde produktgruppen att använda localhost. Om detta inte var på plats skulle KCD (Kerberos Constrained Delegation) behöva konfigureras mellan SharePoint WFE-servrarna för att undvika en alltför komplicerad konfiguration, bara för att ögonblicksbilderna i galleriet ska fungera korrekt.

I SharePoint ULS-loggarna visas en uppsättning poster som liknar följande information om felet:

00/00/2017 00:00:00:00 w3wp.exe (0xXXXX) 0x18A8 PowerPivot
Service Unknown 46 Medium Capturing Report Gallery snapshot information
from the following URL:
https://localhost/_vti_bin/ExcelRest.aspx/PowerPivot
Gallery/GenericWorkbook.xlsx/model/Sheets 37abef9d-92a8-20b9-17bb-d369b513965b

00/00/2017 00:00:00:00 w3wp.exe (0xXXXX) 0x18A8 PowerPivot
Service Unknown 46 High Snapshot <strong>Exception: Unable to take snapshots or
get details of the file: https://ssl.contoso.com/PowerPivot
Gallery/GenericWorkbook.xlsx from the uri:
https://localhost/_vti_bin/ExcelRest.aspx/PowerPivot
Gallery/GenericWorkbook.xlsx/model/Sheets. 37abef9d-92a8-20b9-17bb-d369b513965b

00/00/2017 00:00:00:00 w3wp.exe (0xXXXX) 0x18A8 PowerPivot
Service Unknown 46 <strong>High Snapshot Exception: Ensure localhost uris are
allowed</strong>. 37abef9d-92a8-20b9-17bb-d369b513965b

00/00/2017 00:00:00:00 w3wp.exe (0xXXXX) 0x18A8 PowerPivot
Service Report Gallery 99 High <strong>EXCEPTION: System.Net.WebException: The
underlying connection was closed: An unexpected error occurred on a
send</strong>. <<Truncated stack>> 37abef9d-92a8-20b9-17bb-d369b513965b

Under våra flera försök att begränsa det här kan vi se ögonblicksbilden som försöker läsa in det första webbplatsbundna certifikatet i listan (för min "sekundära" SSL-webbplats) i stället för certifikatet för ssl.contoso.com. På grund av anropet med localhost är IIS förvirrat (förstås) av vilket certifikat som ska lämna ut för begäran. Det här problemet är specifikt för servern där allt annat är korrekt konfigurerat och funktionellt, men det är inte begränsat till bara det här scenariot. Det här råkar bara vara den vanligaste (och grundläggande) konfigurationen.

Produktteamet har fastställt att detta är av design och kommer inte att ändras på grund av produktbegränsningar med SharePoint och Office Online Server.

Lösningen

  • Du kan använda ett jokerteckencertifikat. Det här är den enda möjliga lösningen vi har hittat hittills. Med ett jokerteckencertifikat för dina webbplatser kan du använda flera SSL-värdhuvudwebbplatser och ögonblicksbilderna av galleriet kommer att fungera (det här har testats och bekräftats fungera). Även detta förutsätter att allt annat har konfigurerats korrekt för att ögonblicksbilder ska fungera. Vi inser att det inte är möjligt för alla, men det är bara att behålla webbplatserna SSL och ha funktionella ögonblicksbilder i det här läget.

Anteckning

Se till att du undersöka alla aspekter av att använda jokerteckencertifikat innan du implementerar den här lösningen så att du är helt informerad om riskerna och fördelarna med att använda dem.

Andra alternativ

  • Du kan begränsa användningen till en SSL-webbplats med värdhuvud och certifikat och inga IP-specifika bindningar (webbplatsspecifika SSL-certifikat och IP-specifika bindningar går vanligtvis hand i hand).

  • Sluta använda PowerPivot-galleriet tillsammans. Du kan schemalägga datauppdateringar för PowerPivot-arbetsböcker i alla dokumentbibliotek så länge PowerPivot-lösningen har distribuerats till webbprogrammet och funktionerna är aktiverade på webbplatsen.

  • Konvertera SSL-webbplatserna till HTTP. (Kanske bara de webbplatser där arbetsböckerna finns?)

  • Ställ in "Alla dokument" på standardvyn i PowerPivot-galleriet:

    1. Navigera till listan som webbplatsägare.
    2. Klicka på "Bibliotek" > "Biblioteksinställningar" i menyfliksområdets meny.
      SharePoint-menyn med menyalternativet Biblioteksinställningar
    3. Rulla ned till avsnittet Vyer och klicka på Alla dokument.
      Alternativ för inställningar för SharePoint-bibliotek
    4. Markera rutan Gör till standardvy och klicka på "OK"
      Kryssrutan standardinställning
  • Du kan ta ovanstående steg längre genom att ta bort Silverlight-vyerna i PowerPivot-galleriet:

    • (Börja med att ange "Alla dokument" i standardvyn ovan)

      1. Navigera till listan som webbplatsägare.
      2. Klicka på "Bibliotek" > "Biblioteksinställningar" i menyfliksområdets meny.
        SharePoint-menyn med menyalternativet Biblioteksinställningar
      3. Rulla ned till avsnittet "Vyer" och klicka på någon av de tre PowerPivot Silverlight-vyerna "Galleri", "Teater" och "Karusell".
        Inställningar för SharePoint-bibliotek 2
      4. Klicka på "Ta bort".
        Bild av knappen Ta bort i SharePoint
  • Du kan också ta bort/dölja extra vyer med PowerShell (exempelskript som bifogas nedan):

    • Ta bort och dölja exempelskript

      Anteckning

      För dina aktuella PowerPivot-gallerier fortsätter de att försöka ta ögonblicksbilder även om du inaktiverar/tar bort vyerna. Det enda sättet att hindra dem från att försöka skapa ögonblicksbilder är att ersätta galleriet med ett vanligt dokumentbibliotek. Så länge du behåller PowerPivot-funktionerna på webbplatsen kan du fortfarande schemalägga datauppdateringar som vanligt. Vi rekommenderar starkt att du testar dessa skript i en utvecklingsmiljö innan du använder dem på en servergrupp som är viktig.

Den här artikeln tar upp ett problem som är specifikt för ögonblicksbilder av PowerPivot-galleriet i SharePoint 2016, och den refererar inte till eller refererar till andra produkter. Om du ser liknande fel i andra versioner av SharePoint hjälper inte listan med lösningar/rekommendationer här dig och är inte relevant för ditt problem. PowerShell-skripten i den här artikeln tillhandahålls som exempel för testning utan någon garanti eller garanti från Microsoft.