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

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


作成中です - Mitsuhiro Yoshida (トーク)

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

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

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

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

プロトコルを有効にする

ファイル:Enable protocol.jpg
プロトコルを有効にする

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

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

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

ファイル:Security keys and documentation.jpg
セキュリティキーページのドキュメンテーションリンク

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

サービスの作成

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

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

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

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

ファイル:Select a web service function.jpg
サービスに関数を追加する

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

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

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

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

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

  • moodle/webservice:createtoken - ユーザがセキュリティキーを生成できるようにするため。
  • webservice/rest:use, webservice/soap:use, webservice/xmlrpc:use, webservice/amf:use - 有効にされたプロトコルに合致します。
  • 設定されている場合、サービス「必須ケイパビリティ」 (管理 > サイト管理 > プラグイン > ウェブサービス > 外部サービス > 「編集」リンク)。
  • The required capabilities for the web service functions. These required capabilities are listed when you add a function to the service. For more information about roles and capabilities, read the Manage roles documentation.

Once done, the web service should be set up. Users should be able to obtain a personal security key.

代替設定

特定ユーザのみ認証する

  1. Settings > Site Administration > Plugins > Web services > External Services
  2. Select Authorised users link (the service must have been set as Authorised users only in the Edit link)
  3. Select some users and click Add

Moodle indicates if some capabilities need to be assigned to an authorised user. Moreover if you click on the authorised user fullname, you can set up some specific options: IP restriction and Valid until.

トークンを作成する

This feature allows you to create a token for specific user. It can be useful if a user doesn't have the moodle/create:token capability. This is also the only way to create a token for an administrator. For security reason, tokens are not automatically generated in the administrator security keys page.

  1. Settings > Site Administration > Plugins > Web services > Manage tokens
  2. Click on Add
  3. Select the created user and service
  4. Click on Saves changes

As you created a token for this user, you do not need to assign "moodle/webservice:createtoken" to him/her. Finally, note that, as for authorised users, you can also set IP restriction and Valid until on a token.

関連情報