none
Site Collection per Code anlegen: Unauthorized RRS feed

  • Frage

  • Hallo zusammen,

    ich habe eine Application Page mit einem Button programmiert, um eine Site Collection anzulegen. Der Programmcode wird mit elevated privileges ausgeführt.

    SPSecurity.RunWithElevatedPrivileges(delegate(){

      using (SPSite site = new SPSite(SPContext.Current.Site.ID)){

         using (SPWeb web = site.OpenWeb())

             ...

             SPWebApplication webApplication = site.WebApplication;

             SPSiteCollection sites = webApplication.Sites;

             sites.Add( ...

    (Alles läuft unter SharePoint Server 2013.)

    Wenn ich das in meinem Entwicklungssystem ausführe geht's problemlos. Im Ziel-Produktiv-System funktioniert's nicht. Da bekomme ich eine UnauthorizedAccessException.

    Der elevated code läuft ja unter der Identität des WebApplication Pools.

    Im Entwicklungssystem ist das: Network Service.

    Im Produktiv-System ist das: SPDOM\SPWebApp.

    Offenbar fehlen SPDOM\SPWebApp Berechtigungen. Ganz Grundsätzlich gefragt: Welche Voraussetzungen gibt es, damit ein UserX Site Collections per Programmcode anlegen kann? Welche Berechtigungen muss der User haben?

    (Mitglied der Farm Administrators zu sein reicht anscheinend nicht.)

    (Die Alternative "Self Service Site Creation" gibt es ja auch noch. Aber das möchte ich nur  als Notlösung nutzen.)

    Danke im voraus für alle Antworten!


    Freitag, 20. Februar 2015 08:30

Antworten

  • Hallo Elmo,

    bei Differenzen zwischen DEV und PROD à la "geht - geht nicht" würde ich an Deiner Stelle mal in Richtung der Datenbank-Berechtigungen für den SPDOM\SPWebApp schauen. Möglicherweise gibt es dort Unterschiede, die die fehlende Berechtigungen erklären können.

    Eventuell hilft auch noch ein Blick ins ULS mit einer aussagekräftigeren Fehlermeldung bzw. einem vernünftigen StackTrace, da die UnauthorizedAccessException nicht nur an einer Stelle im Site-Erstellungsprozess fliegen kann.

    Viel Erfolg und schöne Grüße,
    Thomas

    Samstag, 21. Februar 2015 14:29