Microsoft einrichten
Eine Entra-Anwendung registrieren, die Berechtigungen jedes Dienstes und das optionale Zertifikat, das den Zugriff auf gruppenweise geteilte Dateien ermöglicht.
Sie registrieren eine Anwendung in Ihrem Microsoft-Verzeichnis. Ihre Mitglieder verbinden anschließend ihr eigenes Konto, und der Assistent handelt mit den Rechten der jeweiligen Person.
Diese Seite ist die Einrichtungsanleitung. Konnektoren behandelt die Grundsatzfragen, die Sie vorher klären sollten.
Mit Azure Cloud Shell einrichten
Das Einrichtungsskript erstellt die Registrierung, fügt die ausgewählten Dienste hinzu, erstellt und prüft das Client-Geheimnis und kann das Zertifikat für den Gruppenzugriff konfigurieren. Drücken Sie bei der Dienstauswahl einfach die Eingabetaste, um alle verfügbaren Dienste zu aktivieren. Dies ist die empfohlene Einrichtung. Alternativ können Sie eine kürzere Liste eingeben. Das Skript läuft in Ihrer eigenen authentifizierten Microsoft-Umgebung. Laden Sie es in Azure Cloud Shell herunter, prüfen Sie es auf Wunsch und führen Sie es dann aus:
curl -fsSLo setup-microsoft-connector.sh \
https://docs.asteria-labs.com/scripts/setup-microsoft-connector.sh
bash setup-microsoft-connector.shDas Skript zeigt den Mandanten und jede Berechtigung an, bevor es etwas ändert. Kopieren Sie anschließend die Mandanten-ID, Client-ID, das Client-Geheimnis und gegebenenfalls den Zertifikatblock unter Konnektoren, dann Microsoft, in Asteria Cloud. Microsoft zeigt das erzeugte Geheimnis nur in dieser Cloud-Shell-Sitzung an. Speichern Sie es deshalb, bevor Sie das Fenster schließen.
Möchten Sie jeden Teil lieber selbst konfigurieren oder prüfen? Die folgende manuelle Anleitung erzeugt dieselbe Registrierung.
Manuelle Einrichtung
1. Die Anwendung registrieren
Gehen Sie im Microsoft Entra Admin Center zu Identität, dann Anwendungen, dann App-Registrierungen, dann Neue Registrierung.
- Name: etwas, das Ihre Administratoren wiedererkennen, zum Beispiel
Asteria Cloud connector. - Unterstützte Kontotypen: Nur Konten in diesem Organisationsverzeichnis. Ein einzelner Mandant ist die richtige Wahl, und dadurch entfällt für Sie auch die Herausgeberüberprüfung von Microsoft.
- Umleitungs-URI: Plattform Web, und die Adresse
https://app.asteria-labs.com/api/connectors/callback.
Kopieren Sie auf der Seite Übersicht die Anwendungs-ID (Client) und die Verzeichnis-ID (Mandant). Sie brauchen beide.
Dann Zertifikate und Geheimnisse, Neues Client-Geheimnis. Kopieren Sie den Wert sofort, denn Microsoft zeigt ihn nur einmal an. Notieren Sie das Ablaufdatum an einer Stelle, an der Sie es wiedersehen: Wenn ein Geheimnis abläuft, funktionieren alle Verbindungen Ihrer Mitglieder nicht mehr, und nur eine Administratorin oder ein Administrator kann das beheben.
2. Die Berechtigungen erteilen, die Ihre Mitglieder nutzen werden
API-Berechtigungen, dann Berechtigung hinzufügen, dann Microsoft Graph, dann Delegierte Berechtigungen.
Fügen Sie nur die Zeilen für Dienste hinzu, die Sie anbieten möchten. Jede Person, die sich verbindet, stimmt dem zu, was die Anwendung anfordert: Eine ungenutzte Berechtigung ist eine, die Ihre Mitglieder ohne Gegenwert akzeptieren.
| Dienst | Berechtigungen | Wofür sie verwendet werden | Administratorzustimmung |
|---|---|---|---|
| Immer | openid, email, profile, offline_access | Anmelden und verbunden bleiben. offline_access verhindert, dass immer wieder eine Anmeldung nötig wird. | Nein |
| Dateien | Files.Read.All | OneDrive- und SharePoint-Dateien lesen und einen Ordner in eine Sammlung spiegeln. | Nein |
| Dateibearbeitung | Files.ReadWrite.All | Dateien erstellen, hochladen und ersetzen sowie Ergebnisse in einem Ordner speichern. | Nein |
| SharePoint-Websites | Sites.Read.All | Die SharePoint-Websites auflisten, denen ein Mitglied folgt, samt ihrer Dokumentbibliotheken, damit es beim Einrichten einer synchronisierten Sammlung zu einem Ordner navigieren kann, statt einen Link einzufügen. | Nein |
Mail.Read | Das Postfach eines Mitglieds lesen und durchsuchen. | Nein | |
| E-Mail-Versand | Mail.ReadWrite, Mail.Send | E-Mails im Namen des Mitglieds verfassen, bearbeiten und senden. | Nein |
| Kalender | Calendars.ReadWrite | Den Kalender lesen und Termine erstellen, einschließlich Teams-Besprechungslinks. | Nein |
| Verzeichnis | User.Read.All, GroupMember.Read.All | Personen über ihren Namen finden, dazu Fotos, Vorgesetzte und Gruppenzugehörigkeit. | Ja |
| Teams | Chat.Read, Team.ReadBasic.All, Channel.ReadBasic.All, ChannelMessage.Read.All | Chats und Kanalnachrichten lesen und Workflows bei neuen Nachrichten auslösen. | Ja, für ChannelMessage.Read.All |
| Teams-Versand | ChatMessage.Send, ChannelMessage.Send | Nachrichten in einem Chat oder Kanal veröffentlichen. | Nein |
Zeilen mit Ja müssen von einer Microsoft-365-Administratorin oder einem Administrator einmal für das gesamte Verzeichnis genehmigt werden. Verwenden Sie dafür auf dieser Seite Administratorzustimmung erteilen, nachdem Sie sie hinzugefügt haben. Sonst sieht ein Mitglied, das diesen Dienst auswählt, einen Zustimmungsbildschirm, den es nicht abschließen kann.
Microsoft gibt die Gesamtheit dessen zurück, was Ihr Verzeichnis für die Anwendung genehmigt hat, nicht nur das, was ein Mitglied ausgewählt hat. Ein Mitglied, das Dateien und E-Mail auswählt, kann also alles andere mitbekommen, was Sie erteilt haben. Fügen Sie Berechtigungen hinzu, sobald Sie einen Dienst freigeben, statt alle im Voraus.
3. In Asteria Cloud registrieren
Gehen Sie in der Konsole zu Konnektoren, dann Microsoft, und geben Sie Client-ID, Client-Geheimnis und Verzeichnis-ID (Mandant) ein. Das Formular lehnt eine Microsoft-Registrierung ohne Mandanten-ID ab, weil die Anmeldeadressen von Microsoft zu Ihrem Verzeichnis gehören.
Schalten Sie Microsoft 365 ein. Ihre Mitglieder können sich nicht verbinden, solange der Schalter aus ist.
Sie gehen dann zu Profil, dann Verbindungen, und verbinden ihr eigenes Konto.
4. Optional: Zugriff auf gruppenweise geteilte Dateien
Sie können diesen Abschnitt überspringen, alles Bisherige funktioniert weiterhin. Was dabei fehlt, ist genau umrissen und sollte vor der Entscheidung klar sein.
Was damit behoben wird
Wenn eine Sammlung eine SharePoint-Bibliothek spiegelt, zeigt Asteria Cloud jeder Person nur die Dokumente, die sie in SharePoint ohnehin öffnen kann. Dafür muss bekannt sein, mit wem ein Dokument geteilt wurde.
Ohne diesen Schritt funktionieren zwei Dinge nicht:
Dokumente, die mit einer Gruppe geteilt wurden, bleiben unsichtbar. Wird eine Datei mit einer Microsoft-365-Gruppe oder einer SharePoint-Gruppe wie Websitemitglieder geteilt, können wir nicht prüfen, wer zu dieser Gruppe gehört, und zeigen sie deshalb niemandem. Da die meisten SharePoint-Bibliotheken über Gruppen geteilt werden, ist das in der Regel die größere Hälfte.
Dokumente in einer Bibliothek, die der hinzufügenden Person nicht gehört, können vor deren Kolleginnen und Kollegen verborgen bleiben. Microsoft zeigt die vollständige Liste, mit wem eine Datei geteilt ist, nur der Besitzerin oder dem Besitzer dieser Datei. Alle anderen sehen ausschließlich ihren eigenen Zugriff. Verbindet also jemand eine Bibliothek, in der er Mitglied und nicht Besitzer ist, sehen wir nur dessen Zugriff und verbergen die Datei vor allen anderen.
Beides scheitert in die sichere Richtung: Dateien werden vor Personen verborgen, die sie sehen sollten, nie jemandem gezeigt, der sie nicht sehen darf. Verborgene Dateien wirken aber so, als verliere das Produkt Dokumente, deshalb lohnt es sich, das zu schließen.
Was einzurichten ist
Ein Zertifikat. Microsoft verlangt hier eine Zertifikatsauthentifizierung und weist ein Client-Geheimnis unabhängig von seinen Berechtigungen zurück. Erzeugen Sie eines, bewahren Sie den Schlüssel dort auf, wo Ihre anderen Geheimnisse liegen, und geben Sie ihm eine Laufzeit, an deren Erneuerung Sie denken werden:
openssl req -x509 -newkey rsa:2048 -nodes -days 730 \
-subj "/CN=asteria-acl" -keyout acl-key.pem -out acl-cert.pemLaden Sie in Entra unter Zertifikate und Geheimnisse, dann Zertifikate, ausschließlich acl-cert.pem hoch, also das Zertifikat. Laden Sie dort niemals die Schlüsseldatei hoch.
Anwendungsberechtigungen, auf zwei verschiedenen APIs. Diese liegen auf einer anderen Registerkarte als alles aus Schritt 2. Während die obigen Berechtigungen im Namen des verbundenen Mitglieds handeln, handeln diese im Namen der Anwendung selbst, ohne beteiligte Person.
Unter Berechtigung hinzufügen, dann Microsoft Graph, dann Anwendungsberechtigungen:
| Berechtigung | Wofür sie verwendet wird |
|---|---|
Files.Read.All | Die vollständige Liste lesen, mit wem eine Datei geteilt ist |
User.ReadBasic.All und GroupMember.Read.All | Prüfen, zu welchen Gruppen eine Person gehört. Microsoft verlangt beide zusammen. |
Unter Berechtigung hinzufügen, dann SharePoint, dann Anwendungsberechtigungen:
| Berechtigung | Wofür sie verwendet wird |
|---|---|
Sites.Read.All | Prüfen, wer zu einer SharePoint-Websitegruppe wie Websitemitglieder gehört |
Danach Administratorzustimmung erteilen.
SharePoint und Microsoft Graph bieten beide eine Berechtigung namens Sites.Read.All, und es ist nicht dieselbe. Sie brauchen die unter SharePoint.
Erteilen Sie nur die von Microsoft Graph, funktioniert der Gruppenzugriff halb: Microsoft-365-Gruppen werden aufgelöst, SharePoint-Websitegruppen nie, und Dokumente, die über Websitemitglieder geteilt wurden, bleiben ohne jeden Hinweis verborgen.
Installieren Sie das Zertifikat in Asteria Cloud. Gehen Sie in der Konsole zu Konnektoren, dann Microsoft, dann Aktualisieren, und fügen Sie den Inhalt beider Dateien, das Zertifikat gefolgt vom Schlüssel, in Zertifikat für den Gruppenzugriff ein.
Die Karte zeigt dann den Fingerabdruck des Zertifikats, der mit dem in Entra angezeigten übereinstimmen muss, sowie das Ablaufdatum. Wir speichern den Schlüssel verschlüsselt und verwenden ihn ausschließlich, um zu prüfen, wer ein Dokument lesen darf. Zum Öffnen von Dateien wird er nie benutzt: Diese werden immer mit dem Konto des verbundenen Mitglieds gelesen, sodass Asteria Cloud nie eine Datei enthalten kann, die diese Person nicht selbst öffnen könnte.
Erneuern Sie das Zertifikat vor Ablauf. Läuft es ab, endet der Gruppenzugriff und gruppenweise geteilte Dokumente verschwinden, während alles andere weiterläuft. Das Ablaufdatum steht auf der Konnektorkarte, damit Sie es kommen sehen.
Diese Berechtigungen sind weitreichend, und das ist der Kompromiss
Die obigen Anwendungsberechtigungen erlauben Asteria Cloud, in Ihrem gesamten Verzeichnis zu lesen, wer eine Datei öffnen darf und wer zu welcher Gruppe gehört. Genau das ermöglicht eine Antwort für eine Bibliothek, die niemandem mit einer persönlichen Verbindung gehört.
Sie erlauben nicht, Dateiinhalte auf eigene Rechnung zu lesen: Inhalte werden immer mit dem Konto eines verbundenen Mitglieds und dessen Rechten gelesen. Wenn Ihnen dieser Kompromiss nicht zusagt, überspringen Sie diesen Abschnitt. Alles andere funktioniert, und mit Gruppen geteilte Dateien bleiben schlicht verborgen.