Webservices nutzen
Dieser Artikel erklärt, wie Sie als Administrator/in einen Webservice aufsetzen. Jede/r Nutzer/in erhält einen einmaligen Sicherheitsschlüssel (Token), um auf den Service zuzugreifen.
Webservices aktivieren
- Gehen Sie auf die Seite Einstellungen > Website-Administration > Zusatzoptionen.
- Markieren Sie die Checkbox Webservices und klicken Sie auf den Button Änderungen speichern.
Hinweis: Aus Sicherheitsgründen sollten Sie Webservices nur dann aktivieren, wenn Sie sie wirklich nutzen wollen.
Protokolle aktivieren
Normalerweise bestimmen die externen Applikationen, welches Protokoll aktiviert werden muss.
- Gehen Sie auf die Seite Einstellungen > Website-Administration > Plugins > Webservices > Protokolle verwalten.
- Aktivieren Sie die Protokolle (SOAP, REST, XMLRPC, AMF, ...) nach Bedarf.
Dokumentation zu Webservices aktivieren
Markieren Sie auf der Seite Einstellungen > Website-Administration > Plugins > Webservices > Protokolle verwalten die Checkbox Dokumentation zu Webservices. Dann erscheint auf Seite Sicherheitsschlüssel ein Link Dokumentation angezeigt, der zur nutzerspezifischen Webservice-Dokumentation führt. Diese Option ist für Webservice-Client-Entwickler/innen nützlich.
Einen Service anlegen
Wenn keiner der vorhandenen Webservices Ihren Anforderungen genügt, können Sie einen eigenen Webservice anlegen, d.h. Sie können auswählen, welche Stnadard-Webservice-Funktionen für Ihren Service verfügbar sein sollen.
Aktivieren Sie aus Sicherheitsgründen nur die Funktionen, die Sie tatsächlich benötigen.
- Gehen Sie auf die Seite Einstellungen > Website-Administration > Plugins > Webservices > Externe Services.
- Klicken Sie auf den Link Hinzufügen.
- Geben Sie dem Service einen Namen und markieren Sie die Checkbox Aktiviert, um den Service zu aktivieren.
- Wenn der Service nur für autorisierte Nutzer/innen verfügbar sein soll, markieren Sie die gleichnamige Checkbox.
- Wählen Sie in der Liste erforderliche Fähigkeit die gewünschten Fähigkeiten/Funktionalitäten aus. Für jede Person, die auf den Webservice zugreift, wird dann geprüft, ob diese Person das entsprechende Recht in Moodle hat.
- Klicken Sie abschließend auf den Button Service hinzufügen.
Funktionen zu einem Service hinzufügen
Ihr Webservice stellt zunächst noch keinerlei Funktionen bereit, d.h. Sie müssen noch Funktionen hinzufügen. Welche Funktionen das sind hängt davon ab, was Ihre externe Applikation in Moodle tun soll.
- Klicken Sie auf den Link Funktionen hinzufügen.
- Wählen Sie die gewünschten Funktionen aus der Liste aus und klicken Sie auf den Button Funktionen hinzufügen.
In der Liste der zum Webservice gehörigen Funktionen sehen Sie, welche Rechte in Moodle nötig sind (Spalte Notwendige Fähigkeiten). Nutzer/innen müssen diese Rechte haben, um den Service nutzen zu können. Weitere Informationen über benötigte Rechte für die einzelnen Funktionen finden Sie in der API Dokumentation (unter Einstellungen > Website-Administration > Plugins > Webservices > API Dokumentation).
Rechte
Die folgenden Rechte müssen gewährt sein:
- Webservice-Token erzeugen - um Nutzer/innen zu erlauben, einen Sicherheitsschlüssel zu generieren;
- Webservice: Protokoll REST, Webservice: Protokoll SOAP, Webservice: Protokoll XMLRPC, Webservice: Protokoll AMF, die zu den entsprechenden Protokollen gehören;
- die Rechte, die bei der Konfiguration des Webservices bei der Einstellung Erforderliche Fähigkeit ausgewählt wurden (siehe Abschnitt Einen Service anlegen);
- die Rechte für die Fähigkeiten, die zu den jeweiligen Webservice-Funktionen gehören (siehe Abschnitt Funktionen zu einem Service hinzufügen).
Ausgewählte Nutzer/innen autorisieren
- Gehen Sie auf die Seite Einstellungen > Website-Administration > Plugins > Webservices > Externe Services.
- Klicken Sie auf den Link Autorisierte Nutzer/innen (für den Webservice muss in seinen Einstellungen - Link Bearbeiten - die Option Nur für autorisierte Nutzer/innen aktiviert sein).
- Wählen Sie die gewünschten Nutzer/innen in der rechten Liste aus und klicken Sie auf Hinzufügen.
Moodle zeigt an, wenn bestimmte Rechte autorisierten Nutzer/innen zugewiesen werden müssen. Außerdem können Sie den Namen einer Person anklicken, um für die Person eine IP-Beschränkung und ein Gültigkeitsdatum zu konfigurieren.
Ein Token erzeugen
Mit dieser Funktionalität können Sie ein Token für eine ausgewählte Person erzeugen. Das ist nützlich, wenn diese Person nicht das Recht hat, ein Webservice-Token erzeugen. Das ist die einzige Möglichkeit, ein Token für eine/n Administrator/in zu erzeugen. Aus Sicherheitsgründen werden Auf der Administrator-Sicherheitsschlüssel-Seite keine Tokens automatisch generiert.
- Gehen Sie auf die Seite Einstellungen > Website-Administration > Plugins > Webservices > Tokens verwalten.
- Klicken Sie auf den Link Hinzufügen.
- Wählen Sie ein/e Nutzer/in und einen Service.
- Klicken Sie auf Änderungen speichern.
Beachten Sie, dass Sie für autorisierte Nutzer/innen auch Einschränkungen für die IP-Adresse und ein Gültigkeitsdatum konfigurieren.