SharePoint AddIns starteten vor einigen Jahren mit drei Varianten: SharePoint AddIns, Autohosted AddIns und Provider-hosted AddIns. Im Laufe der Zeit bewährte sich allerdings nur das Provider-hosted AddIns. Trotzdem Provider-hosted AddIns schon zu älteren Generation im Bereich SharePoint Online zählen, können viele Anwendungsfälle immer noch durch diese bereits solide verwendbaren AddIns abgedeckt werden. Erwähnenswert ist auch, dass sie mittlerweile komfortabel mit MS Graph benutzt werden können.
Anwendungen
Im Bereich SharePoint sind Provider-hosted AddIns noch immer die flexibelste Variante um Anforderungen umzusetzen. Jedoch gibt es für viele Problemstellungen mittlerweile auch andere sehr gute Lösungen, die man zuvor in Betracht ziehen sollte.
WebApps sollten hier als erste erwähnt werden. Sie bilden wie auch Provider-hosted AddIns Web Services ab, sind aber allgemeiner und nicht an den SharePoint Kontext gebunden. Damit sind sie besser in allen Bereichen, in denen nicht SharePoint im Vordergrund stehen bzw. Provider-hosted AddIns besser im SharePoint Context.
Logic Apps und Power Apps sind ebenfalls mittlerweile mächtige Tools um Standardanforderungen schnell und ohne viel Developmentaufwand umzusetzen. Sie sind auch durch eigene Module erweiterbar. Vor allem zum Prototypen sind sie hervorragend geeignet. Umsteigen auf ein weit aufwendigeres Provider-hosted AddIn ist später immer noch möglich. Zu erwähnen wäre hier, dass sie im Betrieb teurer sind.
Aufgrund dieser Möglichkeiten sollten zuvor abgeklärt werden, was wirklich notwendig ist und welche der genannten Lösungen die brauchbarste ist.
Authentifizierung
Die Authentifizierung ist einer der schwierigsten Punkte, die es bei einer Provider-hosted App mit angebundenem MS Graph zu bewältigen gilt. Lange Zeit galt ADAL als die beste Wahl, was aber mittlerweile durch die zweite Generation v2.0 MSAL abgelöst wurde. Dieses ist bedeutend besser wenn SharePoint und MS Graph gleichzeitig verwendet werden, da die neue Generation Single Authentication über Scopes besser unterstützt und auch persönliche Accounts mitnimmt.
Development
Die Entwicklung von Provider-hosted AddIns verwendet mittlerweile hauptsächlich MVC Pattern und React. Die Verwendung von MS Graph erfolgt meist über den entsprechenden Client, kann aber auch über einen HttpCall durchgeführt werden. Im Bereich Development sagen Beispiele meist bedeutend mehr als nur eine Beschreibung der Inhalt, weshalb die folgenden Urls genau zu solchen Beispielen führen. Diese helfen bei der Umsetzung der eigenen Anforderungen. Leider hinkt die Dokumentation für Developer der API ihrer Implementierung hinterher, deshalb werden hier oft Anpassungen notwendig.
Entwicklung
Im Folgenden finden sich zur Vollständigkeit noch ein paar Links, welche Weg beschreiben, den SharePoint AddIns bis heute zurückgelegt haben.