„Benutzerinformationsliste“ – „User Information List“ – „UserInfo“

Was ist die „Benutzerinformationsliste“ – „User Information List“ – „UserInfo“?

Die „Benutzerinformationsliste“ („Title“ in deutschen Systemen) bzw. „User Information List“ („Title“ in englischen Systemen) bzw. „UserInfo“ („EntityTypeName“ in PowerShell bzw. Anzeige in MS-Access) ist eine versteckte SharePoint-Liste.

In jeder Websitesammlung existiert diese UserInfo-Liste (für jede Sitecollection eine eigene), auf die der Websitesammlungsadministrator zugreifen kann.

Diese Liste enthält Zeilen mit Benutzerinformationen und unter anderem folgenden Metainformationen (je nach dem, auf welche Art diese Liste angezeigt wird, s. weiter unten):

  • PowerShell (Get-SpUser)
    • Name
    • Email
    • Notes
    • LoginName
    • Groups
    • OwnedGroups
    • ID
    • Xml
    • RawSid
    • Sid
    • SystemUserKey
    • UserId
    • IsSiteAdmin
    • IsSiteAuditor
    • IsDomainGroup
    • IsApplicationPrincipal
    • IsHiddenInUI
    • IsShareByEmailGuestUser
    • RequireRequestToken
    • AllowBrowseUserInfo
    • IsUserSettingsSyncedWithProvider
    • Alerts
    • UserToken
    • RegionalSettings
    • LanguageSettings
    • ParentWeb
    • Roles
    • UserLogin
    • DisplayName
  • MS-Access
    • ID
    • Name
    • Konto
    • Geschäftliche E-Mail-Adresse
    • Handy
    • Info
    • SIP-Adresse
    • Ist Websiteadministrator
    • Gelöscht
    • Ausgeblendet
    • Foto
    • Abteilung
    • Titel
    • Vorname
    • Nachname
    • Telefon (geschäftlich)
    • Benutzername
    • Website
    • Fragen
    • Büro
    • Bildzeitstempel
    • Bildplatzhaltestatus
    • Bildplatzhalter-Synchronisierungsstatus
    • Firma
  • SharePoint Web-GUI
    • Name (DisplayName)
    • Info
    • Titel
    • Abteilung

Es wird jedes mal ein neuer Eintrag mit Benutzerinformationen erzeugt (falls der Benutzer noch nicht in der Liste), sobald jemand auf ein Element bzw. die Site berechtigt wird, bzw. sich auf der Site anmeldet.

Beispiel: In der Liste „User Information List“ einer frisch erstellten SiteCollection befinden sich die initial darauf berechtigten Personen (wie SiteCollection-Admins, Site-Besitzer etc.). Wenn ich nun, als WebApplikation-Admin auf die SiteCollection zum ersten mal zugreife (perspielsweise per PowerShell-CMDlet Get-SpUser), dann wird meine aktuelle Benutzerkennung mit den dazugehörigen Metainformationen in diese „User Information List“ eingetragen. Die Informationen kommen entweder aus dem Benutzerprofildienst (User Profile Service) oder aus dem AD.

Wie kann ich die „Benutzerinformationsliste“ – „User Information List“ – „UserInfo“ anzeigen

Es gibt mehrere Arten, die versteckte Liste mit dem Titel „Benutzerinformationsliste“ bzw. „User Information List“ anzuzeigen. Es werden, je nach Zugriffsart mehr oder weniger Informationen angezeigt.

„Benutzerinformationsliste“ direkt im SharePoint anzeigen

Die Liste „Benutzerinformationsliste“ bzw. „User Information List“ kann sehr einfach und schnell direkt in der SharePoint-WebGUI angezeigt werden. Die Anzahl der Spalten bzw. der Attribute ist hier allerdings sehr gering.

Die URL der Sitecollection muss um folgenden Teil (ein aus diesen drei) erweitert werden.

  • _catalogs/users/simple.aspx
  • _catalogs/users/detail.aspx
  • _layouts/15/people.aspx?MembershipGroupId=0

Bei den beiden ersten URLs werden die Benutzerlisten nur angezeigt, bei der dritten URL kann man den Benutzer auch komplett aus diesen Listen und somit auch aus der SiteCollection entfernen.

Beispiel für eine zusammengesetzte URL:
https://sharpoint-portal.de/sitecollection/_layouts/15/people.aspx?MembershipGroupId=0

Benutzer und Gruppen - Alle Personen - _layouts-15-people.aspx-MembershipGroupId-0 - Benutzerinformationsliste - SharePoint 2013

„Benutzerinformationsliste“ in MS-Access anzeigen

Es ist möglich eine SharePoint-Liste, sowie die uns hier interessierende „Benutzerinformationsliste“, in Microsoft Access zu öffnen.

Es werden umfangreiche, in anderen Zugriffsarten nicht vorhandene, Metainformationen (wie Telefon) angezeigt.

Benutzerinformationsliste - UserInfo - Name - Konto - Geschäftliche E-Mail-Adresse - MS Access

 

Neue, leere Access-Datenbank erstellen.

Reiter „Externe Daten“ > Button „Weitere Optionen“ > „SharePoint-Liste

Reiter Externe Daten - Button Weitere Optionen - SharePoint-Liste - MS Access

URL der SiteCollection einfügen, die zweite Option „Erstellen Sie eine Verknüpfung zur Datenquelle, indem Sie eine verknüpfte Tabelle erstellen“ auswählen, „Weiter“ klicken.

Quelle und Ziel der Daten auswählen - Erstellen Sie eine Verknüpfung zur Datenquelle - MS Access

Liste „UserInfo“ auswählen und „OK„.

Wählen Sie die SharePoint-Listen aus, zu denen Sie eine Verknüpfung herstellen möchten - UserInfo - MS Access

„Benutzerinformationsliste“ in PowerShell anzeigen

Es ist zwar per PowerShell möglich, sich wie gewohnt den Inhalt der Liste „Benutzerinformationsliste“ bzw. „User Information List“ auszugeben (s.u).

$site = Get-SPSite "https://sharpoint-portal.de/sitecollection"
$web = $site.OpenWeb()
#$list = $web.lists["User Information List"]
$list = $web.lists["Benutzerinformationsliste"]
$list.Items | fl | Out-File c:\DumpUserInfoList.txt

 

Aber SharePoint bringt für PowerShell ein eigenes, dafür besser geeignetes CMD-let: Get-SpUser.

 

UserInfo - User Information List - Benutzerinformationsliste - Get-SpUser - Out-GridView - PowerShell

Anwendungsfall: „DisplayName“ korrigieren (Sync From AD)

 In manchen Fällen wird der DisplayName in der „User Information List“ nicht korrekt abgespeichert. Das Resultat ist: Der Name dieses Benutzers wird an vielen Stellen in dieser Websitesammlung falsch dargestellt (z.b. in der Form „Benutzerkennung@domain.com“ und nicht wie es korrekt wäre „Name, Vorname„.

Der Name kann per PowerShell korrigiert werden, bzw. vom AD synchronisiert werden. Dazu folgende Schritte durchführen.

Eventuell einen falschen Eintrag aus dem Benutzerprofildienst (User Profile Service = UPS) vorher entfernen.

Quellen und Links

Dokumentenversionen auflisten und löschen per PowerShell

Alle Dokumentenversionen einer Dokumentenbibliothek inklusive Dateigrößen per PowerShell anzeigen und löschen

Manchmal fällt es auf, dass die SharePoint-Seiten bzw. Dokumentenbibliotheken viel Speicherplatz belegen, obwohl die Summe der eigentlichen Dateien viel geringer ist.

Der Speicherplatzverbrauch ist evtl. durch verbrauchte Speicher-Quota oder durch das Betrachten der Speichermetriken (Websiteeinstellungen > Websitesammlungsverwaltung > Speichermetriken) aufgefallen.

Storage Metrics - Speichermetriken - _layouts-storman.aspx - SharePoint 2013

Die echten Dateigrößen kann man sich anzeigen lassen, indem man die Dokumentenbibliotheks- oder Dateieigenschaften im Windows-Explorer per WebDav-Protokoll öffnet.
(Dokumentenbibliothek im IE > Reiter „Bibliothek“ > „Mit Explorer öffnen“). SharePoint Bibliothek - Reiter BIBLIOTHEK - Menü lang - Mit Explorer öffnen Button - SharePoint 2013

Falls die in Speichermetriken angezeigten Datengrößen von den Tatsächlichen Dateigrößen abweichen, dann könnte es sein, dass die Speicherbelegung durch die Dokumentenversionen zustande kommt. Denn auch wenn nur geringe Änderungen in einem (großen) Dokument durchgeführt werden, wird (bei eingeschalteter Versionierung) jedes mal eine komplette Kopie dieser großen Datei erstellt.

Mehrere Probleme bei aktivierter Versionierung

Deaktivieren der Versionierung löscht die Versionen nicht

Nach dem Deaktivieren der Versionierung bzw. Begrenzung der Anzahl der Versionen werden bereits vorhandene Dokumentenversionen nicht gelöscht bzw. nicht bereinigt, somit wird der bereits belegte Speicher nicht freigegeben.

OneNote Versionen können nicht angezeigt/gelöscht werden

In unserem SharePoint 2013 System wird für OneNote-Notizbücher das Kontextmenü zum Anzeigen und Löschen der Versionen nicht angezeigt.

Die im SharePoint vorhandenen Versionen des OneNote-Dokumentes wurden nicht gelöscht, nachdem die Versionen im OneNote-Dokument selbst gelöscht und inklusive Papierkorb im Dokument deaktiviert wurden.

Skript für das Auflisten aller Dokumenten-Versionen und deren Datengröße innerhalb einer Dokumentenbibliothek

Dieses Skript wird alle Dokumente und deren Versionen einer Dokumentenbibliothek inklusive Speicherplatzbelegung und Dateigrössensummen als Tabelle und Liste ausgeben.

Das Skript am besten in einer PowerShell-ISE blockweise ausführen.

Das Skript zeigt alle Elemente der Dokumentenbibliothek (Listenelemente) und Anzahl der Versionen pro Listeneintrag.

Hinweis: OneNote-Notizbücher werden wie Ordner und OneNote-Abschnitte bzw. Reiter als einzelne Dateien mit eigenen Versionen behandelt.

Dokumentenbibliothek - Listenelemente - Versionen Anzahl - PowerShell

 

Dann werden die eigentlichen Dokumente (inklusive unter anderem Dateigröße, Anzahl der Versionen, Speicherplatzsumme der Versionen pro Dokument usw.) ausgegeben.

Am Ende der Tabelle wird die Dateigröße aller Dokumente der Dokumentenbibliothek (Dateigrössensumme) und der Speicherplatzverbrauch aller Versionen in der Dokumentenbibliothek ausgegeben.

 Dokumentenbibliothek - Tabelle - Dokumentenversionen - Dateigroesse, Anzahl Versionen, Dateisumme der Versionen - PowerShell

 

Am Ende des Skriptes werden die Dateien mit dazugehörigen Versionen als eine Liste ausgegeben und die Gesamtsumme der Dokumentenbibliothek (alle Dateien plus alle Versionen) ausgegeben.

Dokumentenbibliothek - Liste - Dokumentenversionen - Dateigroesse, Versionen - PowerShell

Dokumentenbibliothek - Liste - Dokumentenversionen - Dateigroesse, Versionen, Summe Dateien und Versionen - PowerShell

Erstellung der Versionen per PowerShell deaktivieren

Die Versionierung kann man entweder direkt im SharePoint deaktivieren: Dokumentenbibliothek > Reiter „Bibliothek“ > Bibliothekeinstellungen > „Versionsverwaltungseinstellungen

oder mit Hilfe des nachfolgenden Skriptes.

 

Versionsverwaltungseinstellungen - EnableVersioning - Disable Versioning - PowerShell Skript

Dokumentenbibliothek - Reiter Bibliothek - Bibliothekeinstellungen - Versionsverwaltungseinstellungen - Keine Versionskontrolle - SharePoint 2013

Alle Versionen in einer Dokumentenbibliothek löschen per PowerShell-Skript

Dieses Skript löscht alle Versionen aller Dokumente in einer Dokumentenbibliothek. Dabei ist es für das Skript irrelevant, ob die Versionierung in den „Versionsverwaltungseinstellungen“ aktiviert oder deaktiviert ist.

Wie immer gilt: Vorher immer ein Backup anfertigen!

Das Skript auch am besten in einer PowerShell-ISE blockweise ausführen.

 

Alle versionen in einer Dokumentenbibliothek löschen - PowerShell

Nun sind alle Versionen entfernt und nur noch die Dokumente selbst sind vorhanden.

 Dokumentenbibliothek - Listenelemente - Versionen Anzahl 1 - PowerShell

Dokumentenbibliothek - Tabelle - Dokumentenversionen - Dateigroesse, Anzahl Versionen, Dateisumme der Versionen 0 - PowerShell

Dokumentenbibliothek - Liste - Dokumentenversionen - Dateigroesse, Versionen - Nur Summe der Dateien geblieben - PowerShell

Links und Quellen

SpShellAdmin – Benutzer für die PowerShell-Verwaltung der SharePoint-Farm berechtigen

Damit ein Benutzer die PowerShell-CMDlets zur Verwaltung der SharePoint-Farm verwenden kann, muss dieser zuerst dafür mit dem CMDlet Add-SPShellAdmin berechtigt werden.

Hier zeige ich kurz wie das gemacht wird, was dabei im Hintergrund passiert und was die Voraussetzungen für die Durchführung sind.

SpShellAdmin – Benutzer für die PowerShell-Verwaltung der SharePoint-Farm berechtigen weiterlesen

Websitesammlung in eine neue Inhaltsdatenbank verschieben – Kurzanleitung

Vorhandene Websitesammlung in eine neue Inhaltsdatenbank verschieben

Es gibt einige Gründe, um eine zusätzliche Inhaltsdatenbank für SharePoint zu erstellen. Zum einen kann z.B. die maximal empfohlene Größe der Content-DB erreicht sein, zum anderen kann der Wunsch nach etwas mehr Performance-Gewinn die Aufteilung der Inhaltsdatenbanken rechtfertigen.

Man sollte aber nach Möglichkeit nicht einfach die Option „Inhaltsdatenbank hinzufügen“ (Add a content database) in der Zentraladministration benutzen, da die Einstellungen noch optimiert werden sollten.

Websitesammlung in eine neue Inhaltsdatenbank verschieben - Nicht benutzen - Inhaltsdatenbank hinzufügen - No - Add a content database - SharePoint 2013

In diesem Artikel zeige ich, wie man eine neue Inhaltsdatenbank für den SharePoint anlegt, konfiguriert und die vorhandene Websitesammlung (Sitecollection) in diese neue Datenbank verschiebt.

Websitesammlung in eine neue Inhaltsdatenbank verschieben – Kurzanleitung weiterlesen

SQL Server Setup – Empfehlungen für SharePoint

Die Standardeinstellungen eines SQL-Servers sind alles andere als Optimal für die SharePoint Umgebung. In diesem Artikel habe ich versucht das für den SharePoint optimale SQL Server Setup und die Einstellungen des SQL-Servers zusammenzutragen.

Das SQL Server Setup sollte nur als Orientierungshilfe (primär als Notizen für mich selbst) dienen, denn natürlich ist jede SharePoint-Umgebung sehr individuell und erfordert auch angepasstes SQL-Server-Setup.

SQL Server Setup – Empfehlungen für SharePoint weiterlesen

Nintex Forms 2013 – Update Anleitung

Einleitung

In dieser Anleitung zeige ich Schritt für Schritt, wie wir Nintex Forms 2013 Update durchgeführt haben. Nintex Forms 2013 – Update Anleitung weiterlesen

Nintex Workflow 2013 – Update Anleitung

Einleitung

In dieser Anleitung zeige ich Schritt für Schritt, wie wir Nintex Workflow 2013 Update durchgeführt haben. Nintex Workflow 2013 – Update Anleitung weiterlesen

AppFabric Update – Anleitung

AppFabric (Distributed Cache) Update – CU Installation

Der AppFabric bzw. Distributed Cache wird automatisch mit der SharePoint Installation mitinstalliert. Früher hieß es seitens Microsoft, dass dieser Dienst mit dem SharePoint mitgepatcht wird.

Mittlerweile hat sich die Empfehlung geändert: Der AppFabric bzw. der Distributed Cache Dienst muss vom Administrator per Hand aktualisiert werden.

In dieser Anleitung möchte ich zeigen, wie das AppFabric Update problemlos durchgeführt werden kann.

AppFabric Update – Anleitung weiterlesen

Web Part PageView: PageView=Shared vs. PageView=Personal

Web Part PageView=Shared & PageView=Personal

Es ist in SharePoint möglich, für eine Website-Seite (SharePoint-Web-Part- Page bzw. WebPage) eine persönliche Ansicht (PageView=Personal), mit eigenen Web-Parts zu definieren. Diese persönliche Ansicht wird nur mir persönlich beim Aufruf der Web Part Page angezeigt. Alle anderen Benutzer bekommen weiterhin die freigegebene Ansicht (PageView=Shared) zu Gesicht.

In diesem Artikel zeige ich, wie man diese Ansichten aufrufen und nutzen kann.

Web Part PageView: PageView=Shared vs. PageView=Personal weiterlesen

Microsoft SQL Server Reporting Services – Remotefehler aktivieren

SSRS (SharePoint integrated Mode) – Remotefehler aktivieren – Einleitung

Wird ein SSRS-Bericht aufgerufen und tritt dabei ein Fehler auf, dann präsentiert der im Sharepoint integrierten Modus installierte SQL Server Reporting Dienst normalerweise den Vorschlag, man solle doch den Remotefehler aktivieren, um weitere Informationen zu erhalten.

Microsoft SQL Server Reporting Services
Fehler
Um weitere Informationen zu diesem Fehler zu erhalten, navigieren Sie zum Berichtsserver auf dem lokalen Servercomputer, oder aktivieren Sie Remotefehler.

SSRS - Microsoft SQL Server Reporting Services - Fehler - Um weitere Informationen zu diesem Fehler zu erhalten, aktivieren Sie Remotefehler

In dieser kurzen Anleitung möchte ich zeigen, wie man die Aktivierung von Remotefehler durchführt, damit die Fehlermeldung direkt an derselben Stelle angezeigt wird.

Der Vorteil ist, dass der Power-User nicht erst den Administrator um Details aus dem ULS-Log bitten muss, sondern sieht den Fehler direkt und kann diesen ggf. selbst beseitigen.

Microsoft SQL Server Reporting Services – Remotefehler aktivieren weiterlesen