Jamf ブログ
June 14, 2018 投稿者 Brad Becker

Classic API 使用時の7つのポイント

Classic API は、RESTful API で、デバイスに関する情報を簡単に取得し、Jamf Pro 内でアクションを開始するために使用できます。これからお伝えする「Classic API 使用時の7つのポイント」は、ご自身の素晴らしいソリューションとの統合を構築したいと考えている開発者の方や、API の活用を始めたばかりの Jamf Pro 管理者の方などにご活用いただける内容です。

1. Jamf のドキュメントをご覧ください

わたしたちは、Jamf Developer Portal (https://developer.jamf.com) にある Classic API のドキュメントの製作に力を入れています。ここから、Classic API に関する API のリファレンス全てにアクセスすることができます。応答モデルや各エンドポイントのサンプルデータも含まれています。「Try It Out(試用)」機能を使用して、サンプルの Jamf Pro インスタンスに対する API コールを実行することもできます。

API リファレンスに加えて、Classic API がどのように機能するかに関する一般的なドキュメントと、API で一般的なタスクを実行する方法を示すサンプルコードも取得できます。

2. シンプルな cURL から始めてみましょう

macOS には cURL と呼ばれる素晴らしい小さなコマンドラインツールが付属しています。cURL は、さまざまなプロトコルを使用してデータを取得したり、送信したりするために使用されます。API とやりとりをする際に使用すると非常に便利です。Classic API の「コンピュータ」エンドポイントとやりとりする場合の cURL の使用例は以下の通りです。

 curl -s -u myserviceaccount:mypassword

Jamf Pro サーバーの全てのコンピュータのリストを含む XML 応答が表示されます。

3. Postman を試してみましょう

cURLはClassic API とやりとりを開始するための迅速かつ簡単な方法ですが、しばらく経つと使用するのが少し厄介になることがあります。そのため、Postman (https://www.getpostman.com) をダウンロードして、さらに便利な環境となるよう準備することをお勧めします。Postman は、REST API を構築しやりとりを行うためのデファクトスタンダードとなりつつある API 開発ツールです。Postman を使用すると、シンプルなインターフェイス内で直接 API リクエストを簡単に生成、保存、そして解析することができます。

4. XML ではなく JSON を使用してください

Mac で実行するイベントのスクリプトを作成しているお客様やパートナーは、JSON でオブジェクトを解析し、シリアル化するためのツールセットをすでにお持ちの方も多いでしょう。この場合、XML を処理するためにライブラリやモジュールをインポートする必要はないでしょう。幸いにも、Classic API は JSON での出力をサポートしています。Accept ヘッダーを「application/jason」に設定するだけです。JSON はClassic API から情報を取得するためだけにサポートされていることに注意してください。PUT, POSTS, DELETES を実行するには XML を使用する必要があります。

5. SDK を入手してください

ソフトウェア開発キット(SDK)は、ソフトウェア作成者が開発プラットフォームのためにアプリケーションを作成することを可能にする開発ツールセットです。Jamf は Classic API の公式 SDK を提供していませんが、お客様とパートナーはさまざまな言語の非公式 SDK を複数作成しています。

  • Python は、Jamf Pro にプログラムでアクセスするために使用される最も一般的な言語の1つです。Python を使用する場合、python-jss をインポートする必要があります(もしくは、少なくともご認識いただく必要があります)。python-jss に関する情報は https://marketplace.jamf.com/details/python-jss/ で確認できます。
  • Jamf のお客様やパートナーがアクセスするのに使用するもう一つの言語が Ruby です。もし、あなたが Ruby ファンである場合は、ruby-jss をチェックしてみて下さい。沢山の作業を処理してくれます。ruby-jss の詳細については、Jamf Marketplace https://marketplace.jamf.com/details/ruby-jss/ を確認してください。
  • JamfKit は、Swift プロジェクトにドロップできる SDK です。これにより、Classic API のエンドポイントにアクセスするための全作業を行う必要がなくなります。JamfKit の詳細については、 https://marketplace.jamf.com/details/jamfkit/ を確認してください。

これらのツールを使用して、Classic API の開発を加速してください。

6.スクリプトは、管理者アカウントではなくサービスアカウントを使用して下さい

Jamf Proからのデータを共有するのはとても簡単です。上記の例で確認できるように、適切なエンドポイントにユーザ名とパスワードを渡せば、すぐに実行できます。しかし、注意して、いくつかの適切なセキュリティ対策を行ってください。その際に重要なのは、Jamf Pro にアクセスできるスクリプトごとに専用のアカウントを作成し、必要最小限の権限でアカウントを設定することです。Jamf Pro には、アカウントの権限が豊富に用意されており、API 周りのセキュリティを確保するために非常に細かく設定することができます。

7.他のオプションについてはお問い合わせください

本当は必要なのに、まだ実行できていないことはございませんか? お気軽に弊社へお問い合わせください。Jamf のお客様ならば、通常のサポートプロセスで API のサポートを受けることができます。Jamf の開発者の方は、 developer.relations@jamf.com を通じて弊社にお問い合わせください。Jamf に追加してほしい機能があれば、Jamf Nation で機能のリクエストを送信するか、投票してお知らせください。

Brad Becker
ブログ購読

マーケットトレンド、Apple の最新情報、Jamf のニュースをメールでお届けします。

当社がお客様の情報をどのように収集、利用、移転、および保存するかに関しては、プライバシーポリシーをご参照ください。