(57)【特許請求の範囲】
【請求項１】
情報処理装置と、当該情報処理装置とネットワークを介して接続される機器と、を備える情報処理システムであって、
前記情報処理装置は、
前記機器から、当該機器において利用が制限される機能の確認を要求し、かつ前記機器及び当該機器の種別の少なくともいずれかを識別する機器識別情報を含む利用制限機能確認要求を受信する利用制限機能確認要求受信部と、
前記機器識別情報と、前記機器において利用が制限される機能を示す利用制限機能識別情報とを対応付けて記憶する利用制限情報記憶部と、
前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に基づいて、前記利用制限機能識別情報を取得する取得部と、
前記取得された利用制限機能識別情報を含む利用制限機能確認応答を前記機器に送信する利用制限機能確認応答送信部と、を備え、
前記機器は、
アプリと、
前記アプリからの前記利用制限機能確認要求を前記情報処理装置に送信する利用制限機能確認要求送信部と、
前記情報処理装置から、前記利用制限機能確認応答を受信する利用制限機能確認応答受信部と、
前記受信された利用制限機能確認応答に含まれる前記利用制限機能識別情報が示す機能の実行を前記アプリに禁止させるための制御を行う実行禁止制御部と、を備え、
前記取得部は、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報が示す前記機器を示す機器識別情報に対応付けられた前記利用制限機能識別情報を取得し、
前記利用制限情報記憶部は、電源オフの要否を示す電源オフ要否情報を更に対応付けて記憶し、
前記取得部は、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報に対応付けられた前記電源オフ要否情報を更に取得し、
前記利用制限機能確認応答は、前記取得された電源オフ要否情報を更に含み、
前記機器は、
前記受信された利用制限機能確認応答に含まれる前記電源オフ要否情報が、電源オフが必要であることを示す場合、前記機器の電源をオフする電源制御部を更に備える情報処理システム。
【請求項２】
前記機器は、
機能を識別する機能識別情報と、当該機能を実行するためのＡＰＩ（Application  Programming  Interface）を識別するＡＰＩ識別情報と、を対応付けて記憶する機能対応情報記憶部を更に備え、
前記実行禁止制御部は、前記利用制限機能識別情報が示す機能を示す機能識別情報に対応付けられたＡＰＩ識別情報が示すＡＰＩの一覧を表す実行禁止ＡＰＩ一覧情報を生成し、前記アプリに発行する請求項１に記載の情報処理システム。
【請求項３】
前記実行禁止制御部は、前記アプリに発行した前記実行禁止ＡＰＩ一覧情報を特定するための特定情報を前記アプリに更に発行し、
前記実行禁止制御部は、前記アプリから、前記特定情報を含む、ＡＰＩに基づく機能実行要求を受け付け、当該機能実行要求に用いられた前記ＡＰＩが、当該機能実行要求に含まれる前記特定情報で特定される前記実行禁止ＡＰＩ一覧情報が示すＡＰＩである場合、当該機能実行要求で要求された機能の実行を中止する請求項２に記載の情報処理システム。
【請求項４】
前記機器は、
電源をオフする動作の態様を示す電源オフ態様情報を記憶する電源オフ態様情報記憶部を更に備え、
前記電源制御部は、前記電源オフ態様情報が示す態様で前記機器の電源をオフする請求項１〜３のいずれか１つに記載の情報処理システム。
【請求項５】
前記利用制限情報記憶部は、機能の利用制限の解消方法を示す解消方法情報を更に対応付けて記憶し、
前記取得部は、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報に対応付けられた前記解消方法情報を更に取得し、
前記利用制限機能確認応答は、前記取得された解消方法情報を更に含み、
前記機器は、
前記機能の実行が禁止された場合、前記解消方法情報に基づいて、当該機能の利用制限の解消方法を表す利用制限解消画面を表示部に表示させる表示制御部を更に備える請求項１〜４のいずれか１つに記載の情報処理システム。
【請求項６】
前記利用制限機能確認要求は、前記機器が属するテナントを識別するテナント識別情報を更に含み、
前記利用制限情報記憶部は、脆弱性の危険度を示す危険度情報を更に対応付けて記憶し、
前記情報処理装置は、
前記テナント識別情報と、当該テナント識別情報が示すテナントにおける脆弱性の許容度を示す許容度情報と、を対応付けて記憶する許容情報記憶部を更に備え、
前記取得部は、前記許容情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記テナント識別情報に対応付けられた前記許容度情報を取得し、当該許容度情報が示す許容度が、前記利用制限情報記憶部において、前記受信された利用制限機能確認要求に含まれる前記機器識別情報に対応付けられた前記危険度情報が示す危険度を満足するか否か確認し、
前記利用制限機能確認応答送信部は、前記取得部により前記許容度が、前記危険度情報が示す危険度を満足しないことが確認された場合、前記危険度情報に対応付けられた前記利用制限機能識別情報を前記機器に送信する請求項１〜５のいずれか１つに記載の情報処理システム。
【請求項７】
前記利用制限機能確認要求は、前記アプリの区分を示すアプリ区分情報を更に含み、
前記利用制限情報記憶部は、前記アプリ区分情報を更に対応付けて記憶し、
前記取得部は、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報が示す前記機器を示す機器識別情報に対応付けられ、かつ当該利用制限機能確認要求に含まれる前記アプリ区分情報が示す前記アプリの区分を示すアプリ区分情報に対応付けられた前記利用制限機能識別情報を取得する請求項１〜６のいずれか１つに記載の情報処理システム。
【請求項８】
前記機器は、
通信不能時の機能の実行態様を示す機能実行態様情報を記憶する機能実行態様情報記憶部を更に備え、
前記実行禁止制御部は、前記利用制限機能確認要求の送信が失敗する場合、及び前記利用制限機能確認応答の受信が失敗する場合の少なくともいずれかの場合、前記機能実行態様情報が示す態様で前記アプリによる機能の実行を制御する請求項１〜７のいずれか１つに記載の情報処理システム。
【請求項９】
情報処理装置と、当該情報処理装置とネットワークを介して接続される機器と、を備える情報処理システムで実行される機能利用制限方法であって、
前記情報処理装置は、
前記機器から、当該機器において利用が制限される機能の確認を要求し、かつ前記機器及び当該機器の種別の少なくともいずれかを識別する機器識別情報を含む利用制限機能確認要求を受信する利用制限機能確認要求受信ステップと、
前記機器識別情報と、前記機器において利用が制限される機能を示す利用制限機能識別情報とを対応付けて利用制限情報記憶部に記憶させる記憶ステップと、
前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に基づいて、前記利用制限機能識別情報を取得する取得ステップと、
前記取得された利用制限機能識別情報を含む利用制限機能確認応答を前記機器に送信する利用制限機能確認応答送信ステップと、を実行し、
前記機器は、
前記機器が有するアプリから、前記利用制限機能確認要求を受け付ける受付ステップと、
前記受け付けられた利用制限機能確認要求を前記情報処理装置に送信する利用制限機能確認要求送信ステップと、
前記情報処理装置から、前記利用制限機能確認応答を受信する利用制限機能確認応答受信ステップと、
前記受信された利用制限機能確認応答に含まれる前記利用制限機能識別情報が示す機能の実行を前記アプリに禁止させるための制御を行う実行禁止制御ステップと、を実行し、
前記取得ステップでは、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報が示す前記機器を示す機器識別情報に対応付けられた前記利用制限機能識別情報を取得し、
前記利用制限情報記憶部は、電源オフの要否を示す電源オフ要否情報を更に対応付けて記憶し、
前記取得ステップでは、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報に対応付けられた前記電源オフ要否情報を更に取得し、
前記利用制限機能確認応答は、前記取得された電源オフ要否情報を更に含み、
前記機器は、
前記受信された利用制限機能確認応答に含まれる前記電源オフ要否情報が、電源オフが必要であることを示す場合、前記機器の電源をオフする電源制御ステップを更に実行する機能利用制限方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム及び機能利用制限方法に関する。
【背景技術】
【０００２】
従来から、画像形成装置などの機器において、当該機器にインストールされているアプリケーション（以下、「アプリ」と称する）に、ＡＰＩ（Application  Programming  Interface）を呼び出させることで、当該機器の機能を実行させる技術が知られている。
【０００３】
例えば特許文献１には、アプリからＡＰＩが呼び出されると、当該ＡＰＩにより提供される機能の利用可否を判定し、利用可能であれば、コントローラへ当該機能の実行を依頼し、利用不能であれば、コントローラへ当該機能が利用不可であることを通知することで、ＡＰＩの実行を制御する技術が開示されている。
【０００４】
特許文献１に開示された技術によれば、ＡＰＩを介して要求された機能が利用不能であるにも関わらず、当該ＡＰＩが使用されて当該要求された機能を実行した結果、機器が予測不能な動作を行ってしまうことを防止できる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示された技術では、機器内部で保持しているクラス設定情報で機能の利用可否を定義し、このクラス設定情報を用いて機能の利用可否を判定している。また、特許文献１に開示された技術では、機器内で発生したイベントに応じてクラス設定情報で定義している機能の利用可否を更新する。
【０００６】
このため特許文献１に開示された技術では、機能を実行するために必要なソフトウェアにセキュリティ脆弱性が見つかった場合などのように、外部要因により機能の利用を制限する必要が生じた場合、当該機能の利用可否を自動で更新することができず、サービスマンなどが手動で更新しなければならないことが想定される。
【０００７】
つまり、特許文献１に開示された技術では、外部要因により機能の利用を制限する必要が生じた場合、当該機能の実行を迅速に禁止させることができない。
【０００８】
本発明は、上記事情に鑑みてなされたものであり、外部要因により機能の利用を制限する必要が生じた場合であっても、当該機能の実行を迅速に禁止させることが可能な情報処理システム及び機能利用制限方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる情報処理システムは、情報処理装置と、当該情報処理装置とネットワークを介して接続される機器と、を備える情報処理システムであって、前記情報処理装置は、前記機器から、当該機器において利用が制限される機能の確認を要求し、かつ前記機器及び当該機器の種別の少なくともいずれかを識別する機器識別情報を含む利用制限機能確認要求を受信する利用制限機能確認要求受信部と、前記機器識別情報と、前記機器において利用が制限される機能を示す利用制限機能識別情報とを対応付けて記憶する利用制限情報記憶部と、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に基づいて、前記利用制限機能識別情報を取得する取得部と、前記取得された利用制限機能識別情報を含む利用制限機能確認応答を前記機器に送信する利用制限機能確認応答送信部と、を備え、前記機器は、アプリと、前記アプリからの前記利用制限機能確認要求を前記情報処理装置に送信する利用制限機能確認要求送信部と、前記情報処理装置から、前記利用制限機能確認応答を受信する利用制限機能確認応答受信部と、前記受信された利用制限機能確認応答に含まれる前記利用制限機能識別情報が示す機能の実行を前記アプリに禁止させるための制御を行う実行禁止制御部と、を備え、前記取得部は、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報が示す前記機器を示す機器識別情報に対応付けられた前記利用制限機能識別情報を取得し、前記利用制限情報記憶部は、電源オフの要否を示す電源オフ要否情報を更に対応付けて記憶し、前記取得部は、前記利用制限情報記憶部から、前記受信された利用制限機能確認要求に含まれる前記機器識別情報に対応付けられた前記電源オフ要否情報を更に取得し、前記利用制限機能確認応答は、前記取得された電源オフ要否情報を更に含み、前記機器は、前記受信された利用制限機能確認応答に含まれる前記電源オフ要否情報が、電源オフが必要であることを示す場合、前記機器の電源をオフする電源制御部を更に備える。
【発明の効果】
【００１０】
本発明によれば、外部要因により機能の利用を制限する必要が生じた場合であっても、当該機能の実行を迅速に禁止させることが可能という効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、第１実施形態の情報処理システムの構成の一例を示すブロック図である。
【図２】図２は、第１実施形態の情報処理装置のハードウェア構成の一例を示すブロック図である。
【図３】図３は、第１実施形態の機器のハードウェア構成の一例を示すブロック図である。
【図４】図４は、第１実施形態の情報処理装置及び機器の機能構成の一例を示すブロック図である。
【図５】図５は、第１実施形態のアプリ一覧画面の一例を示す図である。
【図６】図６は、第１実施形態の利用制限情報記憶部に記憶されている情報の一例を示す図である。
【図７】図７は、第１実施形態の利用制限解消画面の一例を示す図である。
【図８】図８は、第１実施形態の利用制限解消画面の一例を示す図である。
【図９】図９は、第１実施形態の機能の実行態様の設定画面の一例を示す図である。
【図１０】図１０は、第１実施形態の電源をオフする動作の態様の設定画面の一例を示す図である。
【図１１】図１１は、第１実施形態の電源オフ報知画面の一例を示す図である。
【図１２】図１２は、第１実施形態の機器で実行される処理の一例を示すフローチャートである。
【図１３】図１３は、図１２のフローチャートで説明した処理後に行われる機能の実行制御処理の一例を示すフローチャートである。
【図１４】図１４は、第１実施形態の情報処理装置で実行される処理の一例を示すフローチャートである。
【図１５】図１５は、第２実施形態の情報処理システムの情報処理装置及び機器の機能構成の一例を示すブロック図である。
【図１６】図１６は、第２実施形態の利用制限情報記憶部に記憶されている情報の一例を示す図である。
【図１７】図１７は、第２実施形態の許容情報記憶部に記憶されている情報の一例を示す図である。
【図１８】図１８は、第２実施形態の情報処理装置で実行される処理の一例を示すフローチャートである。
【図１９】図１９は、変形例１の情報処理システムの情報処理装置及び機器の機能構成の一例を示すブロック図である。
【図２０】図２０は、変形例２の利用制限情報記憶部に記憶されている情報の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照しながら、本発明にかかる情報処理システム、機器、機能利用制限方法及びプログラムの実施形態を詳細に説明する。
【００１３】
（第１実施形態）
図１は、第１実施形態の情報処理システム１００の構成の一例を示すブロック図である。図１に示すように、情報処理システム１００は、情報処理装置３００と、機器４００と、を備える。
【００１４】
情報処理装置３００及び機器４００は、ネットワーク１０１を介して接続されている。第１実施形態では、ネットワーク１０１がインターネットである場合を例に取り説明するが、これに限定されず、例えば、ＬＡＮ（Local  Area  Network）であってもよい。
【００１５】
また第１実施形態では、情報処理システム１００がクラウドコンピューティング型の運用形態である場合を例に取り説明するが、これに限定されず、例えば、オンプレミス型の運用形態であってもよい。
【００１６】
情報処理装置３００は、機器４００の実行対象の機能など各種機能の利用が制限されているか否かを管理するものであり、例えば、１台以上のコンピュータにより実現できる。第１実施形態では、情報処理装置３００がクラウド化されている場合を例に取り説明するが、これに限定されるものではない。
【００１７】
また第１実施形態では、情報処理装置３００が、１台のコンピュータで実現されている場合（つまり、装置として実現されている場合）を例に取り説明するが、これに限定されず、情報処理装置３００を２台以上のコンピュータで実現し（つまり、システムとして実現し）、後述する情報処理装置３００の機能を２台以上のコンピュータで分散して実現するようにしてもよい。
【００１８】
図２は、第１実施形態の情報処理装置３００のハードウェア構成の一例を示すブロック図である。図２に示すように、情報処理装置３００は、ＣＰＵ（Central  Processing  Unit）３０１と、ＲＡＭ（Random  Access  Memory）３０３と、ＲＯＭ（Read  Only  Memory）３０５と、ＨＤＤ（Hard  Disk  Drive）３０７と、入出力Ｉ／Ｆ（インタフェース）３０９と、通信Ｉ／Ｆ（インタフェース）３１１と、を備える。
【００１９】
ＣＰＵ３０１は、情報処理装置３００の動作を統括的に制御する。ＣＰＵ３０１は、ＲＡＭ３０３をワークエリアとしてＲＯＭ３０５又はＨＤＤ３０７などに格納されたプログラムを実行することで、情報処理装置３００全体の動作を制御する。
【００２０】
入出力Ｉ／Ｆ３０９は、操作者の操作に応じた各種の入力を行うとともに、各種画面を表示する。なお、入出力Ｉ／Ｆ３０９は、タッチパネルディスプレイなどのように、入力機能と表示機能との双方を一体的に備えた構成であってもよいし、入力機能を有する入力装置と表示機能を有する表示装置とを別体として備えた構成であってもよい。
【００２１】
通信Ｉ／Ｆ３１１は、ネットワーク１０１を介して、外部の装置と通信するためのインタフェースである。
【００２２】
機器４００は、ネットワーク１０１に接続可能な電子機器である。第１実施形態では、機器４００として、例えば、印刷装置、複写機、複合機（ＭＦＰ：Multifunction  Peripheral）、スキャナ装置、及びファクシミリ装置等の画像形成装置を例に取り説明する。なお、複合機は、複写機能、印刷機能、スキャナ機能、及びファクシミリ機能のうち少なくとも２つの機能を有するものである。
【００２３】
但し、機器４００は、画像形成装置に限定されるものではなく、例えば、プロジェクタ、カメラ、エアコン、冷蔵庫、蛍光灯、自販機、及びハンドヘルド型端末等の各種電子機器であってもよい。また図１に示す例では、機器４００の台数が１台となっているが、機器４００の台数は何台であってもよい。
【００２４】
図３は、第１実施形態の機器４００のハードウェア構成の一例を示すブロック図である。図３に示すように、機器４００は、ＣＰＵ４０１と、ＲＯＭ４０４及びＲＡＭ４０５を有するシステムメモリ４０３と、ＡＳＩＣ（Application  Specific  Integrated  Circuit）４０７と、通信Ｉ／Ｆ４０９と、外部Ｉ／Ｆ（インタフェース）４１０と、ＨＤＤ４１１と、操作パネル４１３（表示部の一例）と、エンジン４１５と、スキャナ４１７と、を備える。
【００２５】
ＣＰＵ４０１は、機器４００の動作を統括的に制御する。ＣＰＵ４０１は、システムメモリ４０３のＲＡＭ４０５をワークエリアとしてＲＯＭ４０４などに格納されたプログラムを実行することで、機器４００全体の動作を制御する。
【００２６】
ＡＳＩＣ４０７は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣ（Integrated  Circuit）であり、ＣＰＵ４０１と各部を各々接続するブリッジとしての機能を有する。
【００２７】
通信Ｉ／Ｆ４０９は、ネットワーク１０１を介して、外部の装置と通信するためのインタフェースである。
【００２８】
外部Ｉ／Ｆ４１０は、機器４００に周辺機器などを接続するためのインタフェースであり、例えば、ＵＳＢ（Universal  Serial  Bus）インタフェースやメモリーカードを機器４００に接続するためのメモリカードスロットなどが挙げられるが、これらに限定されるものではない。
【００２９】
ＨＤＤ４１１は、通信Ｉ／Ｆ４０９、外部Ｉ／Ｆ４１０、又はスキャナ４１７などから入力される画像データなどを記憶する。
【００３０】
操作パネル４１３は、操作者の操作に応じた各種の入力を行うとともに、各種画面を表示する。なお、操作パネル４１３は、タッチパネルディスプレイなどのように、入力機能と表示機能との双方を一体的に備えた構成であってもよいし、入力機能を有する入力装置と表示機能を有する表示装置とを別体として備えた構成であってもよい。
【００３１】
エンジン４１５は、プリンタエンジンなどであり、例えば、白黒プロッタ、１ドラムカラープロッタ、４ドラムカラープロッタ、及びファックスユニットなどが挙げられるが、これらに限定されるものではない。なお、エンジン４１５には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
【００３２】
スキャナ４１７は、原稿をスキャンすることで得られる原稿の濃淡情報からデジタルの画像データを生成するものであり、例えば、ＣＣＤ（Charge  Coupled  Device）光電変換素子からなるラインセンサ、Ａ／Ｄコンバータ、及びこれらの駆動回路などを具備した機構などが挙げられるが、これに限定されるものではない。
【００３３】
図４は、第１実施形態の情報処理装置３００及び機器４００の機能構成の一例を示すブロック図である。図４に示すように、情報処理装置３００は、利用制限機能確認要求受信部３５１と、利用制限情報記憶部３５３と、取得部３５５と、利用制限機能確認応答送信部３５７と、を有する。
【００３４】
利用制限機能確認要求受信部３５１及び利用制限機能確認応答送信部３５７は、例えば、ＣＰＵ３０１、ＲＡＭ３０３、及び通信Ｉ／Ｆ３１１などにより実現できる。利用制限情報記憶部３５３は、例えば、ＨＤＤ３０７などにより実現できる。取得部３５５は、例えば、ＣＰＵ３０１及びＲＡＭ３０３などにより実現できる。
【００３５】
また図４に示すように、機器４００は、アプリ４５１と、プラットフォーム４６１と、を有する。プラットフォーム４６１は、機器４００を統括的に制御するためのソフトウェア（例えば、ミドルウェア）であり、ＣＰＵ４０１がＲＡＭ４０５をワークエリアとしてＲＯＭ４０４などに格納されたプログラムを実行することにより実現される。第１実施形態では、アプリ４５１は、プラットフォーム４６１上で動作するネイティブアプリケーションであり、ＣＰＵ４０１がＲＡＭ４０５をワークエリアとしてＲＯＭ４０４などに格納されたプログラムを実行することにより実現される場合を例に取り説明するが、これに限定されるものではない。
【００３６】
プラットフォーム４６１は、ＡＰＩ（Application  Programming  Interface）４７１と、利用制限機能確認要求送信部４７３と、利用制限機能確認応答受信部４７５と、機能対応情報記憶部４７７と、機能実行態様情報記憶部４７９と、実行禁止制御部４８１と、表示制御部４８３と、電源オフ態様情報記憶部４８５と、電源制御部４８７と、を備える。
【００３７】
ＡＰＩ４７１、実行禁止制御部４８１、表示制御部４８３、及び電源制御部４８７は、例えば、ＣＰＵ４０１及びＲＡＭ４０５などにより実現できる。利用制限機能確認要求送信部４７３及び利用制限機能確認応答受信部４７５は、例えば、ＣＰＵ４０１、ＲＡＭ４０５、及び通信Ｉ／Ｆ４０９などにより実現できる。機能対応情報記憶部４７７、機能実行態様情報記憶部４７９、及び電源オフ態様情報記憶部４８５は、例えば、ＨＤＤ４１１などにより実現できる。
【００３８】
ＡＰＩ４７１は、機器４００が有する機能をアプリ４５１に実行させるためのインタフェースである。第１実施形態では、ＡＰＩ４７１は、複数のＡＰＩにより構成されており、各ＡＰＩは、実行対象の機能に対応付けられているものとする。つまり、アプリ４５１は、ＡＰＩ４７１のうちの実行対象の機能に対応付けられたＡＰＩを呼び出すことで、当該実行対象の機能を実行する。
【００３９】
アプリ４５１は、ユーザなど機器４００の操作者による操作パネル４１３からの操作入力に基づいて起動する。例えば、図５に示す例では、アプリＡ〜アプリＣのアイコンを並べたアプリ一覧画面が操作パネル４１３に表示されており、機器４００の操作者による操作パネル４１３からの操作入力５０１によりアプリＢが選択されたため、当該アプリＢが起動する。
【００４０】
アプリ４５１は、起動すると、ＡＰＩ４７１を介して、機器４００において利用が制限される機能の確認を要求する利用制限機能確認要求を、プラットフォーム４６１に対して行う。
【００４１】
具体的には、アプリ４５１は、ＡＰＩ４７１のうちの利用が制限される機能の確認を実行するためのＡＰＩを、機器４００及び当該機器４００の種別の少なくともいずれかを識別する機器識別情報を付与して（引数として）、呼び出すことにより、利用制限機能確認要求をプラットフォーム４６１に対して行う。このため利用制限機能確認要求は、機器識別情報を含む。
【００４２】
なお、機器識別情報は、例えば、ＲＯＭ４０４又はＨＤＤ４１１に予め記憶されているため、アプリ４５１は、利用が制限される機能の確認を実行するためのＡＰＩの呼び出しに先立ち、ＲＯＭ４０４又はＨＤＤ４１１から機器識別情報を取得しておけばよい。
【００４３】
第１実施形態では、機器識別情報が、機器４００を識別する情報である場合を例に取り説明するが、これに限定されず、前述のように、機器４００の種別を識別する情報であってもよい。なお第１実施形態では、機器４００の機種を識別する機種識別情報（例えば、機器４００のモデルを識別するモデル名）と、機器４００の機番を示す機番情報と、の組み合わせで、機器４００を固有に識別でき、機器識別情報が、機種識別情報と機番情報との組み合わせである場合を例に取り説明するが、これに限定されるものではない。
【００４４】
アプリ４５１から利用制限機能確認要求が通知されると、実行禁止制御部４８１が当該利用制限機能確認要求を受け付け、利用制限機能確認要求送信部４７３は、実行禁止制御部４８１により受け付けられた利用制限機能確認要求を情報処理装置３００に送信する。
【００４５】
利用制限機能確認要求受信部３５１は、機器４００から利用制限機能確認要求を受信する。
【００４６】
利用制限情報記憶部３５３は、機器識別情報と、機器において利用が制限される機能を示す利用制限機能識別情報と、電源オフの要否を示す電源オフ要否情報と、機能の利用制限の解消方法を示す解消方法情報と、を対応付けて記憶する。但し、利用制限情報記憶部３５３は、電源オフ要否情報や解消方法情報の記憶を必須とするものではない。
【００４７】
図６は、第１実施形態の利用制限情報記憶部３５３に記憶されている情報の一例を示す図である。図６に示す例では、利用制限情報記憶部３５３は、機種識別情報と、機番情報と、利用制限機能識別情報と、電源オフ要否情報と、解消方法情報と、を対応付けて記憶している。
【００４８】
前述したように、第１実施形態では、機器識別情報が、機種識別情報と機番情報との組み合わせであるが、利用制限情報記憶部３５３に記憶されている機種識別情報は、機番情報が省略されていてもよい。例えば、図６に示すカラム５０６では、機種識別情報が「ＭＦＰ−Ａ」、機番情報が空となっているが、これは、機種識別情報が「ＭＦＰ−Ａ」である全ての機器を示している。
【００４９】
図６に示す利用制限機能識別情報では、「／ｐｒｉｎｔ／＊」は、プリントに関する全ての機能の利用が制限されることを示し、「／ｓｃａｎ／＊」は、スキャンに関する全ての機能の利用が制限されることを示し、「＊」は、全ての機能の利用が制限されることを示している。
【００５０】
また図６に示す電源オフ要否情報では、「Ｎｏ」は、電源オフが不要であることを示し、「Ｙｅｓ」は、電源オフが必要であることを示す。また図６に示す解消方法情報は、方法１、方法２、及び方法３などを示しているが、実際には、例えば、機能の利用制限の解消方法の説明文などを示す。
【００５１】
取得部３５５は、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に基づいて、機器４００において利用が制限される機能を示す利用制限機能識別情報を取得する。
【００５２】
具体的には、取得部３５５は、利用制限情報記憶部３５３から、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれる機器識別情報が示す機器４００を示す機器識別情報に対応付けられた利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を取得する。但し、利用制限情報記憶部３５３に電源オフ要否情報や解消方法情報が記憶されていない場合、取得部３５５は、これらの情報を取得しない。
【００５３】
例えば、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれる機器４００の機器識別情報が機種識別情報「ＭＦＰ−Ａ」及び機番情報「１２３４５６」であり、利用制限情報記憶部３５３に図６に示す情報が記憶されているとする。この場合、取得部３５５は、利用制限情報記憶部３５３から、カラム５０５の利用制限機能識別情報「／ｐｒｉｎｔ／＊」、電源オフ要否情報「Ｎｏ」、及び解消方法情報「方法１」を取得するとともに、カラム５０６の利用制限機能識別情報「／ｓｃａｎ／＊」、電源オフ要否情報「Ｎｏ」、及び解消方法情報「方法２」を取得する。
【００５４】
これは、カラム５０５の機器識別情報は、機種識別情報が「ＭＦＰ−Ａ」、機番情報が「１２３４５６」であり、機器４００を示すためである。また、カラム５０６の機器識別情報は、機種識別情報が「ＭＦＰ−Ａ」、機番情報が空であるため、機種識別情報が「ＭＦＰ−Ａ」である全ての機器を示し、機器４００も示すためである。
【００５５】
利用制限機能確認応答送信部３５７は、取得部３５５により取得された利用制限機能識別情報を含む利用制限機能確認応答を機器４００に送信する。具体的には、利用制限機能確認応答送信部３５７は、取得部３５５により取得された利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を含む利用制限機能確認応答を機器４００に送信する。但し、取得部３５５により電源オフ要否情報や解消方法情報が取得されない場合、利用制限機能確認応答は、これらの情報を含まない。
【００５６】
利用制限機能確認応答受信部４７５は、情報処理装置３００から、利用制限機能確認応答を受信する。
【００５７】
機能対応情報記憶部４７７は、機能を識別する機能識別情報と、当該機能を実行するためのＡＰＩを識別するＡＰＩ識別情報と、を対応付けて記憶する。機能識別情報は、例えば、機能を識別するためのＩＤなどが挙げられる。なお第１実施形態では、機能識別情報の値（例えば、ＩＤの特定の桁の値）から、当該機能識別情報が示す機能がプリントに関する機能かスキャンに関する機能であるかを判別できるものとする。ＡＰＩ識別情報は、例えば、ＡＰＩを識別するためのＩＤなどが挙げられる。
【００５８】
実行禁止制御部４８１は、利用制限機能確認応答受信部４７５により受信された利用制限機能確認応答に含まれる利用制限機能識別情報が示す機能の実行をアプリ４５１に禁止させるための制御を行う。
【００５９】
具体的には、実行禁止制御部４８１は、機能対応情報記憶部４７７を参照し、利用制限機能識別情報が示す機能を示す機能識別情報に対応付けられたＡＰＩ識別情報が示すＡＰＩの一覧を表す実行禁止ＡＰＩ一覧情報を生成し、ＡＰＩ４７１を介して、アプリ４５１に発行する。なお、実行禁止制御部４８１は、利用制限機能確認応答受信部４７５により受信された利用制限機能確認応答に解消方法情報が含まれている場合、実行禁止ＡＰＩ一覧情報において、ＡＰＩの一覧に解消方法情報を対応付けてもよい。
【００６０】
また実行禁止制御部４８１は、アプリ４５１に発行した実行禁止ＡＰＩ一覧情報を特定するための特定情報も、ＡＰＩ４７１を介して、アプリ４５１に発行する。特定情報は、実行禁止ＡＰＩ一覧情報を特定できればどのような情報であってもよく、例えば、トークンやＩＤなどが挙げられるが、これらに限定されるものではない。
【００６１】
例えば、利用制限機能確認応答受信部４７５により受信された利用制限機能確認応答が、図６に示すカラム５０５の利用制限機能識別情報「／ｐｒｉｎｔ／＊」、電源オフ要否情報「Ｎｏ」、及び解消方法情報「方法１」を含むとともに、カラム５０６の利用制限機能識別情報「／ｓｃａｎ／＊」、電源オフ要否情報「Ｎｏ」、及び解消方法情報「方法２」を含むとする。
【００６２】
この場合、実行禁止制御部４８１は、機能対応情報記憶部４７７において、プリントに関する機能を示す全ての機能識別情報に対応付けられたＡＰＩ識別情報を取得するとともに、スキャンに関する機能を示す全ての機能識別情報に対応付けられたＡＰＩ識別情報を取得し、取得したＡＰＩ識別情報を並べる。この並べられたＡＰＩ識別情報が、実行が禁止されるＡＰＩの一覧を表す。そして実行禁止制御部４８１は、並べたＡＰＩ識別情報のうち、機能対応情報記憶部４７７において、プリントに関する機能を示す機能識別情報に対応付けられたＡＰＩ識別情報には、解消方法情報「方法１」を対応付け、機能対応情報記憶部４７７において、スキャンに関する機能を示す機能識別情報に対応付けられたＡＰＩ識別情報には、解消方法情報「方法２」を対応付けることで、実行禁止ＡＰＩ一覧情報を生成する。
【００６３】
また実行禁止制御部４８１は、生成した実行禁止ＡＰＩ一覧情報の特定情報を生成する。そして実行禁止制御部４８１は、アプリ４５１により呼び出されたＡＰＩ（利用が制限される機能の確認を実行するためのＡＰＩ）の戻り値として、実行禁止ＡＰＩ一覧情報及び特定情報をアプリ４５１に返す。
【００６４】
なお実行禁止制御部４８１は、実行禁止ＡＰＩ一覧情報及び特定情報をアプリ４５１に発行した後も、当該実行禁止ＡＰＩ一覧情報及び当該特定情報を対応付けて保持しているものとする。
【００６５】
この後、アプリ４５１は、ＡＰＩ４７１を介して機能を実行する場合、実行禁止ＡＰＩ一覧情報及び特定情報に基づいて機能の実行を制御する。具体的には、アプリ４５１は、機能を実行する前に、ＡＰＩ４７１のうちの実行対象の機能を実行するためのＡＰＩが実行禁止ＡＰＩ一覧情報に定義されているか否かを確認し、定義されている場合、当該ＡＰＩを介した実行対象の機能の実行（当該ＡＰＩの呼び出し）を中止（禁止）する。
【００６６】
なおアプリ４５１は、実行禁止ＡＰＩ一覧情報において、実行を中止した実行対象の機能を実行するためのＡＰＩ（呼び出しを中止したＡＰＩ）を示すＡＰＩ識別情報に解消方法情報が対応付けられている場合、ＡＰＩ４７１のうちの画面表示機能を実行するためのＡＰＩを、当該解消方法情報を付与して（引数として）、呼び出すことにより、解消方法情報の画面表示要求をプラットフォーム４６１に対して行う。このため、解消方法情報の画面表示要求は、解消方法情報を含む。
【００６７】
アプリ４５１から解消方法情報の画面表示要求が通知されると、実行禁止制御部４８１が当該画面表示要求を受け付け、表示制御部４８３は、実行禁止制御部４８１により受け付けられた画面表示要求に含まれる解消方法情報に基づいて、実行対象の機能の利用制限の解消方法を表す利用制限解消画面を操作パネル４１３に表示させる。
【００６８】
利用制限解消画面としては、例えば、実行対象の機能の利用制限を解消させるため、図７に示すように、アプリ４５１を最新版に更新（アップデート）させることを促すような画面や、図８に示すように、機器４００のファームウェアのアップデートを促すような画面などが挙げられるが、これらに限定されるものではない。なお、利用制限解消画面の内容は、画面表示要求に含まれる解消方法情報によって定まる。
【００６９】
一方、アプリ４５１は、実行対象の機能を実行するためのＡＰＩが実行禁止ＡＰＩ一覧情報に定義されていない場合、当該ＡＰＩを、特定情報を付与して（引数として）、呼び出すことにより、実行対象の機能の機能実行要求をプラットフォーム４６１に対して行う。このため機能実行要求は、特定情報を含む。
【００７０】
実行禁止制御部４８１は、アプリ４５１から、実行対象の機能を実行するためのＡＰＩに基づく機能実行要求を受け付けると、受け付けた機能実行要求に含まれる特定情報（引数として渡された特定情報）から、アプリ４５１に発行した実行禁止ＡＰＩ一覧情報を特定する。そして実行禁止制御部４８１は、特定した実行禁止ＡＰＩ一覧情報を参照し、受け付けた機能実行要求に用いられたＡＰＩが、当該実行禁止ＡＰＩ一覧情報で定義されているＡＰＩであるか否かを確認する。
【００７１】
そして実行禁止制御部４８１は、受け付けた機能実行要求に用いられたＡＰＩが、実行禁止ＡＰＩ一覧情報で定義されていなければ、当該機能実行要求で要求された実行対象の機能を実行し、アプリ４５１により呼び出されたＡＰＩ（実行対象の機能を実行するためのＡＰＩ）の戻り値として実行結果をアプリ４５１に返す。
【００７２】
一方、実行禁止制御部４８１は、受け付けた機能実行要求に用いられたＡＰＩが、実行禁止ＡＰＩ一覧情報で定義されていれば、当該機能実行要求で要求された実行対象の機能の実行を中止し、アプリ４５１により呼び出されたＡＰＩ（実行対象の機能を実行するためのＡＰＩ）の戻り値としてエラーをアプリ４５１に返す。
【００７３】
なお、実行禁止制御部４８１が、受け付けた機能実行要求に用いられたＡＰＩが実行禁止ＡＰＩ一覧情報で定義されているために、実行対象の機能の実行を中止した場合、表示制御部４８３は、前述したのと同様に、実行対象の機能の利用制限の解消方法を表す利用制限解消画面を操作パネル４１３に表示させてもよい。
【００７４】
このように第１実施形態では、アプリ４５１は、実行対象の機能を実行するためのＡＰＩが実行禁止ＡＰＩ一覧情報に定義されている場合、当該ＡＰＩを介した実行対象の機能の実行を中止するので、当該ＡＰＩが使用されて実行対象の機能を実行した結果、機器が予測不能な動作を行ってしまうことを防止できる。
【００７５】
また第１実施形態では、実行禁止制御部４８１も、アプリ４５１からの機能実行要求に用いられたＡＰＩが、実行禁止ＡＰＩ一覧情報に定義されている場合、当該ＡＰＩを介した実行対象の機能の実行を中止する。このため、実行禁止ＡＰＩ一覧情報に定義されているにも関わらず、エラー等により、アプリ４５１が実行対象の機能を実行するためのＡＰＩを介した実行対象の機能の機能実行要求を行ってしまった場合であっても、当該ＡＰＩを介した実行対象の機能の実行を中止でき、当該ＡＰＩが使用されて実行対象の機能を実行した結果、機器が予測不能な動作を行ってしまうことを防止できる。
【００７６】
機能実行態様情報記憶部４７９は、通信不能時の機能の実行態様を示す機能実行態様情報を記憶する。機能実行態様情報は、例えば、ネットワーク１０１を介した通信が不能であり、利用制限機能確認要求の送信や利用制限機能確認応答の受信に失敗する場合、即ち、実行禁止制御部４８１が実行禁止ＡＰＩ一覧情報をアプリ４５１に発行できない場合の機能の実行態様を示す。
【００７７】
機能実行態様情報が示す機能の実行態様としては、実行禁止ＡＰＩ一覧情報を用いた機能の利用制限を行わずに機能を実行する態様、即ち、機能実行要求で要求された機能を無条件に実行する態様や、機能実行要求で要求された機能を全てエラー処理し、機能（ＡＰＩ）の実行を無条件に中止する態様などが挙げられるが、これらに限定されるものではない。
【００７８】
なお第１実施形態では、例えば、操作パネル４１３に表示された図９に示すような設定画面上で、ユーザなど機器４００の操作者が操作パネル４１３から操作入力を行うことで、機能実行態様情報記憶部４７９に記憶されている機能実行態様情報が示す機能の実行態様を設定する。
【００７９】
例えば、図９に示す設定画面上で、機器４００の操作者により、ラジオボタン５１１が選択された状態で設定ボタン５１２が選択されると、機能実行態様情報が示す機能の実行態様が、実行禁止ＡＰＩ一覧情報を用いた機能の利用制限を行わずに機能を実行する態様に設定される。また、機器４００の操作者により、ラジオボタン５１３が選択された状態で設定ボタン５１２が選択されると、機能実行態様情報が示す機能の実行態様が、機能実行要求で要求された機能を全てエラー処理し、機能（ＡＰＩ）の実行を無条件に中止する態様に設定される。
【００８０】
実行禁止制御部４８１は、利用制限機能確認要求送信部４７３による利用制限機能確認要求の送信に失敗する場合、及び利用制限機能確認応答受信部４７５による利用制限機能確認応答の受信に失敗する場合の少なくともいずれかの場合、機能実行態様情報記憶部４７９に記憶されている機能実行態様情報が示す態様でアプリ４５１による機能の実行を制御する。
【００８１】
つまり、実行禁止制御部４８１は、利用制限機能確認要求送信部４７３による利用制限機能確認要求の送信、及び利用制限機能確認応答受信部４７５による利用制限機能確認応答の受信の少なくともいずれかに失敗し、実行禁止ＡＰＩ一覧情報をアプリ４５１に発行できなかった場合、機能実行態様情報が示す態様でアプリ４５１による機能の実行を制御する。
【００８２】
例えば、実行禁止制御部４８１は、機能実行態様情報が実行禁止ＡＰＩ一覧情報を用いた機能の利用制限を行わずに機能を実行する態様を示す場合、アプリ４５１からの機能実行要求で要求された実行対象の機能を無条件で実行する。また例えば、実行禁止制御部４８１は、機能実行態様情報が機能実行要求で要求された機能を全てエラー処理し、機能（ＡＰＩ）の実行を無条件に中止する態様を示す場合、アプリ４５１からの機能実行要求で要求された実行対象の機能の実行を無条件で中止する。
【００８３】
電源オフ態様情報記憶部４８５は、電源をオフする動作の態様を示す電源オフ態様情報を記憶する。電源オフ態様情報は、例えば、利用制限機能確認応答受信部４７５により受信された利用制限機能確認応答に含まれる電源オフ要否情報が「Ｙｅｓ」であり、機器４００の電源オフが指示された場合の電源をオフする動作の態様を示す。
【００８４】
電源オフ態様情報が示す電源をオフする動作の態様としては、強制的に電源をオフする態様や、ユーザなど機器４００の操作者の確認後に電源をオフする態様などが挙げられるが、これらに限定されるものではない。
【００８５】
なお第１実施形態では、例えば、操作パネル４１３に表示された図１０に示すような設定画面上で、機器４００の操作者が操作パネル４１３から操作入力を行うことで、電源オフ態様情報記憶部４８５に記憶されている電源オフ態様情報が示す電源をオフする動作の態様を設定する。
【００８６】
例えば、図１０に示す設定画面上で、機器４００の操作者により、ラジオボタン５２１が選択された状態で設定ボタン５２２が選択されると、電源オフ態様情報が示す電源をオフする動作の態様が、強制的に電源をオフする態様に設定される。また、機器４００の操作者により、ラジオボタン５２３が選択された状態で設定ボタン５２２が選択されると、電源オフ態様情報が示す電源をオフする動作の態様が、ユーザなど機器４００の操作者の確認後に電源をオフする態様に設定される。
【００８７】
実行禁止制御部４８１は、利用制限機能確認応答受信部４７５により受信された利用制限機能確認応答に、電源オフが必要であることを示す電源オフ要否情報（電源オフ要否情報「Ｙｅｓ」）が含まれている場合、電源制御部４８７に電源オフを指示する。なお実行禁止制御部４８１は、電源オフが必要であることを示す電源オフ要否情報が利用制限機能確認応答に含まれていない場合に、前述の実行禁止ＡＰＩ一覧情報及び特定情報のアプリ４５１への発行を行う。
【００８８】
電源制御部４８７は、利用制限機能確認応答受信部４７５により受信された利用制限機能確認応答に、電源オフが必要であることを示す電源オフ要否情報（電源オフ要否情報「Ｙｅｓ」）が含まれており、実行禁止制御部４８１から電源オフが指示された場合、機器４００の電源をオフする。具体的には、電源制御部４８７は、電源オフ態様情報記憶部４８５に記憶されている電源オフ態様情報が示す態様で機器４００の電源をオフする。
【００８９】
例えば、電源制御部４８７は、電源オフ態様情報が強制的に電源をオフする態様を示す場合、表示制御部４８３に電源オフ報知画面の表示を依頼し、表示制御部４８３が図１１に示すような電源オフ（シャットダウン）報知画面を操作パネル４１３に表示させた後に、強制的に機器４００の電源をオフする。また例えば、電源制御部４８７は、電源オフ態様情報がユーザなど機器４００の操作者の確認後に電源をオフする態様を示す場合、例えば、表示制御部４８３に電源オフ確認画面の表示を依頼し、表示制御部４８３が当該電源オフ確認画面を操作パネル４１３に表示させ、操作者による操作パネル４１３からの電源オフを指示する操作入力に基づいて機器４００の電源をオフする。
【００９０】
図１２は、第１実施形態の機器４００で実行される処理の一例を示すフローチャートである。
【００９１】
まず、アプリ４５１は、起動すると、ＡＰＩ４７１のうちの利用が制限される機能の確認を実行するためのＡＰＩを、機器４００の機器識別情報を付与して（引数として）、呼び出す（コール）ことにより、利用制限機能確認要求をプラットフォーム４６１に対して行う（ステップＳ１０１）。
【００９２】
続いて、実行禁止制御部４８１は、アプリ４５１から利用制限機能確認要求が通知されると、利用制限機能確認要求送信部４７３にネットワーク１０１が接続され、情報処理装置３００との通信が可能であるか否かを確認させる（ステップＳ１０３）。
【００９３】
ネットワーク１０１が接続され、情報処理装置３００との通信が可能であれば（ステップＳ１０３でＹｅｓ）、利用制限機能確認要求送信部４７３は、実行禁止制御部４８１により受け付けられた利用制限機能確認要求を情報処理装置３００に送信する（ステップＳ１０５）。なお、ネットワーク１０１が接続されておらず、情報処理装置３００との通信が不可能であれば（ステップＳ１０３でＮｏ）、以降の処理は行われない。
【００９４】
続いて、利用制限機能確認応答受信部４７５は、情報処理装置３００から、利用制限機能確認応答を受信する（ステップＳ１０７）。
【００９５】
なお、利用制限機能確認要求を情報処理装置３００に送信してから利用制限機能確認応答を受信までの間に行われる情報処理装置３００の処理については、後述する。
【００９６】
続いて、電源制御部４８７は、利用制限機能確認応答受信部４７５により受信された利用制限機能確認応答に、電源オフが必要であることを示す電源オフ要否情報が含まれているか否かを確認する（ステップＳ１０９）。
【００９７】
利用制限機能確認応答に電源オフが必要であることを示す電源オフ要否情報が含まれており、電源オフが必要な場合（ステップＳ１０９でＹｅｓ）、実行禁止制御部４８１は、電源制御部４８７に電源オフを指示し、電源制御部４８７は、電源オフ態様情報記憶部４８５に記憶されている電源オフ態様情報が示す態様で機器４００の電源をオフする（ステップＳ１１１）。
【００９８】
一方、利用制限機能確認応答に電源オフが必要であることを示す電源オフ要否情報が含まれておらず、電源オフが不要な場合（ステップＳ１０９でＮｏ）、実行禁止制御部４８１は、機能対応情報記憶部４７７を参照し、利用制限機能識別情報が示す機能を示す機能識別情報に対応付けられたＡＰＩ識別情報が示すＡＰＩの一覧を表す実行禁止ＡＰＩ一覧情報及び当該実行禁止ＡＰＩ一覧情報を特定するための特定情報を生成し、アプリ４５１により呼び出されたＡＰＩ（利用が制限される機能の確認を実行するためのＡＰＩ）の戻り値として、実行禁止ＡＰＩ一覧情報及び特定情報をアプリ４５１に返す（ステップＳ１１３）。
【００９９】
図１３は、図１２のフローチャートで説明した処理後に行われる機能の実行制御処理の一例を示すフローチャートである。
【０１００】
まず、アプリ４５１は、機能を実行する前に、ＡＰＩ４７１のうちの実行対象の機能を実行するためのＡＰＩ（コールするＡＰＩ）が実行禁止ＡＰＩ一覧情報に記載されているか否かを確認する（ステップＳ２０１）。
【０１０１】
コールするＡＰＩが実行禁止ＡＰＩ一覧情報に記載されていない場合（ステップＳ２０１でＮｏ）、アプリ４５１は、当該ＡＰＩを、特定情報を付与して（引数として）、呼び出す（コールする）ことにより、実行対象の機能の機能実行要求をプラットフォーム４６１に対して行う（ステップＳ２０３）。
【０１０２】
続いて、実行禁止制御部４８１は、アプリ４５１から、実行対象の機能を実行するためのＡＰＩに基づく機能実行要求を受け付けると、受け付けた機能実行要求に含まれる特定情報（引数として渡された特定情報）から、アプリ４５１に発行した実行禁止ＡＰＩ一覧情報を特定し、受け付けた機能実行要求に用いられたＡＰＩ（コールされたＡＰＩ）が、当該実行禁止ＡＰＩ一覧情報に記載されているか否かを確認する（ステップＳ２０５）。
【０１０３】
コールされたＡＰＩが実行禁止ＡＰＩ一覧情報に記載されていない場合（ステップＳ２０５でＮｏ）、実行禁止制御部４８１は、コールされたＡＰＩを実行することで、機能実行要求で要求された実行対象の機能を実行し、アプリ４５１により呼び出されたＡＰＩ（実行対象の機能を実行するためのＡＰＩ）の戻り値として実行結果をアプリ４５１に返す（ステップＳ２０７）。
【０１０４】
一方、コールされたＡＰＩが実行禁止ＡＰＩ一覧情報に記載されている場合（ステップＳ２０５でＹｅｓ）、実行禁止制御部４８１は、コールされたＡＰＩの実行を中止することで、機能実行要求で要求された実行対象の機能の実行を中止し、アプリ４５１により呼び出されたＡＰＩ（実行対象の機能を実行するためのＡＰＩ）の戻り値としてエラーをアプリ４５１に返す（ステップＳ２０９）。
【０１０５】
なお、実行禁止ＡＰＩ一覧情報において、実行を中止した実行対象の機能を実行するためのＡＰＩ（呼び出しを中止したＡＰＩ）を示すＡＰＩ識別情報に解消方法情報が対応付けられている場合、ステップＳ２０１でＹｅｓの後やステップＳ２０９の後に、表示制御部４８３は、当該解消方法情報に基づいて、実行対象の機能の利用制限の解消方法を表す利用制限解消画面を操作パネル４１３に表示させてもよい。
【０１０６】
また、図１２のフローチャートのステップＳ１０３でＮｏであり、実行禁止ＡＰＩ一覧情報及び特定情報がアプリ４５１に発行されていない場合、アプリ４５１は、実行対象の機能を実行するためのＡＰＩを無条件でコールし、実行禁止制御部４８１は、機能実行態様情報記憶部４７９に記憶されている機能実行態様情報が示す機能の実行態様に従って、コールされたＡＰＩの実行の有無を制御し、実行対象の機能の実行を制御すればよい。
【０１０７】
図１４は、第１実施形態の情報処理装置３００で実行される処理の一例を示すフローチャートであり、図１２のフローチャートにおいて、利用制限機能確認要求を情報処理装置３００に送信してから利用制限機能確認応答を受信までの間（ステップＳ１０５〜Ｓ１０７の間）に行われる情報処理装置３００の処理を示す。
【０１０８】
まず、利用制限機能確認要求受信部３５１は、機器４００から利用制限機能確認要求を受信する（ステップＳ３０１）。
【０１０９】
続いて、取得部３５５は、利用制限情報記憶部３５３を参照し、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれる機種識別情報と一致する機種識別情報、及び利用制限機能確認要求に含まれる機種識別情報と機番情報との組み合わせに一致する機種識別情報と機番情報との組み合わせの少なくともいずれかがあるか否かを確認する（ステップＳ３０５）。なお、ステップＳ３０５でＮｏの場合、以降の処理は行われない。
【０１１０】
ステップＳ３０５でＹｅｓであり、利用制限機能確認要求に含まれる機種識別情報と一致する機種識別情報がある場合、取得部３５５は、利用制限情報記憶部３５３から、当該機種識別情報に対応付けられた利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を取得する。また、利用制限機能確認要求に含まれる機種識別情報と機番情報との組み合わせに一致する機種識別情報と機番情報との組み合わせがある場合、取得部３５５は、利用制限情報記憶部３５３から、当該組み合わせに対応付けられた利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を取得する（ステップＳ３０７）。
【０１１１】
続いて、利用制限機能確認応答送信部３５７は、取得部３５５により取得された利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を含む利用制限機能確認応答を機器４００に送信する（ステップＳ３０９）。
【０１１２】
以上のように第１実施形態では、利用が制限される機能を情報処理装置３００側で管理し、機器４００は、機器４００において利用が制限される機能を示す利用制限機能識別情報を情報処理装置３００から取得し、取得した利用制限機能識別情報が示す機能の実行をアプリに禁止させるための制御を行う。
【０１１３】
このように第１実施形態によれば、利用が制限される機能の実行が禁止されるので、当該機能を実行してしまい、機器が予測不能な動作を行ってしまうという事態の発生を防止できる。
【０１１４】
特に第１実施形態では、利用が制限される機能を専門に管理する情報処理装置３００側で管理するため、セキュリティ脆弱性が見つかった場合などのように外部要因により機能の利用を制限する必要が生じた場合であっても、当該機能を情報処理装置３００側で即管理することができる（を前提としている）。
【０１１５】
このため第１実施形態によれば、機器４００が情報処理装置３００から取得する利用制限機能識別情報は、最新の利用が制限される機能を示すことになり、外部要因により機能の利用を制限する必要が生じた場合であっても、当該機能の実行を迅速に禁止させることが可能となる。また第１実施形態によれば、外部要因により機能の利用を制限する必要が生じた場合であっても、サービスマンなどの対応無しに機能の利用を制限できるため、人的コストなどの運用コストの削減も期待できる。また、第１実施形態によれば、機器４００側で利用が制限される機能を管理する必要がないため、このような管理機能を機器４００に組み込む必要がなく、開発コストが抑えられることも期待できる。
【０１１６】
また第１実施形態によれば、機能の実行を中止する場合、当該機能の利用制限の解消方法を表す利用制限解消画面が表示されるため、機器４００の管理者などは、機器４００を、迅速に当該機能を利用できる状態に保守することができる。
【０１１７】
また第１実施形態によれば、機器４００では、機器４００の利用制限機能識別情報を情報処理装置３００から取得できなかった場合の機能の実行態様を予め定めておくことができるため、機器４００の管理者自身が、機器４００の利用に伴う利便性と安全性とのバランスを図ることができる。
【０１１８】
また第１実施形態では、機器４００は、機器４００の利用制限機能識別情報を情報処理装置３００から取得する際に、電源オフの要否を示す電源オフ要否情報も取得し、電源オフが必要な場合、機器４００の電源をオフする。
【０１１９】
このため、情報処理装置３００側で、重大なセキュリティ脆弱性が見つかった場合には、機能の利用を制限するだけでなく、電源オフ要否情報が、電源オフが必要であることを示すように設定しておけば、機器４００側で機器４００の電源がオフされ、機器４００の安全性を高めることができる。
【０１２０】
（第２実施形態）
第２実施形態では、テナント毎に定められている許容度に応じて機能の利用制限を行う例について説明する。以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【０１２１】
図１５は、第２実施形態の情報処理システム１１００の情報処理装置１３００及び機器１４００の機能構成の一例を示すブロック図である。図１５に示すように、第２実施形態では、アプリ１４５１、利用制限情報記憶部１３５３、取得部１３５５、及び許容情報記憶部１３５９が、第１実施形態と相違する。
【０１２２】
第２実施形態では、アプリ１４５１は、ＡＰＩ４７１のうちの利用が制限される機能の確認を実行するためのＡＰＩを、機器１４００の機器識別情報及び機器１４００が属するテナントを識別するテナント識別情報を付与して（引数として）、呼び出すことにより、利用制限機能確認要求をプラットフォーム４６１に対して行う。このため利用制限機能確認要求は、機器識別情報及びテナント識別情報を含む。
【０１２３】
なお、テナント識別情報は、例えば、ＲＯＭ４０４又はＨＤＤ４１１に予め記憶されているため、アプリ１４５１は、利用が制限される機能の確認を実行するためのＡＰＩの呼び出しに先立ち、ＲＯＭ４０４又はＨＤＤ４１１からテナント識別情報を取得しておけばよい。
【０１２４】
ここで第２実施形態では、機器１４００が情報処理装置１３００（クラウド）を利用する上で、機器１４００の所有者と情報処理装置１３００の運営者との間で、情報処理装置１３００の利用条件などを定めた契約が結ばれており、情報処理装置１３００の運営者と契約を結ぶ契約先がテナントとなる。このため第２実施形態では、機器１４００の所有者がテナントとなり、機器１４００は、このテナントに属する。なお、情報処理装置１３００の運営者との契約は、人、グループ、又は組織単位で結ぶことができるため、テナントは、人の場合もあれば、グループの場合もあれば、組織の場合もある。テナント識別情報、例えば、テナントを識別するためのＩＤなどが挙げられる。
【０１２５】
利用制限情報記憶部１３５３は、機器識別情報と、機器において利用が制限される機能を示す利用制限機能識別情報と、電源オフの要否を示す電源オフ要否情報と、脆弱性の危険度を示す危険度情報と、機能の利用制限の解消方法を示す解消方法情報と、を対応付けて記憶する。
【０１２６】
図１６は、第２実施形態の利用制限情報記憶部１３５３に記憶されている情報の一例を示す図である。図１６に示す例では、利用制限情報記憶部１３５３は、機種識別情報と、機番情報と、利用制限機能識別情報と、電源オフ要否情報と、危険度情報と、解消方法情報と、を対応付けて記憶している。
【０１２７】
危険度情報は、利用制限機能識別情報が示す利用が制限される機能に内在するセキュリティ脆弱性の危険度を示し、第２実施形態では、値が大きいほど危険度が高いものとするが、これに限定されるものではない。
【０１２８】
許容情報記憶部１３５９は、テナント識別情報と、当該テナント識別情報が示すテナントにおける脆弱性の許容度を示す許容度情報と、を対応付けて記憶する。
【０１２９】
図１７は、第２実施形態の許容情報記憶部１３５９に記憶されている情報の一例を示す図である。図１７に示す例では、許容情報記憶部１３５９は、テナント識別情報と、許容度情報と、を対応付けて記憶している。許容度情報は、セキュリティ脆弱性の危険度に対する許容度を示し、第２実施形態では、値が小さいほど許容できるセキュリティ脆弱性が少なくなるものとするが、これに限定されるものではない。なお、許容度は、情報処理装置１３００の運営者と結ぶ契約などで定められる。
【０１３０】
取得部１３５５は、許容情報記憶部１３５９から、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれるテナント識別情報に対応付けられた許容度情報を取得する。そして取得部１３５５は、利用制限情報記憶部１３５３から、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれる機器識別情報が示す機器１４００を示す機器識別情報に対応付けられ、かつ取得した許容度情報が示す許容度が、当該機器識別情報に対応付けられた危険度情報が示す危険度を満足しない場合、当該機器識別情報に対応付けられた利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を取得する。
【０１３１】
例えば、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれる機器１４００の機器識別情報が機種識別情報「ＭＦＰ−Ａ」及び機番情報「１２３４５６」、テナント識別情報が「１１１１１１」であり、利用制限情報記憶部１３５３に図１６に示す情報、許容情報記憶部１３５９に図１７に示す情報が記憶されているとする。この場合、取得部１３５５は、許容情報記憶部１３５９から、テナント識別情報が「１１１１１１」に対応付けられた許容度情報「９０」を取得し、利用制限情報記憶部１３５３から、カラム１５０５の利用制限機能識別情報「／ｐｒｉｎｔ／＊」、電源オフ要否情報「Ｎｏ」、及び解消方法情報「方法１」を取得する。
【０１３２】
これは、カラム１５０５では、機器識別情報は、機種識別情報が「ＭＦＰ−Ａ」、機番情報が「１２３４５６」であって機器１４００を示すとともに、危険度情報が「１００」であり、危険度情報「１００」＞許容度情報「９０」となり、許容度情報が示す許容度が、危険度情報が示す危険度を満足しないためである。
【０１３３】
なお、カラム１５０６では、機器識別情報は、機種識別情報が「ＭＦＰ−Ａ」、機番情報が空であって機器１４００も示すが、危険度情報が「８０」であり、危険度情報「８０」≦許容度情報「９０」となり、許容度情報が示す許容度が、危険度情報が示す危険度を満足するため、カラム１５０６の利用制限機能識別情報等は取得されない。
【０１３４】
図１８は、第２実施形態の情報処理装置１３００で実行される処理の一例を示すフローチャートであり、図１２のフローチャートにおいて、利用制限機能確認要求を情報処理装置３００に送信してから利用制限機能確認応答を受信までの間（ステップＳ１０５〜Ｓ１０７の間）に行われる処理を示す。
【０１３５】
まず、ステップＳ４０１〜ステップＳ４０５までの処理は、図１４に示すフローチャートのステップＳ３０１〜ステップＳ３０５までの処理と同様である。
【０１３６】
ステップＳ４０５でＹｅｓであり、利用制限機能確認要求に含まれる機種識別情報と一致する機種識別情報がある場合、取得部１３５５は、利用制限情報記憶部１３５３から、当該機種識別情報に対応付けられた利用制限機能識別情報、電源オフ要否情報、危険度情報、及び解消方法情報を取得する。また、利用制限機能確認要求に含まれる機種識別情報と機番情報との組み合わせに一致する機種識別情報と機番情報との組み合わせがある場合、取得部１３５５は、利用制限情報記憶部１３５３から、当該組み合わせに対応付けられた利用制限機能識別情報、電源オフ要否情報、危険度情報、及び解消方法情報を取得する（ステップＳ４０７）。
【０１３７】
続いて、取得部１３５５は、許容情報記憶部１３５９から、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれるテナント識別情報に対応付けられた許容度情報を取得し、取得した許容度情報が示す許容度がステップＳ４０７で取得した危険度情報が示す危険度を満足するか否か確認する（ステップＳ４１１）。なお、ステップＳ４１１でＮｏの場合、ステップＳ４１５へ進む。
【０１３８】
一方、ステップＳ４１１でＹｅｓの場合、取得部１３５５は、ステップＳ４０７で取得した利用制限機能識別情報、電源オフ要否情報、危険度情報、及び解消方法情報の中から、許容度が危険度を満足する危険度情報、及び当該危険度情報に対応付けられた利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を削除する（ステップＳ４１３）。
【０１３９】
続いて、利用制限機能確認応答送信部３５７は、削除されなかった利用制限機能識別情報、電源オフ要否情報、危険度情報、及び解消方法情報、即ち、許容度が危険度を満足しない危険度情報、及び当該危険度情報に対応付けられた利用制限機能識別情報、電源オフ要否情報、及び解消方法情報を含む利用制限機能確認応答を機器１４００に送信する（ステップＳ４１５）。
【０１４０】
以上のように第２実施形態によれば、契約で定められた許容度では満足されない（許容できない）危険度のセキュリティ脆弱性が内在する機能のみ利用が制限されるため、テナントの要望を満足するように、利用が制限される機能を設定することができる。
【０１４１】
（変形例１）
上記第１、２実施形態では、アプリ４５１やアプリ１４５１が、プラットフォーム４６１上で動作するネイティブアプリケーションである場合を例に取り説明したが、これに限定されず、ブラウザ上で動作するＷｅｂアプリケーションであってもよい。
【０１４２】
図１９は、変形例１の情報処理システム２１００の情報処理装置３００及び機器２４００の機能構成の一例を示すブロック図である。図１９に示すように、変形例１では、アプリ２４５１、及びブラウザ２４５３が、第１実施形態と相違する。
【０１４３】
アプリ２４５１は、Ｗｅｂアプリケーションであり、Ｗｅｂブラウザであるブラウザ２４５３上で動作する。なおアプリ２４５１は、ＡＰＩ４７１を構成するＡＰＩを呼び出す場合、ブラウザ２４５３を介して（例えば、ブラウザ２４５３に組み込まれているＪａｖａＳｃｒｉｐｔ（登録商標）を用いて）呼び出す。
【０１４４】
（変形例２）
情報処理装置３００は、上記第１実施形態で説明したネイティブアプリケーションによる機能制限及び上記変形例１で説明したＷｅｂアプリケーションによる機能制限の双方に対応できるようにしてもよい。
【０１４５】
この場合、アプリ４５１やアプリ２４５１は、ＡＰＩ４７１のうちの利用が制限される機能の確認を実行するためのＡＰＩを、機器識別情報及びアプリの区分（例えば、ネイティブアプリかＷｅｂアプリか）を示すアプリ区分情報を付与して（引数として）、呼び出すことにより、利用制限機能確認要求をプラットフォーム４６１に対して行えばよい。このため利用制限機能確認要求は、機器識別情報及びアプリ区分情報を含む。
【０１４６】
なお、アプリ区分情報は、例えば、ＲＯＭ４０４又はＨＤＤ４１１に予め記憶されているため、アプリ４５１やアプリ２４５１は、利用が制限される機能の確認を実行するためのＡＰＩの呼び出しに先立ち、ＲＯＭ４０４又はＨＤＤ４１１からテナント識別情報を取得しておけばよい。
【０１４７】
また、利用制限情報記憶部３５３は、図２０に示すように、機種識別情報と、機番情報と、利用制限機能識別情報と、アプリ区分情報と、電源オフ要否情報と、解消方法情報と、を対応付けて記憶しておけばよい。
【０１４８】
アプリ区分情報は、例えば、ブラウザにセキュリティ脆弱性が見つかり、Ｗｅｂアプリのみ機能の利用を制限する必要がある場合のように、ネイティブアプリ又はＷｅｂアプリのいずれかのみ機能の利用を制限する必要がある場合に対応できるよう、追加されている。なお、アプリ区分情報が空の場合、ネイティブアプリ及びＷｅｂアプリの双方を示す。
【０１４９】
また、取得部３５５は、利用制限情報記憶部３５３から、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれる機器識別情報が示す機器を示す機器識別情報に対応付けられ、かつ当該利用制限機能確認要求に含まれるアプリ区分情報が示すアプリの区分を示すアプリ区分情報に対応付けられた前記利用制限機能識別情報を取得すればよい。
【０１５０】
例えば、利用制限機能確認要求受信部３５１により受信された利用制限機能確認要求に含まれる機器４００の機器識別情報が機種識別情報「ＭＦＰ−Ａ」及び機番情報「１２３４５６」、アプリ区分情報が「ネイティブ」であり、利用制限情報記憶部３５３に図２０に示す情報が記憶されているとする。この場合、取得部３５５は、利用制限情報記憶部３５３から、カラム２５０５の利用制限機能識別情報「／ｐｒｉｎｔ／＊」、電源オフ要否情報「Ｎｏ」、及び解消方法情報「方法１」を取得する。
【０１５１】
これは、カラム２５０５では、機器識別情報は、機種識別情報が「ＭＦＰ−Ａ」、機番情報が「１２３４５６」であって機器４００を示すとともに、アプリ区分情報が空であるため、全ての区分を示し、「ネイティブ」も示すためである。
【０１５２】
なお、カラム２５０６では、機器識別情報は、機種識別情報が「ＭＦＰ−Ａ」、機番情報が空であって機器４００も示すが、アプリ区分情報が「Ｗｅｂ」であるため、カラム２５０６の利用制限機能識別情報等は取得されない。
【０１５３】
なお説明は省略するが、情報処理装置１３００においても上述の変形を加えることで、上記第２実施形態で説明したネイティブアプリケーションによる機能制限及び上記変形例１で説明したＷｅｂアプリケーションによる機能制限の双方に対応できるようにすることもできる。
【０１５４】
（プログラム）
上記各実施形態及び各変形例の情報処理装置及び機器（以下、「上記各実施形態及び各変形例の各装置」と称する）で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＤＶＤ（Digital  Versatile  Disk）、フレキシブルディスク（ＦＤ）等のコンピュータで読み取り可能な記憶媒体に記憶されて提供される。
【０１５５】
また、上記各実施形態及び各変形例の各装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記各実施形態及び各変形例の各装置で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、上記各実施形態及び各変形例の各装置で実行されるプログラムを、ＲＯＭ等に予め組み込んで提供するようにしてもよい。
【０１５６】
上記各実施形態及び各変形例の各装置で実行されるプログラムは、上述した各部をコンピュータ上で実現させるためのモジュール構成となっている。実際のハードウェアとしては、例えば、ＣＰＵがＲＯＭからプログラムをＲＡＭ上に読み出して実行することにより、上記各機能部がコンピュータ上で実現されるようになっている。
【０１５７】
なお、上記各実施形態及び各変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。上記新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１５８】
１００、１１００、２１００  情報処理システム
１０１  ネットワーク
３００、１３００  情報処理装置
３５１  利用制限機能確認要求受信部
３５３、１３５３  利用制限情報記憶部
３５５、１３５５  取得部
３５７  利用制限機能確認応答送信部
４００、１４００、２４００  機器
４５１、１４５１、２４５１  アプリ
４６１  プラットフォーム
４７１  ＡＰＩ
４７３  利用制限機能確認要求送信部
４７５  利用制限機能確認応答受信部
４７７  機能対応情報記憶部
４７９  機能実行態様情報記憶部
４８１  実行禁止制御部
４８３  表示制御部
４８５  電源オフ態様情報記憶部
４８７  電源制御部
１３５９  許容情報記憶部
２４５３  ブラウザ
【先行技術文献】
【特許文献】
【０１５９】
【特許文献１】特許第５２５８４７４号公報
【図１】
0006728729.tif 000002
【図２】
0006728729.tif 000003
【図３】
0006728729.tif 000004
【図４】
0006728729.tif 000005
【図５】
0006728729.tif 000006
【図６】
0006728729.tif 000007
【図７】
0006728729.tif 000008
【図８】
0006728729.tif 000009
【図９】
0006728729.tif 000010
【図１０】
0006728729.tif 000011
【図１１】
0006728729.tif 000012
【図１２】
0006728729.tif 000013
【図１３】
0006728729.tif 000014
【図１４】
0006728729.tif 000015
【図１５】
0006728729.tif 000016
【図１６】
0006728729.tif 000017
【図１７】
0006728729.tif 000018
【図１８】
0006728729.tif 000019
【図１９】
0006728729.tif 000020
【図２０】
0006728729.tif 000021