Überspringen und zu den Hauptinhalten

7 Tipps und Tricks für die Verwendung der Classic API

Gepostet in: Jamf Pro, Marketplace

Die Classic API ist eine REST-API und kann verwendet werden, um Informationen über Geräte auf einfache Weise zu erhalten und Handlungen innerhalb von Jamf Pro zu initiieren. Vielleicht sind Sie ein Entwickler, der eine außergewöhnliche Integration mit Ihrer eigenen Lösung entwickeln möchte. Oder vielleicht sind Sie ein Jamf Pro Administrator, der gerade beginnt, mit der API zu arbeiten. Für beide Fälle haben wir sieben Tipps und Tricks zusammengetragen, um Sie bei der Arbeit mit der Classic API zu unterstützen.

1. Lesen Sie unsere Dokumentation

Wir haben viel Arbeit in die Dokumentation der Classic API im Jamf Developer Portal unter https://developer.jamf.com investiert. Hier finden Sie die vollständige API-Referenz für die Classic API, welche Reaktionsmodelle und exemplarische Daten für jeden Endpunkt beinhaltet. Sie können sogar das Feature Try It Out verwenden, um API-Calls gegen eine Jamf Pro Beispielinstanz auszuführen.

Neben der API-Referenz finden Sie zudem allgemeine Informationen zu der Dokumentation, wie die Classic API funktioniert und darüber hinaus ein paar Code-Beispiele, die zeigen, wie gewöhnliche Tasks in der API ausgeführt werden.

2. Beginnen Sie mit einer einfachen cURL-Abfrage

macOS besitzt ein großartiges kleines Kommandozeilen-Tool, namens cURL. cURL wird eingesetzt, um Daten mithilfe einer Vielzahl an verschiedenen Protokollen abzurufen oder zu versenden. Sie ist sehr hilfreich, um mit APIs zu kommunizieren. Hier ein Beispiel, wie Sie die cURL verwenden können, um mit dem Endpunkt „Computers“ der Classic API zu kommunizieren:

 curl -s -u myserviceaccount:mypassword https://myserver.jamfcloud.com/JSSResource/computers

Sie sollten eine XML-Antwort sehen, die eine Auflistung aller Computer auf Ihrem Jamf Pro Server beinhaltet.

3. Probieren Sie die Applikation „Postman“ aus

Während die cURL eine schnelle und einfache Variante ist, um mit der Classic API zu interagieren, kann sie auf Dauer ein wenig umständlich werden. Aus diesem Grund empfehlen wir Ihnen, Postman (https://www.getpostman.com) herunterzuladen. Postman ist ein API-Entwicklungstool, das sich schnell zum Standard für das Erstellen und Kommunizieren mit REST APIs entwickelt. Mit Postman können Sie API-Anfragen direkt in einem vereinfachten Interface generieren, speichern und analysieren.

4. Verwenden Sie JSON anstelle von XML

Viele unserer Kunden und Partner, die spezifische Skripte für die Ausführung auf dem Mac schreiben, sollten bereits über ein Toolkit zum Analysieren und Serialisieren von Objekten in JSON verfügen. Wenn dies der Fall ist, möchten Sie wahrscheinlich keine Libraries und Module für die Handhabung von XML importieren müssen. Glücklicherweise unterstützt die Classic API den Abruf von Ergebnissen in JSON. Hierzu setzen Sie einfach den Accept Header auf „application/json“. Vergessen Sie hierbei nicht, dass JSON nur für den Abruf von Informationen der Classic API unterstützt wird – Sie müssen dennoch XML verwenden, um PUT, POSTS oder DELETES ausführen zu können.

5. Besorgen Sie sich ein SDK

Ein Software Development Kit (SDK) ist ein Set an Entwicklungstools für diejenigen, die Software schreiben. Mithilfe des SDK können sie Applikationen für ihre Entwicklungsplattform erstellen. Jamf bietet kein offizielles SDK für die Classic API an, aber unsere Kunden und Partner haben verschiedene ‚inoffizielle’ SDKs für mehrere Sprachen entwickelt.

  • Python ist eine der am gängigsten verwendeten Sprachen, um programmatisch auf Jamf Pro zuzugreifen.
    Sofern Sie Python nutzen, sollten Sie python-iss importieren (oder wenigstens darüber Bescheid wissen). Informationen über python-iss finden Sie im Jamf Marketplace unter https://marketplace.jamf.com/details/python-jss/.
  • Eine weitere oft verwendete Sprache von Jamf Kunden und Partnern, um auf Jamf Pro zuzugreifen, ist Ruby.
    Sofern Sie ein Fan von Ruby sind, sollten Sie einen Blick auf ruby-iss werfen, was Ihnen eine Menge an Arbeit abnehmen kann. Weitere Informationen zu ruby-iss stehen Ihnen im Jamf Marketplace unter https://marketplace.jamf.com/details/ruby-jss/ zur Verfügung.
  • JamfKit ist ein SDK, das in ein Swift-Projekt eingefügt werden kann. So müssen Sie nicht die gesamte Arbeit übernehmen, um auf die Endpunkte der Classic API zugreifen zu können. Alle Details zum JamfKit finden Sie unter https://marketplace.jamf.com/details/jamfkit/.

Sie können jedes dieser Tools einsetzen, um Ihre Entwicklung gegen die Classic API voranzubringen.

6. Stellen Sie sicher, dass Skripte Service-Accounts und nicht Ihren administrativen Account verwenden!

Das Teilen von Daten aus Jamf Pro kann ziemlich einfach sein. Übermitteln Sie einen Benutzernamen und Passwort an den richtigen Endpunkt und - wie bereits zuvor in den oben genannten Beispielen erläutert - läuft alles andere wie von selbst. Sie sollten dennoch vorsichtig sein und bestimmte Sicherheitsmaßnahmen treffen. Ein wichtiger Aspekt hierbei ist, dass Sie einen fest zugeordneten Account für jedes Skript erstellen, das auf Jamf Pro zugreifen kann. Zudem sollten Sie diesen Account mit den am wenigsten erforderlichen Privilegien konfigurieren. Jamf Pro verfügt über ein breites Set an Privilegien für Konten, was eine präzise Verwirklichung der Sicherheit um die API ermöglicht.

7. Fragen Sie uns nach weiteren Optionen!

Möchten Sie etwas Bestimmtes umsetzen, benötigen hierzu jedoch Hilfe? Wir helfen Ihnen gerne! Als Kunde von Jamf erhalten Sie über den gewöhnlichen Standard-Support-Prozess Unterstützung für die API. Und als Entwickler können Sie uns zudem über developer.relations@jamf.com erreichen. Teilen Sie uns mit, welche Funktionalität Sie in Jamf Pro vermissen, indem Sie einen neuen Feature-Request auf Jamf Nation einreichen oder für ein bestimmtes Feature abstimmen (vote up).