Quantcast
Channel: spackblog
Viewing all articles
Browse latest Browse all 48

HowTo: SharePoint 2019 On-Premise-Installationen mit dem OneDrive-Client unter macOS synchronisieren

$
0
0

Ich komme in meiner Organisation in den Genuss einer SharePoint-Welt. Nun möchte ich nicht darüber klagen, sondern einen kleinen Durchbruch beschreiben, weil es die kleinen Durchbrüche sind, die einem das Leben erträglich gestalten.

Die Synchronisation von Dateibibliotheken mit OneDrive-for-Business gegen SharePoint war bislang immer etwas problematisch, jedenfalls nicht besonders zuverlässig. Unter Windows gibt es hier recht erstaunliche Probleme, wenn die Gegenseite nicht die Microsoft-Cloud ist, sondern eine On-Premise-Installation (also eine lokale Installation innerhalb der Organisation): Manche Dateien sind einfach irgendwie kaputt und lassen sich nicht synchronisieren, die Oberfläche zeigt einem aber nicht an, welche das sind. Wenn man die findet, öffnet und einmal neu speichert, geht es weiter, sonst hat man monatelang ein dauerhaft Synchronisation signalisierendes Tray-Icon. Das Problem ist hier wie es aussieht primär die stiefmütterliche Behandlung der On-Premise-Installationen.

Viel lustiger und auch schwerer herauszufinden war aber, dass der bisherige Mac-Client einfach gar nicht mit On-Premise-Installationen von SharePoint zusammenarbeitet. Alles ist dokumentiert, als würde es gehen, aber es klappt einfach nicht. In irgendeinem Dokument ganz unten nach einer sehr langen Webseitentapete habe ich dann irgendwann den Hinweis entdeckt, dass die Synchronisation mit On-Premise-Installationen im Mac-Client gar nicht implementiert ist. Das ist leider kein Einzelfall, auch der Mac-Version von Outlook fehlen einige Funktionen einfach, ohne dass das klar dokumentiert ist. Etwa können die Mac-Clients keine Raumliste aus dem Directory anzeigen, wo man sich Räume zum Buchen von Meetings heraussuchen kann. Über solche Sachen stolpern wir ständig, sehr unerfreulich. Auch die macOS-Apps von Microsoft werden leider immer noch stiefmütterlich behandelt.

Nun haben wir ein Update auf SharePoint 2019 erhalten, was unter anderem mit der Hoffnung verbunden war, dass der dafür gedachte neue OneDrive-Sync-Client zuverlässiger funktioniert und vor allem auf dem Mac erstmals überhaupt funktioniert. Unsere Windows-10-Domänenrechner funktionieren damit tatsächlich einfach wie vorgesehen, das ließ hoffen. Nicht-Domänenrechner brauchen drei manuelle Registryeinträge, die dem vorinstallierten normalen OneDrive-Client mitteilen, dass er sich in einer On-Premise-Umgebung befindet und wo er da anklopfen soll. Mir ist nicht klar, wieso es dafür nicht einfach eine GUI gibt, wo ich beim Einloggen angeben kann, dass ich mich auf einen bestimmten On-Premise-Sharepoint verbinden will, aber Microsoft macht Sachen ja gerne kompliziert, ich vermute damit die IT-Admins eine schöne Jobgarantie bekommen und ein Interesse daran haben, dass ihr Herrschaftswissen wertvoll bleibt.

Also habe ich mir nach dem Update auf SharePoint 2019 mal den neuen Sync-Client auf einem unserer Macs angesehen. Beim Mac-Client setzt man die drei angegebenen Registry-Einstellungen nicht in der nichtexistenten Registry, sondern in einer plist-Datei. Nach etwas Recherche habe ich auch die richtige gefunden, da gibt es je nach Versionsstand des Clients verschiedene Orte für, in Foren kursieren auch noch ganz andere Pfade. Dieser Artikel von Microsoft beschreibt, was man für macOS wo wie setzt (hier der Vollständigkeit halber das Windows-Gegenstück dazu). Die kann man sich mal aus systemarchitektonischer Sicht genauer ansehen. Ich hätte das anders gelöst und zusätzlich eine GUI für die Vebindung zu On-Premise-Sharepoints vorgesehen, aber ganz dumm ist das auch nicht. Wobei es schon nicht zu Ende gedacht ist, weil man so nur mit genau einem On-Premise-Betreiber synchronisieren kann, mit SharePoints weiterer Organisation kann man also nicht synchronisieren.

plist-Gefummel

Als Mac-Gelegenheitsnutzer bin ich bereits daran gescheitert, diese binär kodierte plist-Datei zu bearbeiten, mit dem Kommandozeilentool /usr/libexec/PlistBuddy kriegt man das aber einigermaßen bequem hin. Der Texteditor BBEdit kann die auch bearbeiten (habe ich später auch noch ausprobiert), zudem XCode, aber das ist ein 8GB-Download. macOS bringt anscheinend von Haus aus keine offensichtliche Möglichkeit mit, diese wichtigen Konfigurationsdateien zu bearbeiten und in den Foren empfehlen einem fast alle XCode. Kann man ja auch mal so stehen lassen.

Damit die Änderung aber auch ankommt, muss man die Anweisung „Aktualisieren Sie den Cache mit den Einstellungen“ aus obigem Artikel richtig verstehen und ernst nehmen. Auch da hilft etwas Recherche: Ein defaults read ~/Library/Preferences/com.microsoft.OneDrive.plist (bzw. der andere längere Pfad der App-Store-Version, der in dem Artikel beschrieben ist) erledigt das, danach kommen die Änderungen auch an, Neustarts reichen nicht.

Dann klappt schon mal der Weg über den Synchronisieren-Button, der die App startet und einen Login mit DOMÄNE\username vorbelegt. Das ist auch der entscheidende Hinweis, wie man das auf dem normalen Weg über den Einrichtungsassistenten der App einrichtet: Die Organisations-E-Mail-Adresse leitet mich jedenfalls immer noch stoisch zum Cloud-Login von Microsoft weiter, was die SharePointOnPremPrioritzationPolicy mit dem Wert 1 ja eigentlich explizit verhindern soll. Sei es drum, mit DOMÄNE\username im E-Mail-Feld (jaja) landet man beim Organisations-Login und kann synchronisieren. Das Feld hat im alten Client übrigens explizit nur E-Mail-Adressen angenommen, wenn ich mich recht erinnere, auf die Idee war ich natürlich damals bereits gekommen.

Genauer Ablauf, wie man den aktuellen OneDrive-Client am Mac an eine On-Premise-Installation von SharePoint 2019 dranbekommt

Also nochmal zum Nachvollziehen, so hat das bei mir auf einem Mac mit Catalina in verschiedenen Konstellationen funktioniert: (Die ~ erreicht man übrigens über alt+n, den \über alt+shift+7. Wäre ja zu einfach, wenn Apple einfach mal die Tasten ordentlich beschriften würde…)

  1. Den neuen OneDrive-Sync-Client runterladen, aktuell klappt das mit diesem Link, die Version aus dem App Store funktioniert auch, ich habe beide ausprobiert.
  2. Je nach installierter Version den richtigen Pfad der plist-Datei bestimmen, die Pfade sind hier dokumentiert, ich nehme im Folgenden den Pfad ~/Library/Preferences/com.microsoft.OneDrive.plist an, weil der übersichtlicher ist.
  3. Ein Terminal öffnen.
  4. Mit /usr/libexec/PlistBuddy ~/Library/Preferences/com.microsoft.OneDrive.plist den PlistBuddy starten.
    1. Command add SharePointOnPremFrontDoorUrl string https://my.on-premise-url.tld eingeben (die URL bekommt man von den IT-Admins)
    2. Command add SharePointOnPremTenantName string TENANT eingeben (den Tenant-Namen bekommt man von den IT-Admins)
    3. Command add SharePointOnPremPrioritizationPolicy integer 1 eingeben (der Registryschlüssel für Windows heißt SharePointOnPremPrioritization, warum auch immer)
    4. Command add IsBusinessProvisioned bool true eingeben (war bei mir schon gesetzt, in dem Fall die Fehlermeldung ignorieren)
    5. Command save eingeben
    6. Command exit eingeben
  5. Mit defaults read ~/Library/Preferences/com.microsoft.OneDrive.plist die Änderungen an der plist-Datei bekannt machen.
  6. One-Drive-Client starten und statt mit der geforderten E-Mail-Adresse mit DOMÄNE\benutzername anmelden. Oder alternativ aus dem Browser heraus auf Synchronisieren klicken und den Client darüber öffnen.

Sieht wüst aus, ließe sich aber mit einem simplen Script automatisieren. Microsoft möchte in Firmenumgebungen aber ohnehin, dass die Deploymentmethoden für solche Policys genutzt werden, als Gruppenrichtlinien bei Windows und ihr Pendant bei macOS. Sonst muss man halt mal ein paar Zeilen Copy and Paste machen. Bei mir hat der dann nach der Einrichting sofort mit dem Synchronisieren angefangen. Slow clap.

Da das ein Testrechner war und ich da nicht alle meine Daten drauf haben wollte, habe ich das abgebrochen und alles wieder entfernt. Ob das also langfristig zuverlässiger funktioniert als der alte OneDrive-for-Business-Client unter Windows, müssen andere herausfinden. Mit der Windows-Version des neuen Clients hatte ich jetzt in der ersten Woche noch keinen Ärger, das lässt hoffen.

Ich hoffe, das hilft jemandem weiter.


Viewing all articles
Browse latest Browse all 48

Latest Images

Trending Articles





Latest Images