2.1 Einrichtung der Sage 100
Zur Nutzung der API sind durch den Administrator der Sage 100 einige vorbereitende Schritte im Administrator und Server Manager durchzuführen. Diese sind im folgenden aufgeführt.
Wenn Sie die API direkt mit einer von Sage bereitgestellten Sage 100 testen möchten, folgen Sie einfach der Anleitung unter 2.2 Sage ID Authentifizierung mit Postman.
Voraussetzungen
Lizenzierung
Für die Nutzung der API innerhalb eines LANs genügen eine Sage 100 Benutzerlizenz, oder, sofern keine Sage 100 Benutzerlizenz vorhanden ist, eine entsprechende 3rd Party Connector Lizenz.
Soll die API von außerhalb, zum Beispiel von mobilen Apps oder externen Services, angesprochen werden, so bietet Sage mit dem 3rd Party Gateway die einfache Möglichkeit, sich unter Verwendung von Sage ID mit der lokal installierten Sage 100 zu verbinden.
Ein Mischen der beiden o.g. Lizenzierungsformen, zum Beispiel bei der Nutzung von Apps im LAN und mobilen Apps über das Internet, ist möglich.
Partnerversionen
Als Sage Partner erhalten Sie das 3rd-Party-Gateway für ihre Sage 100 Version auf Nachfrage freigeschaltet. Bitten wenden Sie sich diesbezüglich an ralf.preusser@sage.com.
Konnektivität via Sage Connectivity Gateway
Die Konnektivitätslösung über das Sage Connectivity Gateway ermöglicht die Verbindung zu einem in der Kundeninstallation gehosteten Applikationsserver über das Internet.
Die wichtigsten Bestanteile der Lösung sind:
„Connectivity Gateway“ und „Entitlement Service“, die in der Microsoft Azure Cloud betrieben werden.
Das „Connectivity Gateway“ ermöglicht eine sichere Verbindung zu einer Kundeninstallation.
Der „Entitlement Service“ verwaltet die Autorisierung. Er stellt sicher, dass nur berechtigte SageID-Benutzer auf eine Kundeninstallation (repräsentiert durch eine EntitlementID) zugreifen können.SageID wird für die Authentifizierung verwendet
Der „Connectivity Client“, installiert in der Kunden-Umgebung, stellt die Verbindung mit dem „Connectivity Gateway“ her und leitet einkommende Anfragen an den konfigurierten Applikationsserver weiter.
Pro Kundeninstallation ist genau eine Verbindung mit dem „Connectivity Gateway“ möglich.
Einrichtung
Zur Einrichtung der Konnektivität sind folgende Schritte in dieser Reihenfolge erforderlich:
Kunde lizensiert „Third Party Gateway“
Hauptansprechpartner des Kunden erhält eine Email-Berechtigung zur Einrichtung und Benutzung der Konnektivität
Einrichtung der Konnektivität über den Sage Server Manager
Im Sage 100 Administrator müssen
die Datenbanken, die über die Konnektivität erreichbar sein sollen, freigegeben werden.
die Benutzer für die Benutzung der Konnektivität freigegeben werden.
AppServer neu starten
Schritt 1: Kunden lizensiert „Third Party Gateway“
Wenn ein Kunde die Verwendung des „3rd Party Gateways“ lizensiert, wird die Email-Adresse des Hauptansprechpartners des Kunden bei Sage mit einer KundenID (=EntitlementID) im „Entitlement Service“ registriert.
Diese Email-Adresse ist für folgenden Einrichtungsschritte erforderlich.
Schritt 2: Einrichtung der Verbindung
Die Einrichtung der Verbindung erfolgt über den Sage 100 Server Manager.
Jeder Kommunikationsdienst trägt sich beim Start in die Remote-Registry ein. Im Server Manager werden diese unterhalb von „Externe API“ im Navigationsbaum angezeigt. Die Konfiguration kann von jeder Server Manager Installation aus erfolgen.
Der Screenshot zeigt den initialen Zustand einer Installation, bei der noch keine Verbindung erfolgt ist.
Über den Button „Verbindung herstellen“ wird der Prozess der Initiierung der Verbindung gestartet.
Als erstes muss eine Anmeldung gegen SageID erfolgen; und zwar mit der Email-Adresse des Hauptbenutzers, der bei Sage hinterlegt ist. Sofern noch kein SageID Konto mit dieser Email-Adresse vorhanden ist, muss es angelegt werden.
Nach der Anmeldung werden die Entitlements (d.h. die Kunden), für die der Benutzer berechtigt ist ermittelt und zur Auswahl angezeigt. I.d.R. ist es genau ein Eintrag.
Im zweiten Feld „Applikationsserver“ ist der Applikationsserver auszuwählen, an den die Anfragen vom Connectivity Gateway weitergeleitet werden sollen.
Nach dem Klick auf „OK“ wird die Verbindung eingerichtet und der Status aktualisiert. Dies dauert einige Sekunden.
Wurde die Verbindung erfolgreich etabliert, zeigt der Server Manager die Verbindungen in grün an.
Über den Button „Verbindung anhalten“ wird der „Cloud Connectivity Client“ Dienst gestoppt. Es sind dann keine Verbindungen von Außen möglich. Eine angehaltene Verbindung kann ohne weitere Konfiguration wieder gestartet werden. Dabei wird die Verbindung neu aufgebaut.
„Verbindung löschen“ beendet die Verbindung und löscht deren Konfiguration.
In dem Dialog „Konfiguration“ ist zum Einen die EntitlementID (=ID der Kunden-Installation im Connectivity Gateway) ersichtlich. Anfragen werden auf Basis dieser ID an die richtige Kundeninstanz weitergeleitet.
Im Feld „Url des Applikationsservers“ kann der Applikationsserver geändert werden, an den die Anfragen weitergeleitet werden sollen.
Desweiteren ist es möglich einen Proxy für die Verbindung einzurichten.
Schritt 3: Freischalten der Datenbanken und Benutzer berechtigen
Das Freischalten der Datenbanken und die Verwaltung der Benutzer, die via Konnektivität zugreifen dürfen, erfolgt im Sage 100 Administrator.
Für die Verbindung über das Sage Connectivity Gateway ist eine Lizenz erforderlich. Sie begrenzt die mögliche Anzahl von Benutzern.
Ob eine solche Lizenz vorhanden ist, kann man in dem Dialog „Lizenzinformationen“ im Sage 100 Administrator überprüfen.
Die Datenbanken, die über das Sage Connectivity Gateway erreicht werden können, müssen explizit freigegeben werden.
Die Verbindung über das Sage Connectivity Gateway wird über SageID abgesichert. Nur die SageID Konten, die hier eingetragen sind, sind autorisiert.
Die maximale Anzahl von autorisierten Benutzern ergibt sich aus der Lizenz.
Für ein SageID Konto muss es einen entsprechenden Sage 100 Benutzer mit identischem Sage Konto Eintrag geben. Die Berechtigungen ergeben sich aus den Berechtigungen des Sage 100 Benutzers.
Bei Verwendung von M2M Kommunikation, wir anstelle der Sage ID die von Sage zugewiesene Client-ID verwendet.
Bitte verwenden Sie für Name und Bezeichnung sprechende Begriffe, so dass sich daraus erkennen lässt, mit welchem Partner-Service der Benutzer verbunden ist.
Schritt 4: App Server neu Starten
Damit die gemachten Änderungen wirksam werden starten sie den AppServer bitte neu.
Prozess für M2M
Partner erhält auf ClientID und Client-Secret
(per Partner; nicht per Partner-App)Partner erzeugt App und übermittelt die ClientID an seine Kunden
Der Kunde bestimmt, via Registrierung der freigegebenen ClientIDs in seinem Entitlement (über Sage 100 Administrator), welche ClientIDs auf seine Installation mit welchen Rechten zugreifen dürfen
Einem Sage 100 Benutzer wird entweder eine SageID oder einer ClientID zugeordnet.
Wird beim Zugriff via CSP überprüft.
Bestandteile einer Kundeninstallation
Wesentliche Bestandteile sind:
Cloud Connectivity Client
Kommunikationsdienst
Mehrbenutzerdienst
Deren Aufgaben werden im Folgenden erklärt.
Cloud Connectivity Client
Ist ein Windows-Dienst. Er wird bei der Einrichtung der Konnektivität konfiguriert und gestartet.
Stellt die sichere Verbindung mit dem Connectivity Gateway her
Es ist keine Änderung im Kunden-Netzwerk erforderlich. Er verwendet Port 443 für die Verbindung.
Die Authentifizierung erfolgt via individuellen X.509 Zertifikaten signiert von Sage CA
Leitet die Anfragen an den konfigurierten Applikationsserver weiter
Ist im Verzeichnis „ C:\Program Files (x86)\Common Files\Sage Software Shared\Sage Connectivity Client” installiert.
Kommunikationsdienst
Ist ein Windows-Dienst der eine API zur Administration des „Cloud Connectivity Clients“ zur Verfügung stellt. Der Dienst ist immer gestartet. Er trägt sich beim Start in die Remote Registry ein. Ist der Dienst nicht gestartet, kann keine Konnektivität über ihn administriert werden.
Wird immer zusammen mit dem „Cloud Connectivity Client“ auf jedem Applikationsserver installiert.
Ist im Verzeichnis „ C:\Program Files (x86)\Common Files\Sage Software Shared\Sage Communication” installiert.
Mehrbenutzerdienst / Remote Registry
Status und Konfiguration der Konnektivität werden in der Remote Registry hinterlegt.
In der Windows-Registry des Mehrbenutzerdienst-Server-Rechners gibt es einen neuen Knoten unterhalb der Version der Anwendung: „Connectivity Server“
Jeder „Kommunikationsdienst“ trägt sich beim Start mit seinem Status ein.
Der Sage 100 Administrator ermittelt aus der Remote Registry die EntitlementID, für die er die Benutzer verwaltet, aus dem Eintrag mit dem eingerichteten „Connectivity Server“. Ein eingerichteter „Connectivity Server“ hat die Einstellungen: IsConfigured=1 und eine eingetragene EntitlementID.
Einträge der Remote Registry im Detail:
Eigenschaft | Erklärung |
---|---|
Endpoint | Enthält die Adresse, unter der der „ Kommunikationsdienst“ zu erreichen ist |
BackendEndpoint | Enthält die Basisadresse des Applikationsserver, an die der „Connectivity Client“ eingehende Anfrage weiterleitet in der Form „https://[host]:[port]“. Dieser Eintrag wird bei der Einrichtung der Konnektivität im Server Manager erzeugt. |
EntitlementID | Identifiziert die Kundeninstanz. Diese Information muss in jeder Anfrage über das „Connectivity Gateway“ enthalten sein. Dieser Eintrag wird bei der Einrichtung der Konnektivität im Server Manager erzeugt. |
Connection | Enthält den Status des „Cloud Connectivity Clients“: 0=Gestoppt, 1=Gestartet, 2=Fehlerzustand |
IsConfigured | 0 = Die Einrichtung wurde nicht durchgeführt 1 = Zeigt an, dass es sich um eine konfigurierte, aktive Verbindung handelt |
State | Enthält den Status des „Kommunikationsdienstes“: 0=Gestoppt, 1=Gestartet |