Einführung
Die Vitextra-Lösung Employee Directory führt keine eigene Mitarbeiterdatenbank. Personen, Profilattribute, Fotos, Vorgesetzte, die Teams-Anwesenheit und Frei/Gebucht-Informationen werden zur Laufzeit über die Microsoft Graph API aus Microsoft 365 gelesen. Dafür fordert das Lösungspaket fünf Microsoft-Graph-Berechtigungen an, die ein Mandantenadministrator einmalig genehmigt.
Dieser Artikel listet die Berechtigungen auf, erklärt, wofür jede verwendet wird und welches Webpart sie benötigt, beschreibt genau, was Benutzer sehen, wenn eine Berechtigung nicht genehmigt ist, und zeigt, wie Sie die Berechtigungen genehmigen und ihren Status prüfen. Er richtet sich an SharePoint- und Microsoft 365-Administratoren sowie an Sicherheitsprüfer, die das Produkt vor der Bereitstellung bewerten.
Die Berechtigungen
Das Paket Vitextra Employee Directory enthält drei Webparts – Employee Directory, Employee Directory (Entra ID) und New Employees – und fordert für alle zusammen einen gemeinsamen Satz von Berechtigungen an. Alle fünf sind delegierte Berechtigungen für Microsoft Graph:
| Berechtigung | Verwendet für | Benötigt von | Wenn nicht genehmigt |
|---|---|---|---|
Directory.Read.All | Lesen der Mitglieder von Microsoft Entra-Verzeichnisrollen für die Bedingung Benutzerrollen im Filter-Editor. Zusammen mit User.Read.All deckt sie auch das Lesen von Benutzerkonten ab | Employee Directory (Entra ID), New Employees – nur wenn der Filter eine Bedingung Benutzerrollen enthält | Bei einem konfigurierten Rollenfilter zeigt Employee Directory (Entra ID) eine Warnung und kann die Rollenmitgliedschaft nicht zuverlässig prüfen; New Employees zeigt einen Fehler. |
User.Read.All | Lesen und Durchsuchen von Benutzerkonten und ihren Profilattributen, der Vorgesetzte und die direkten Mitarbeiter einer Person, das eigene Team des angemeldeten Benutzers sowie Mitarbeiterfotos | Alle drei Webparts; im Webpart Employee Directory mit der Quelle Benutzerprofile Fotos, der Detailbereich und die Schnellfilter | Die Personenliste kann nicht geladen werden, und ein Fehler wird angezeigt (siehe unten) |
Presence.Read.All | Die Microsoft Teams-Anwesenheitsanzeige auf Karten, die Spalte Status und die Meldung Abwesend im Detailbereich | Alle drei Webparts | Personen werden ohne Anwesenheit angezeigt; die Spalte Status zeigt Offline |
Calendars.Read | Der heutige Frei/Gebucht-Zeitplan der Person und des angemeldeten Benutzers sowie die Zeitzone und die Arbeitszeiten der Person | Employee Directory, Employee Directory (Entra ID) – Detailbereich | Der Abschnitt Ortszeit, Arbeitszeiten und Verfügbarkeit wird nicht angezeigt |
People.Read | Die Liste der Personen, mit denen der angemeldete Benutzer am häufigsten zusammenarbeitet | Employee Directory, Employee Directory (Entra ID) – Schnellfilter Personen, mit denen ich zusammenarbeite | Die Registerkarte Personen, mit denen ich zusammenarbeite wird nicht angezeigt |
📝 Hinweis
Directory.Read.All und User.Read.All überschneiden sich: Für das Lesen von Benutzerkonten akzeptiert Microsoft Graph jede der beiden. Der in der Zeile User.Read.All beschriebene Fehler tritt daher auf, wenn keine der beiden genehmigt ist – der normale Zustand direkt nach der Bereitstellung, solange alle fünf Anforderungen noch ausstehen. Genehmigen Sie beide, wie es das Paket anfordert.
Employee Directory verwendet diese Berechtigungen ausschließlich zum Lesen von Verzeichnis-, Profil- und Postfachdaten in Microsoft Entra ID und Microsoft 365. Es verändert diese Daten nicht und fordert keine Berechtigungen mit Write im Namen an. Das Speichern von Webpart-Einstellungen auf einer SharePoint-Seite erfolgt unabhängig von diesen Microsoft-Graph-Berechtigungen.
Delegierte Berechtigungen, keine Anwendungsberechtigungen
Alle fünf Berechtigungen sind delegiert: Jeder Aufruf von Microsoft Graph erfolgt aus dem Browser des angemeldeten Benutzers mit einem Token, das für diesen Benutzer ausgestellt wurde. Die Webparts haben keine Anwendungsberechtigungen (App-only), kein Dienstkonto und kein eigenes Back-End, das Ihr Verzeichnis liest.
Microsoft Graph berücksichtigt die erteilten delegierten Berechtigungen zusammen mit den Rechten des angemeldeten Benutzers. Das Verzeichnis kann daher andere Personen als Outlook oder Teams anzeigen; es ist keine Kopie ihrer Adressbücher.
📝 Hinweis
Die Berechtigungen werden nicht dem Employee Directory-Paket selbst erteilt. SharePoint erteilt sie einer einzigen Microsoft-Entra-ID-Anwendung, die es für alle SPFx-Lösungen im Mandanten verwendet – SharePoint Online Web Client Extensibility (früher: SharePoint Online Client Extensibility Web Application Principal). Wurde eine Berechtigung bereits für eine andere Lösung genehmigt, zum Beispiel für Vitextra Organizational Chart, wird dieselbe Erteilung wiederverwendet, und die Anforderung erscheint nicht erneut als ausstehend. Dieselbe Genehmigung gilt auch, wenn die Webparts in Microsoft Teams ausgeführt werden.
Die Quelle „Benutzerprofile“ und die SharePoint-Suche
Das Webpart Employee Directory kann Personen aus zwei Quellen lesen, die in seinen Einstellungen ausgewählt werden:
- Entra ID (Azure AD) – Liste, Suche und Seitenaufteilung laufen über Microsoft Graph und hängen von den oben genannten Berechtigungen ab.
- Benutzerprofile – Liste, Suche, Verfeinerungen und Sortierung stammen aus der SharePoint-Suche (den Personenergebnissen des SharePoint-Suchdiensts), nicht aus Microsoft Graph. Sie arbeiten mit den eigenen SharePoint-Suchrechten des Benutzers und der üblichen Sicherheitskürzung und benötigen keine der Microsoft-Graph-Berechtigungen. Auch der Abschnitt Zuletzt verwendete Dokumente im Detailbereich verwendet die SharePoint-Suche.
Auch mit der Quelle Benutzerprofile rufen einige Teile des Webparts weiterhin Microsoft Graph auf: Fotos, die Anwesenheit und die Meldung Abwesend, die Abschnitte Manager und Untergeordnete sowie der Abschnitt Ortszeit, Arbeitszeiten und Verfügbarkeit im Detailbereich und die Schnellfilter Mein Team und Personen, mit denen ich zusammenarbeite. Sie hängen von denselben Berechtigungen ab wie im Modus Entra ID (Azure AD).
Die Webparts Employee Directory (Entra ID) und New Employees verwenden immer Microsoft Graph.
💡 Tipp
Die Unterschiede zwischen den beiden Verzeichnis-Webparts und ihren Quellen beschreibt der Artikel KB10310. Employee Directory oder Employee Directory (Entra ID): Welches Webpart sollten Sie wählen?.
Was Benutzer sehen, wenn eine Berechtigung fehlt
Die Webparts sind so gestaltet, dass eine fehlende optionale Berechtigung nur die davon abhängige Funktion entfernt. Das genaue Verhalten der aktuellen Version:
| Webpart / Modus | Fehlende Berechtigung | Was Benutzer sehen |
|---|---|---|
| Employee Directory (Entra ID) | User.Read.All (und Directory.Read.All) | Beim ersten Laden ohne zuvor geladene, nicht leere Liste: Statt der Liste ein Fehlersymbol mit dem von Microsoft Graph zurückgegebenen Fehlertext; gibt es keinen Text, die Meldung Leider ist ein Fehler aufgetreten. Aktualisieren Sie die Seite, und versuchen Sie es erneut. |
| Employee Directory, Quelle Entra ID (Azure AD) | User.Read.All (und Directory.Read.All) | Derselbe Fehler statt der Suchergebnisse |
| Employee Directory, Quelle Benutzerprofile | User.Read.All (und Directory.Read.All) | Liste, Suche und Verfeinerungen funktionieren weiter. Im Detailbereich werden die Abschnitte Manager und Untergeordnete nicht angezeigt, und Fotos werden aus SharePoint statt aus Microsoft Graph geladen |
| New Employees | User.Read.All (und Directory.Read.All) | Ein Fehlersymbol mit Leider ist ein Fehler aufgetreten. Aktualisieren Sie die Seite, und versuchen Sie es erneut., gefolgt von dem von Microsoft Graph zurückgegebenen Fehlertext |
| Employee Directory (Entra ID), New Employees | Directory.Read.All | Bei einem konfigurierten Rollenfilter zeigt Employee Directory (Entra ID) eine Warnung und kann die Rollenmitgliedschaft nicht zuverlässig prüfen; New Employees zeigt einen Fehler. |
| Alle Webparts | Presence.Read.All | Karten zeigen keine Anwesenheitsanzeige, die Spalte Status zeigt für alle Offline, und der Detailbereich zeigt keine Meldung Abwesend |
| Employee Directory, Employee Directory (Entra ID) | Calendars.Read | Der Abschnitt Ortszeit, Arbeitszeiten und Verfügbarkeit im Detailbereich wird nicht angezeigt. Es wird kein Fehler angezeigt |
| Employee Directory, Employee Directory (Entra ID) | People.Read | Die Registerkarte Personen, mit denen ich zusammenarbeite ist in der Schnellfilterleiste ausgeblendet. Die übrigen Registerkarten funktionieren weiter |
❗ Wichtig
Das Webpart Employee Directory (Entra ID) speichert eine Kopie der geladenen Liste im Browser und zeigt sie beim nächsten Besuch an. Ist die Kopie älter als 24 Stunden, wird sie im Hintergrund aktualisiert; Aktualisieren startet ebenfalls eine neue Anfrage. Schlägt diese nach dem Entzug einer Berechtigung fehl und wird bereits eine zuvor geladene, nicht leere Liste angezeigt, bleiben die Liste und ihr ursprüngliches Aktualisierungsdatum erhalten. Es erscheint die Warnung Die Liste konnte nicht aktualisiert werden. Die gespeicherte Kopie wird angezeigt., gegebenenfalls gefolgt vom Fehlertext. Die Liste wird nicht durch eine Fehleransicht ersetzt. Diese erscheint, wenn das Laden fehlschlägt und keine zuvor geladene, nicht leere Liste vorhanden ist. Wenn Sie eine Berechtigungsänderung testen, löschen Sie die Browserdaten der Website oder verwenden Sie ein privates Fenster.
📝 Hinweis
Für Anwesenheit und Frei/Gebucht-Informationen reicht die Berechtigung allein nicht aus: Die Person muss Microsoft Teams verwenden, um einen Anwesenheitsstatus zu haben, und ein Exchange Online-Postfach besitzen, um einen Frei/Gebucht-Zeitplan zu haben. Einzelheiten zum Verfügbarkeitsabschnitt finden Sie in KB10317. Employee Directory: Ortszeit, Arbeitszeiten und Verfügbarkeit, zu den Schnellfiltern in KB10214. Schnellfilter im Employee Directory: Meine Abteilung, Mein Team, Personen, mit denen ich zusammenarbeite, Favoriten.
Die Berechtigungen genehmigen
Die Berechtigungsanforderungen werden automatisch erstellt, wenn das Employee Directory-Paket im Mandanten-App-Katalog bereitgestellt wird. Ein Globaler Administrator genehmigt sie:
- Öffnen Sie das SharePoint Admin Center.
- Erweitern Sie in der linken Navigation Erweitert und wählen Sie API-Zugriff.
- Suchen Sie auf der Registerkarte Ausstehende Anforderungen die Anforderungen des Pakets Vitextra Employee Directory für Microsoft Graph –
Directory.Read.All,User.Read.All,Presence.Read.All,Calendars.ReadundPeople.Read. - Wählen Sie jede Anforderung aus, klicken Sie auf Genehmigen und bestätigen Sie.
Benutzer erhalten keine Zustimmungsaufforderung: Nach der Genehmigung funktionieren die Webparts für alle im Mandanten. Zeigt ein Webpart einige Minuten nach der Genehmigung noch einen Fehler an, laden Sie die Seite neu.
💡 Tipp
Das vollständige Verfahren, einschließlich der Genehmigung mit PowerShell, der teilweisen Genehmigung und des Entziehens von Berechtigungen, beschreibt der Artikel KB10360. So genehmigen Sie Microsoft-Graph-API-Berechtigungen für Vitextra-Lösungen im SharePoint Admin Center.
Den Status der Berechtigungen prüfen
Um zu prüfen, welche Berechtigungen bestehen, öffnen Sie im SharePoint Admin Center Erweitert › API-Zugriff:
- Die Registerkarte Genehmigte Anforderungen muss alle fünf Microsoft-Graph-Berechtigungen auflisten. Da die Erteilungen mandantenweit gelten, kann eine Berechtigung dort unter einem anderen Paket aufgeführt sein, das sie zuerst angefordert hat – das genügt.
- Jede Berechtigung, die noch auf der Registerkarte Ausstehende Anforderungen steht, ist noch nicht wirksam; die davon abhängigen Funktionen verhalten sich wie unter Was Benutzer sehen, wenn eine Berechtigung fehlt beschrieben.
Wenn Sie Employee Directory aktualisieren, bleiben die zuvor genehmigten Berechtigungen genehmigt. Fordert eine neue Version eine zusätzliche Berechtigung an, erscheint sie auf der Registerkarte Ausstehende Anforderungen und muss auf dieselbe Weise genehmigt werden.
Hinweise für Sicherheitsprüfungen
Für eine Sicherheitsprüfung sind in der Regel folgende Punkte relevant:
- Alle fünf Microsoft-Graph-Berechtigungen sind delegierte Leseberechtigungen; sie erlauben Employee Directory keine Änderung von Verzeichnis-, Profil- oder Postfachdaten.
- Verzeichnisdaten, Fotos, Anwesenheit und Kalenderinformationen werden vom Browser des Benutzers direkt bei Microsoft Graph und SharePoint abgerufen und weder an Vitextra noch an Dritte gesendet.
- Die Quelle Benutzerprofile liest Personen über die SharePoint-Suche mit den eigenen Rechten des Benutzers und benötigt für die Liste selbst keine Microsoft-Graph-Berechtigung.
- Favoriten, die zwischengespeicherte Mitarbeiterliste und die Standardkonfiguration der persönlichen Teams-App werden außerhalb von Microsoft Graph gespeichert; wo genau und welche Daten die Webparts lesen, beschreibt der Artikel KB10469. Employee Directory: Welche Daten gelesen werden und wo Favoriten und Einstellungen gespeichert sind.
- Anfragen an Vitextra-Dienste umfassen Lizenzprüfungen, Nutzungstelemetrie mit technischen Kennungen und bei Nutzung dieser Funktion die Speicherung der Standardkonfiguration der persönlichen Teams-App; siehe KB10363. Wo Vitextra-Produkte Ihre Daten speichern: Datenschutz, Datenresidenz und DSGVO.
💡 Tipp
Wie Sie die Lösung installieren, beschreibt KB10035. So installieren Sie ein Vitextra-Produkt in SharePoint Online. Wie Sie das Webpart einer Seite hinzufügen, beschreibt KB10309. So fügen Sie das Employee Directory Webpart hinzu und konfigurieren es.
Weitere Informationen zum Produkt: https://vitextra.com/de/products/employee-directory