ウェブサービスを使用する

提供:MoodleDocs
移動先:案内検索


このドキュメントではユーザがサービスにアクセスできるよう管理者がウェブサービスを設定する方法を説明します。サービスにアクセスするため、それぞれのユーザには特定およびユニークなセキュリティキー (「トークン」として知られています) があります。

ウェブサービスを有効にする

ウェブサービスを有効にする
  1. 「設定 > サイト管理 > 拡張機能」に移動してください。
  2. 「ウェブサービスを有効にする」をチェックした後、「変更を保存する」ボタンをクリックしてください。

注意: セキュリティ上の理由から、あなたが使用したい場合のみ、ウェブサービスを有効にしてください。

プロトコルを有効にする

プロトコルを有効にする

通常、ユーザが使用したい外部アプリケーションの使用するプロトコルを有効にすべきです。

  1. 「管理 > サイト管理 > プラグイン > ウェブサービス > プロトコル管理」に移動してください。
  2. 必要に応じて、プロトコル (SOAP, REST, XMLRPC, AMF, ...) を有効にしてください。

ウェブサービス関数ドキュメンテーションを有効にする

セキュリティキーページのドキュメンテーションリンク

プロトコル管理ページでウェブサービス関数ドキュメンテーションを有効にすることにより、それぞれのユーザはセキュリティキーページでユーザ固有のウェブサービスドキュメンテーションを利用できるようになります。このオプションは主にウェブサービスクライアント開発者に有用です。ウェブサービスクライアントを誰も作成していない場合、この機能を有効にする必要はありません。

サービスを作成する

あなたの要求に事前構築のウェブサービスが合致しない場合、カスタムサービスを作成できます。例) そのサービス経由でどのような標準ウェブサービス関数が利用できるか選択してください。

あなたが露出する必要のある特定の関数のみ有効にできます。そのため、セキュリティ上の危険にさらされることはありません。

サービスを作成する
  1. 「管理 > サイト管理 > プラグイン > ウェブサービス > 外部サービス」にアクセスしてください。
  2. 「追加」リンクをクリックしてください。
    • 認証済みユーザのみ - 有効にした場合、あなたは手動で認証ユーザを選択する必要があります。そうでない場合、そうでない場合、適切なパーミッションのユーザすべてが許可されます。
    • 必須ケイパビリティ - 有効にした場合、ウェブサービスにアクセスするユーザすべてに対して、この選択されたケイパビリティがチェックされます (これは任意の追加セキュリティレイヤです)。
  3. 名称を入力して有効にしてください。
  4. 「サービスを追加する」ボタンをクリックしてください。

サービスに関数を追加する

サービスに関数を追加する

現在、あなたのサービスは空であり何もできません。ウェブサービス関数を追加する必要があります。外部アプリケーションで何を許可するかにより、あなたの選択は決定します。例えば「グループを作成する」を選択した場合:

  1. 「関数を追加する」リンクをクリックしてください。
  2. 「グループを作成する」を選択して「関数を追加する」ボタンをクリックしてください。

あなたはサービス関数一覧に戻っていることでしょう。それぞれの関数において「必須ケイパビリティ」が表示されています。ユーザは関数を実行するためのケイパビリティを必要とします。関数説明内のAPIドキュメンテーションにより必須ケイパビリティに関して詳細情報を閲覧できます (設定 > サイト管理 > 設定 > サイト管理 > プラグイン > ウェブサービス > APIドキュメンテーション)。

ケイパビリティを有効にする

最後のステップでは適切なパーミッションを付与します。以下のケイパビリティを許可してください:

  • moodle/webservice:createtoken - ユーザがセキュリティキーを生成できるようにするため。
  • webservice/rest:use, webservice/soap:use, webservice/xmlrpc:use, webservice/amf:use - 有効にされたプロトコルに合致します。
  • 設定されている場合、サービス「必須ケイパビリティ」 (管理 > サイト管理 > プラグイン > ウェブサービス > 外部サービス > 「編集」リンク)。
  • ウェブサービス関数に必要なケイパビリティ。あなたがサービスに関数を追加する場合、これらの必須ケイパビリティが一覧表示されます。ロールおよびケイパビリティに関する詳細はロールの管理ドキュメンテーションをご覧ください。

前述の作業によりウェブサービスの準備が整います。ユーザがセキュリティーキーを取得できるようになります

代替設定

特定ユーザのみ認証する

Authorised users link.png
Authorised user selection page.png
  1. 「設定 > サイト管理 > プラグイン > ウェブサービス > 外部サービス」
  2. 「認証済みユーザ」リンクをクリックしてください (サービスには「編集」リンク経由で「認証ユーザのみ」を設定される必要があります)。
  3. ユーザを選択した後、「追加」をクリックしてください。

認証済みユーザに割り当てるケイパビリティが必要な場合、Moodleはその旨を表示します。さらに認証ユーザのフルネームをクリックした場合、あなたはいくつかのオプションを設定できます:「IP制限および有効期限」

トークンを作成する

Create token.png

この機能はあなたが特定のユーザにトークンを作成できるようにします。これはユーザに「moodle/create:token」ケイパビリティがない場合に有用です。これは管理者がトークンを作成できる唯一の方法でもあります。セキュリティ上の理由からトークンは管理者セキュリティキーページで自動的に生成されません。

  1. 「設定 > サイト管理 > プラグイン > ウェブサービス > トークンを管理する」に移動してください。
  2. 「追加」をクリックしてください。
  3. 作成されたユーザおよびサービスを選択してください。
  4. 「変更を保存する」をクリックしてください。

このユーザにトークンを作成した場合、あなたはユーザに対して「moodle/webservice:createtoken」を割り当てる必要はありません。最後に認証ユーザに対して、あなたがトークンの「IPアドレス制限」および「有効期限」を設定できることに留意してください。

関連情報