Eine wahre Geschichte darüber, wie Microsoft Flow Ihren Office 365 Tenant in Schwierigkeiten bringen kann.

Anfangs 2019 wurde AskMeWhy Opfer einer Microsoft Flow Attacke auf den firmeneigenen Office 365 Tenant. Anhand dieser Anekdote möchten wir das Bewusstsein über die Risiken von Business Automation mit Microsoft Flow informieren und aufzeigen was es bedeuten kann, die Technologie den Benutzern im Unternehmen zur Verfügung zu stellen.

Es war ein grauer Tag im Winter 2017. Eigentlich nichts Aussergewöhnliches in Zürich. Besonders war, dass Microsoft vor kurzem Flow zur Automatisierung von Business Aufgaben in Office 365 released hatte und die Amtseinführung von Donald Trump als 45. Präsident der Vereinigten Staaten stand bevor.

Was haben Präsident Trump und Microsoft Flow miteinander zu tun?

Bei AskMeWhy leben wir die Devise «Eat your own food». Die Idee, Social Media Plattformen mit Flow nach Beiträgen und Hashtags zu einem spezifischen Unternehmen zu durchsuchen und positive Beiträge direkt im SharePoint Corporate Intranet zu publizieren, schätzte ich als nutzbringend ein und wollte dies erproben.

Ich setzte mich also an mein Arbeitsgerät, um erste Erfahrung mit Microsoft Flow zu sammeln. Dazu erstellte ich einen Ablauf, welcher Twitter Tweets nach einem Hashtag durchsucht, den gefundenen Beitrag via Microsoft Cognitive Services auf «Sentimente» prüft, und den gefundenen Beitrag mit einem Sentiment über 80 in einer SharePoint Liste in unserem AskMeWhy Tenant publiziert.

Microsoft Cognitive Services oder «Microsoft AI» bietet einen Web-Service an, welcher Texte analysiert und einen Wert zwischen 0 und 100 zurückgibt. «Sentiments» mit einem Wert über 80 schätzte ich als positiv ein.

Mein erster Flow war innert kürze erstellt und ich wartete auf Einträge in der SharePoint Liste. Ich wartete… und wartete… nichts kam. Schnell realisierte ich, dass ich das in Twitter gesuchte Hashtag anpassen müsste, um in kurzer Zeit Resultate zu erhalten. Bei der Suche nach einem aktuellen Hashtag wurde ich schnell fündig und änderte dieses im Flow auf «Trump». Kurz nach dem Neustart des Flow erhielt ich erste Resultate – trotz der Prüfung des Sentiments auf einen Wert über 80. Flow funktionierte und machte seine Arbeit. Ich konnte das Thema abschliessen und dem Tagesgeschäft folgen.

11 Millionen SharePoint-Listeneinträge!

Im Rahmen unseres «Dog Food Programs» arbeiten wir bei AskMeWhy mit unserem Projekt- und Team-Arbeitsplatz für Office 365 «Seamless». Um den neusten SaaS Release nutzen zu können, migrierten unsere Engineers im Herbst 2018 unsere Projektarbeitsräume in neue SharePoint Sites. Eigentlich funktionierte dies problemlos, mit einer Ausnahme. Es gab da eine SharePoint Site mit einer grossen Liste. «Schuldige» lassen sich in einem kleinen Unternehmen schnell identifizieren und so kam es, dass ich die mittlerweile 11 Millionen Einträge in der SharePoint Liste zu verantworten hatte – mein Trump-Flow leistet ganze Arbeit.

«Die Liste kann gelöscht werden», teilte ich den Engineers mit. Leichter gesagt als getan, denn die SharePoint Liste mit den 11 Millionen Einträgen liess sich nicht löschen. «Wir machen das per Script», kam die Antwort zurück. Nach 3 Tagen, viel Aufmerksamkeit und Neustarts nach Timeouts waren 900’000 Einträge der Trump-Liste gelöscht. «Wir löschen die Site Collection», hiess es dann, was auch funktionierte. Wir waren wieder auf Kurs.

„Wieso läuft die SharePoint Suche so langsam?“

Vor einigen Wochen, 4 Monate nach der Löschung der Trump-Liste und der Site Collection, fiel uns auf, dass unsere SharePoint-Suche langsam war. Eine Suchabfrage dauerte teilweise bis zu 15 Sekunden. Den Fehler vermuteten wir zunächst im Code von Seamless. Nach kurzer Analyse realisierten wir aber, dass die klassische SharePoint-Suche auf unserem Office 365 Tenant ebenso langsam war oder teils gar keine Resultate fand. Ihr vermutet es schon richtig – bei der Suche nach «Trump» kamen hingegen auffällig viele Resultate zurück. Die Trump-Liste war gelöscht, der Such-Index enthielt die 11 Millionen Listeneinträge aber noch.

Nach kurzer interner Beratung wandten wir uns an den Microsoft Office 365 Support mit der Bitte, unseren Such-Index zurückzusetzen. Nach zwei Wochen und mehreren Telefon-Stunden (aus Compliance Gründen darf der MS Support weder MS Teams noch Skype verwenden) war der Such-Index erfolgreich zurückgesetzt. Die Seamless-Suche und die klassische SharePoint Suche liefern Resultate wieder wieder unter 3 Sekunden.

Was ist die Moral?

  • Microsoft Flow ist ein starker Kandidat für Plattform-übergreifende Business Automationen
  • Microsoft Flows können durch Mitarbeitende, vorausgesetzt der Service wird über die Lizenzaktivierung zur Verfügung gestellt, selbstständig erstellt und ausgeführt werden. Infolge sollte MS Flow Mitarbeitenden nur dann angeboten werden, wenn das nötige Know-How vorhanden und Auswirkungen bekannt sind.
  • Der produktive Office 365 Tenant sollte nicht für Tests verwendet werden.
  • Das Löschen von Site Collections und Listen führt nicht automatisch zur Löschung der Einträge im SharePoint Such-Index
  • «Last but not least» Microsoft Flows können durch den Benutzer wieder angehalten werden.