[go: up one dir, main page]

JP2019069564A - 画像形成装置、画像形成装置の制御方法、及びプログラム - Google Patents

画像形成装置、画像形成装置の制御方法、及びプログラム Download PDF

Info

Publication number
JP2019069564A
JP2019069564A JP2017197157A JP2017197157A JP2019069564A JP 2019069564 A JP2019069564 A JP 2019069564A JP 2017197157 A JP2017197157 A JP 2017197157A JP 2017197157 A JP2017197157 A JP 2017197157A JP 2019069564 A JP2019069564 A JP 2019069564A
Authority
JP
Japan
Prior art keywords
application
screen
image forming
license
forming apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017197157A
Other languages
English (en)
Inventor
英雄 淺原
Hideo Asahara
英雄 淺原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017197157A priority Critical patent/JP2019069564A/ja
Publication of JP2019069564A publication Critical patent/JP2019069564A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】アプリケーションのライセンスが無効になったときにも、連携動作するアプリケーションを利用することができる画像形成装置を提供する。【解決手段】この画像形成装置は、画像形成装置で動作するアプリケーションの動作を制御する制御手段と、アプリケーションに係る画面を表示する表示手段と、を備える。制御手段は、アプリケーションの有効期限が無効である場合に、アプリケーションが認証機能を有していればアプリケーションを起動させ、認証機能を有していなけば前記アプリケーションを停止させる。表示手段は、ユーザからの操作に従って画面を表示する際に、アプリケーションが認証機能を有しており、かつ有効期限が無効である場合であっても、アプリケーションに係る画面の表示優先度に応じてアプリケーションに係る画面を表示する。【選択図】図6

Description

本発明は、画像形成装置、画像形成装置の制御方法、及びプログラムに関し、特にアプリケーションのライセンス管理に関する。
複合機において、別途開発したソフトウェアをアプリケーションとしてインストールし、新たな機能を提供、もしくは元からある機能をカスタマイズすることが行われている。このアプリケーションを利用できる権利を定めて、その権利をライセンスとして販売することがある。権利としては、利用期限や、利用回数がある。与えられた権利を使い切るとライセンスが無効になり、アプリケーション側に実装された仕組みで、一部もしくは全ての機能が利用できなくなる。ライセンスが無効になったときの仕組みをすべてのアプリケーションに実装する手間を軽減するため、汎用的な仕組みが提供される場合がある。一般的には、ライセンスが無効になると、アプリケーションが停止され、起動できなくなる仕組みである。利用者がアプリケーションの起動を指示すると、ライセンスが無効であるため利用できないことを警告する画面が表示され、画面を閉じるとアプリケーションが停止するような仕組みが存在する。
特許第4547907号公報
ライセンスが無効になったアプリケーションの起動を止めてしまうと、利用者から見て、ライセンスが無効になったアプリケーションに関係しない機能まで利用できなくなるアプリケーションが存在する。例えば、ログインアプリケーションというアプリケーションが存在する。ログインアプリケーションは、複合機を利用するユーザを識別する認証機能と、どの機能を利用してよいかの認可機能を提供する。そのため、他のアプリケーションは、利用中のユーザが誰かを参照する場合、利用中のユーザが要望した機能が認可されているかを確認する場合などに、ログインアプリケーションの機能を利用する。この利用関係があるため、ログインアプリケーションの起動を止めてしまうと、ログインアプリケーションの機能を利用したいアプリケーションがログインアプリケーションの起動完了を待つために起動できなくなる場合がある。ログインアプリケーションを使ってライセンス販売のビジネスをする場合もあるため、ログインアプリケーションのライセンスが無効になると、利用者からみて関係しない機能まで利用できなくなってしまう。
本発明は、上記課題を鑑みて、アプリケーションのライセンスが無効になったときにも、連携動作するアプリケーションを利用することができる画像形成装置を提供することを目的とする。
上記の課題を解決するために、本発明の画像形成装置は、画像形成装置で動作するアプリケーションの動作を制御する制御手段と、前記アプリケーションに係る画面を表示する表示手段と、を備え、前記制御手段は、前記アプリケーションの有効期限が無効である場合に、前記アプリケーションが認証機能を有していれば前記アプリケーションを起動させ、前記認証機能を有していなけば前記アプリケーションを停止させ、前記表示手段は、ユーザからの操作に従って前記画面を表示する際に、前記アプリケーションが認証機能を有しており、かつ有効期限が無効である場合であっても、前記アプリケーションに係る画面の表示優先度に応じて前記アプリケーションに係る画面を表示することを特徴とする。
本発明によれば、アプリケーションのライセンスが無効になったときにも、連携動作するアプリケーションを利用することができる画像形成装置を提供することができる。
画像形成装置のネットワーク構成を示す図である。 画像形成装置のハードウェア構成を示す図である。 画像形成装置のソフトウェア構成を示す図である。 アプリケーションとライセンスファイルの一例を示す図である。 警告画面の一例を示す図である。 起動処理を示すシーケンス図である。 アプリケーションの有効期限切れを検知したときのフローチャートである。 画面遷移要求を検知したときのフローチャートである。 第2実施形態の画面遷移要求を検知した時のフローチャートである。
以下、本発明を実施するための最良の形態について図面などを参照して説明する。
まず、アプリケーションについて説明する。実施形態中に説明する画像形成装置101には、後からアプリケーションやライセンスを追加するための仕組みが存在する。画像形成装置101が有していない機能を追加する、顧客にあわせて機能をカスタマイズする、といった用途が想定されている。アプリケーションには複数のタイプが存在しており、コピータイプ、送信タイプ、管理タイプ、ログインタイプなどがある。それぞれ、コピー機能、送信機能、デバイスの管理機能、ログイン機能を提供するアプリケーションであることを示す。
次に、ログインアプリケーションについて説明する。ログインアプリケーションは、ログインタイプのアプリケーションのことである。ログイン機能などの認証機能を提供するが、具体的には、画像形成装置101の利用者を認証し、適切な認可を与えるアプリケーションである。通常はOSレベルで提供される基本機能であるが、画像形成装置101においては、ログインアプリケーションを顧客の環境に合わせてカスタマイズしたい要望が強いため、よく利用されるアプリケーションタイプである。
次に、ログインアプリケーションを単純に停止、もしくは起動させないとした場合に発生する事象について説明する。画像形成装置101は、複数人で共有することを前提としているため、何の処理が誰の指示で行われたかをトレース、誰に何の処理を許可してよいか否かを制御することが重要である。そのため、ログインタイプ以外の多くのアプリケーションが、ログインアプリケーションの機能と連携するように実装されている。そのため、ログインアプリケーションが動作しなくなると、ログインアプリケーションの機能を必要とするアプリケーションは、ほとんど利用できなくなる状況が発生する可能性がある。
(第1実施形態)
図1は、本実施形態を説明するためのネットワーク構成図である。画像形成装置101は、複合機に代表される、画像を形成する機能を有する装置である。ライセンス管理サーバ102は、画像形成装置101上で動作するアプリケーションのライセンスを管理するサーバである。アプリケーションとは、画像形成装置101上で拡張機能を利用できるようにするためのソフトウェアプログラムのことである。アプリケーションを利用する権利があることを証明するデータがライセンスファイルであり、ライセンスが画像形成装置101に正しく適用されると、対応するアプリケーションを利用することができる。ライセンスの適用方法としては、ライセンスファイルのインストールが考えられる。アプリケーションを動作させるための実行ファイルは、画像形成装置101のファームウェアに予め組み込まれていてもよく、後から画像形成装置101にダウンロードする形式であってもよい。ライセンス管理サーバ102は、特定のサーバでなくてもよく、例えば、クラウド基盤のような不定のサーバ上に存在するライセンス管理サービスであってもよい。
情報端末103は、パソコンに代表される情報処理装置である。キーボードやマウスとディスプレイ、もしくはタッチパネルを介してウェブブラウザを操作することができる。また、画像形成装置101にアプリケーションやライセンスをインストールする操作指示を行う。情報端末103は、インターネット経由で画像形成装置101と通信する形態で説明したが、ローカルネットワーク環境に情報端末を接続してもよい。LAN110は、画像形成装置101と外部のインターネット111をつなぐネットワーク回線である。インターネット111は、前述した画像形成装置101、ライセンス管理サーバ102、情報端末103が通信可能となるネットワーク回線である。LAN110およびインターネット111を介して、画像形成装置101や情報端末103はライセンス管理サーバ102と通信を行うことができる。
図2は、画像形成装置101のハードウェア構成図である。CPU201は、プログラムの実行や、様々な処理の制御を行う。不揮発性メモリ202は、ROMから構成され、機器の起動処理において初期段階に必要なプログラムやデータが格納されている。揮発性メモリ203は、RAMから構成され、プログラム、データの一時的な格納場所として利用される。補助記憶装置204は、ハードディスクやRAMドライブ等の大容量記憶装置から構成され、大容量データの保管、プログラムの実行コードの保持、画像形成装置101の設定値の保持を行う。揮発性メモリ203と比較して、長時間保持する必要があるデータを記憶する。補助記憶装置204は、不揮発性の記憶装置であるため、画像形成装置101の電源が切られてもデータを記憶し続けることができる。ディスプレイ205は、利用者に情報を伝えるための表示装置である。入力装置206は、利用者の選択指示を受け付け、内部バス110を介してプログラムに伝達するための装置である。ネットワーク通信装置207は、画像形成装置101がネットワークを介して別の情報機器と通信することを可能とするための装置である。内部バス210は、各ハードウェア装置を前記画像形成装置101内で通信可能な状態に接続する通信バスである。
図3は、画像形成装置101のソフトウェア構成図である。画像形成装置101が保持する各ソフトウェア部は、画像形成装置101において不揮発性メモリ202もしくは補助記憶装置204に保存され、CPU201にて実行される。また、実行時に使用する各種情報は画像形成装置101において、揮発性メモリ203もしくは補助記憶装置204に保持してソフトウェア間で各種情報のやりとりを行う。
以下に画像形成装置101が保持する各ソフトウェア部を説明する。インストール部301は、画像形成装置101上で動作するアプリケーションと、アプリケーションに対応するライセンスのインストール処理を行う。インストール時には、アプリケーションの実体だけでなく、アプリケーションの利用条件を示すライセンスファイルをセットでインストールする。インストールの指示は、情報端末103から行う。画像形成装置101は、ネットワーク通信装置207を介してインストール指示、およびアプリケーションファイル、ライセンスファイルを受信する。
アプリケーションとライセンスファイルを図4を参照して説明する。アプリケーションファイル401と、ライセンスファイル402は、ログインタイプのカード認証アプリをインストールできる組み合わせである。また、アプリケーションファイル402と、ライセンスファイル403は、送信タイプのクラウド送信アプリをインストールできる組み合わせである。アプリケーションファイルとライセンスファイルは、不正防止のために暗号化されているが、本実施形態では、説明のしやすさのために復号化した例を示す。
まず、アプリケーションファイルに含まれる各情報について説明する。マニフェストファイルとは、アプリケーション自身についての説明が記載されたファイルである。アプリケーション識別子とは、画像形成装置101上で動作するアプリケーションを一意に識別する為の識別子である。図4では単純な整数で表しているが、より複雑な文字列や、UUIDを用いてもよい。アプリケーション名称とは、アプリケーションの呼称である。アプリケーションタイプは、すでに説明したアプリケーションのタイプのことである。本実施形態のアプリケーションファイル401は、ログインタイプを示す。また、本実施形態のアプリケーションファイル403は、コピータイプを示す。それぞれ、アプリケーションが主に提供する機能がどういったタイプであるかを示す。本実施形態では、2つのタイプだけを挙げたが、例えば、送信タイプ、管理タイプなどであってもよい。
プログラムファイルは、アプリケーションが提供したい機能を実現するための実行コードである。なお、本実施形態では、少なくともアプリケーションが起動されたときに実行される起動処理が含まれる。起動処理でやることはアプリケーションによって異なる部分が多いが、他のアプリケーションに対して機能を提供する場合には、機能を呼び出す処理が含まれる。機能を呼び出す方法は、一般的なAPIコールや、Webインタフェースの呼び出しなどが考えられるが、これを呼び出したときに期待される結果を返せる状態にする処理を行う。また、ユーザが直接利用する画面などを提供する場合には、画面を表示できるように画像ファイルを読み込む処理や、UI制御部306に表示できる画面を通知する処理を行う。
アプリケーションファイル401は、起動処理の中で公開機能を利用できる状態にする処理を行うことを模式的に示す。ログインアプリの公開機能としては、認証されたユーザの情報を通知する機能などが想定される。また、認証画面501を登録する処理を行うことを模式的に示している。認証画面501については、後に説明する。アプリケーションファイル403は、起動処理の中でログインの機能を利用する準備処理を行うことを模式的に示している。本実施形態では、利用するログインアプリの機能の準備ができていなければ、アプリケーションの起動処理を失敗させる。
次に、ライセンスファイルに含まれる各情報について説明する。デバイス識別子とは、デバイスの個体を識別するための識別子である。図4では、単純な整数で表しているが、重複がないようにするため、より複雑な文字列や、UUIDを用いてもよい。指定されたデバイス識別子に一致するデバイスには、ライセンスファイル402を利用できる。デバイス識別子が一致しないデバイスには、インストールできない制御が行われる。
ライセンスタイプとは、ライセンスファイルによって与えられる権利の範囲をどのように指定するかを示す。ライセンスファイル402は、期間限定の権利を与えることを示す。具体的な権利範囲は、後述する有効期限で指定される。ライセンスファイル404は、無期限の権利を与えることを示している。本実施形態では、有効期限に対するライセンスを前提に説明しているが、他の例であってもよい。例えば、認証回数やジョブ実行回数のような回数を元にした権利を与えるライセンスであってもよい。その場合は、後述する有効期限ではなく、利用回数上限が指定される。また、期限ではなく所定の期間を指定するライセンスであってもよい。その場合は、後述する有効期限ではなく、利用開始できる年月日、および利用終了する年月日が指定される。その他の指定方法であってもよい。
有効期限とは、ライセンスファイルによって与えられる権利の範囲の日数を示す。ライセンスファイル402は、アプリケーションを30日間利用できる権利であることを示す。電子署名とは、アプリケーションファイルを検証するための電子署名であって、不正防止目的での検証に利用される。インストール部301は、アプリケーションファイルとライセンスファイルを受信すると、まずファイルを復号化した上で、電子署名の検証を行う。続いて、ライセンスファイルによって与えられた権限を後述するライセンス保持部302に記憶する。最後に、アプリケーションファイルを画像形成装置101上で実行可能な形式にした上で、アプリケーション部に配置する。
ライセンス保持部302は、インストール部301によってインストールされたライセンスファイルの情報を保持する手段である。ライセンスはアプリケーションごとに保持されている。表1は、ライセンス保持部302が保持するライセンステーブルの例である。
Figure 2019069564
表1のアプリ識別子は、すでに説明したアプリを一意に識別するための識別子である。表1のライセンス状態は、ライセンスファイルに記載された権利を示す。例えば、ライセンスファイル402をインストールされた場合には、有効期限30日であるため、インストール作業をした時点から30日後の期限が記録される。例えば、2017年12月1日にインストール処理を行うと、30日後の期日が記録され、2017年12月31日が記憶される。ライセンスファイル404をインストールされた場合には、有効期限が無期限であるため、無期限が記憶される。
本実施形態では、年月日でライセンス状態を記憶する例を説明したが、例えば、残日数で保持してもよいし、時分秒まで保持してもよい。また、期限だけでなく、利用開始日も保持してもよい。また、例えば、アプリケーションの処理回数や処理量に対して権利を与える形式であってもよい。送信タイプのアプリケーションである場合、送信を1000回などの権利が考えられる。この場合は、ライセンスファイルが保持するライセンスタイプに何の回数に対する権利なのかを定義する必要がある。さらに、その情報を表1のライセンステーブルに保持する必要がある。また、特にテーブルで保持する必要はなく、アプリケーションごとに個別のファイルで管理してもよい。
ライセンス判定部303は、アプリケーションのライセンスが有効であり、まだ利用できるか否かを判定する処理を行う。判定には、ライセンス保持部302が保持する情報を利用する。表1のライセンス状態に記載された日付が、現在日時以降であれば、「有効」と判定する。現在日時より前であれば「無効」と判定する。例えば、表1のアプリ識別子が「1」のアプリであって、現在の日付が2018年1月1日である場合、ライセンスは「無効」と判定される。現在の日時が2017年12月1日である場合、ライセンスは「有効」と判定される。
アプリケーション保持部304は、インストール部301でインストールされたアプリケーションを、画像形成装置101で実行可能な状態で記憶する。アプリケーションタイプ判定部305は、アプリケーションのタイプを判定する処理を行う。アプリケーション保持部304に保持されたアプリケーションの実体に対して、アプリケーションファイルに記憶されたアプリケーションタイプを読み取って、要求された判定を行う。例えば、ログインタイプのアプリケーションか否かを判定する要求を受けると、指定されたアプリ識別子のアプリケーションタイプが「ログイン」かを判定する処理を行う。
本実施形態では、アプリケーションタイプをアプリケーション自身が宣言することで、アプリケーションが、画像形成装置101上で動作するアプリケーションの多くが連携動作する必要があるか否かを判定する。しかしながら、これに限定することなく、例えば、アプリケーション間の依存関係を定義したファイルを参照することで、画像形成装置101上で動作するアプリケーションの多くが連携動作する必要があるアプリケーションか否かを判定する方法であってもよい。また、動的にアプリケーション間の依存関係を解析して、画像形成装置101上で動作するアプリケーションの多くが連携動作する必要があるアプリケーションか否かを判定する方法も考えられる。
UI制御部306は、ディスプレイ205に画像形成装置101の操作を行うためのUIを表示する画面の例を、図5に示す。認証画面501は、画像形成装置101の機能を利用するために、利用者を認証するためのユーザIDとパスワードを入力するための画面である。本実施形態では、入力装置206による手入力を想定した画面を示したが、カードリーダや生体認証といった別の入力装置による入力を促す画面であってもよい。ホーム画面502は、画像形成装置101の機能の中から利用したい機能を選択するための画面である。本実施形態では、コピー、スキャン、プリント、ライセンス確認が選択可能である。警告画面503は、ログインアプリケーションのライセンスが切れていることを警告する画面である。本実施形態では、ライセンスが切れているログインアプリケーションを特定するための情報として、アプリケーション識別子、アプリケーション名、有効期限を表示している。
UI制御部306は、画像形成装置の電源が入れられると、最初に不図示の起動中画面を表示した上で、認証画面501を表示する。利用者がIDとPasswordを入力してユーザ認証に成功すると、ホーム画面502を表示する。ホーム画面502に表示されたボタンを選択すると、対応するアプリケーションが表示する画面を表示する。また、不図示の物理的なボタンなどの操作によって、特定の画面を表示することもある。しかし、動作中のログインアプリケーションのライセンスが切れている場合には、表2のUI制御テーブルに応じた画面遷移の制御を行う。
Figure 2019069564
表2は、画面列にある画面の表示優先度を示すテーブルである。画面の列には、表示を要望される画面が示されている。画面の表示優先度の列には、警告画面503よりも優先して利用できる画面か否かが示されている。サービスモードは、画像形成装置101のサービスマンが保守作業のために利用する画面である。ライセンス確認画面は、画像形成装置101のサービスマンや管理者ユーザが保守作業の一環として、アプリケーションのライセンス確認やライセンス更新を行う画面である。ここで、認証画面とは、認証画面501のことである。また、ホーム画面とは、ホーム画面502のことである。コピー、送信、プリントは、それぞれコピー、送信、プリントのアプリケーションが表示する画面である。
例えば、サービスモード画面は、ログインアプリケーションのライセンスが切れている場合にも保守作業のために利用できないと困る画面であるため、「優先」と記憶されている。逆に、コピー画面はログインアプリケーションのライセンスが切れている場合には利用できない画面であるため、「優先しない」と記憶されている。
この表に基づき、UI制御部306は、画面制御を行う。利用者の操作によって、次にサービスモード画面が表示される場合には、表2のテーブルで「優先」となっているため、要求されたサービスモード画面を表示する。逆に、利用者の操作によって、次にコピー画面が表示される場合には、表2のテーブルで「優先しない」となっているため、要求されたコピー画面を表示しない。代わりに、ログインアプリケーションのライセンスが切れていることを警告する警告画面503を表示する。
アプリケーション起動部307は、画像形成装置101上で動作するアプリケーションの起動処理を行う。表3は、アプリケーション起動部307が管理する起動順序テーブルである。
Figure 2019069564
起動順序の列は、画像形成装置101の電源がオンになったときに、アプリケーションを起動する順番が示されている。本実施形態では、数値が小さいほど先に起動する。起動時のアプリケーションの起動順序としては、並行で起動させられるアプリケーションもあり、元々決められた順番で起動させた方が起動処理をスムーズに進められるなどの理由から、順番に起動させるケースもある。本実施形態では、決められた順番で1つずつアプリケーションを起動する例を示す。
アプリ識別子の列は、起動させる対象のアプリケーションを一意に識別するための識別子が示される。アプリ名は、起動させる対象のアプリケーションの名称である。動作させる上では不要であるが、本実施形態では説明のために併記している。アプリ基盤は、アプリケーションが動作できるために最低限必須な機能を提供するファームウェアを意図している。認証アプリ、コピーアプリ、送信アプリ、プリントアプリは、それぞれ名称通りの機能を提供するアプリケーションである。
アプリケーション起動部307は、アプリケーションを起動する際に、アプリケーションの起動を行うべきか否かを判定する。判定方法として、まず、アプリケーションタイプ判定部305によって、起動候補のアプリケーションがログインタイプか否かの判定を行う。ログインタイプであれば、ライセンスの判定を行う必要はなく、アプリケーションを起動する。ログインタイプでなければ、ライセンス判定部303によるライセンスの判定を行う。ライセンスが有効であればアプリケーションを起動するが、ライセンスが無効であれば、アプリケーションを起動せず、次のアプリケーションを起動させる。
図6は、デバイスを起動したときに、アプリ起動管理部がアプリケーションを起動する処理の流れを説明するためのフローチャートである。まず、ステップS601にて、アプリケーション起動部307は、アプリケーションの起動指示を検知する。次に、ステップS602にて、アプリケーション起動部307は、起動順序テーブルにある全アプリケーションの起動処理を完了したか否かを判定する。ステップS603以降で、起動順序テーブルにあるアプリケーションを、優先度順に起動処理していくため、全ての処理が終わっている場合(Yes)、起動処理を完了する。全ての処理が終わっていない場合(No)、ステップS603へ進む。次に、ステップS603にて、アプリケーション起動部307は、起動順序テーブルにあるアプリケーションの中から、優先度が一番高く、まだ起動処理を行っていないアプリケーションを選択する。表3では、起動順序の数字が小さい方が高い優先度を意味し、アプリ基盤、カード認証アプリ、クラウド送信アプリ、クラウド印刷アプリの順に起動処理を行う。
次に、ステップS604にて、アプリケーションタイプ判定部305は、ステップS603で選択されたアプリケーションのアプリケーションタイプがログインタイプか否かを判定する。ログインタイプである場合(Yes)、ステップS605に進む。一方、ログインタイプでない場合(No)、ステップS611に進む。ここで、表3のカード認証アプリの場合を例に説明する。カード認証アプリは、インストールされると、アプリケーション保持部304にアプリケーションファイル相当の情報が記憶される。アプリケーションタイプ判定部305は、アプリケーション保持部304に記憶された情報を参照し、アプリケーションタイプを参照する。図4のアプリケーションファイル401を参照すると、アプリケーションタイプがログインとなっているため、ログインタイプと判定される。判定の結果がログインタイプであるため、ステップS605に進む。一方、表3のクラウド送信アプリの場合は、図4のアプリケーションファイル403を見ると、アプリケーションタイプがコピーとなっているため、コピータイプと判定される。判定の結果がコピータイプであるため、ログインタイプとは異なるため、ステップS611に進む。
次に、ステップS605にて、アプリケーション起動部307は、ステップS603で選択したアプリケーションを起動する。アプリケーションは、アプリケーション保持部304に記憶された実行可能なファイルを用いて起動される。起動処理は、アプリケーションファイル401、403に示すプログラムファイルの中に起動処理として定義されている。次に、ステップS606にて、アプリケーション起動部307によって起動されたアプリケーションが、動作に必要な別のアプリケーションの機能があるか否かを判定する。動作に必要な別のアプリケーションの機能がある場合(No)、別アプリケーションの機能の利用準備をするためにステップS607に進む。動作に必要な別のアプリケーションの機能がない場合(Yes)、動作に必要な別のアプリケーションの機能の利用準備が不要なので、ステップS609に進む。例えば、アプリケーションファイル401の起動処理であれば、別のアプリケーションの機能を利用しないため、ステップS609に進む。一方、アプリケーションファイル403の起動処理であれば、ログインの機能を利用するため、ステップS607に進む。
次に、ステップS607にて、アプリケーション起動部307によって起動されたアプリケーションは、別のアプリケーションの機能を利用するための利用準備を行う。例えば、アプリケーションファイル403のアプリが、ログインアプリの機能を利用するための利用準備であれば、画像形成装置を利用するユーザが認証した時に、ユーザの情報を受信するための手続きを行う。ここで、ログインアプリの機能を提供する準備ができている場合、アプリケーションファイル403のアプリは、ログインアプリの機能を利用するための利用準備を完了できる。一方、ログインアプリの機能を提供する準備ができていない場合、アプリケーションファイル403のアプリは、ログインアプリの機能を利用するための利用準備を完了できず、失敗する。そして、ステップS608にて、アプリケーション起動部307によって起動されたアプリケーションは、ステップS607で利用準備ができたか否かを判定する。利用準備ができた場合(Yes)、他の起動処理を継続するため、ステップS609へ進む。一方、利用準備に何らかの問題が起きて、利用準備ができていない場合(No)、ステップS610へ進む。
次に、ステップS609にて、アプリケーション起動部307によって起動されたアプリケーションは、提供する機能が使えることを登録する。ここで、機能が使えることを登録するとは、画像形成装置101の利用者がアプリケーションを呼び出すことができるように機能を呼び出すボタンを表示、もしくは別のアプリケーションから機能を利用できるように通知する。アプリケーションファイル401は、認証画面を表示できることをUI制御部306に通知する。アプリケーションファイル403は、コピー画面を表示できることをUI制御部306に通知する。
次に、ステップS610にて、アプリケーション起動部307によって起動されたアプリケーションの起動処理を失敗で終了させる。本実施形態では、ステップS610で起動処理に失敗したアプリケーションに対して、再度起動を試みるような処理を説明していないが、その仕組みがあってもよい。すなわち、ステップS602で全てのアプリケーションの処理が完了した後に、起動処理に失敗したアプリケーションのリストに対して、再度ステップS602からステップS612を定期的に実行する仕組みがあってもよい。また、本実施形態では、ステップS610で起動処理に失敗したアプリケーションに対して、起動処理を失敗で終了させる方法を示したが、別の方法であってもよい。例えば、ステップS610で何度かリトライする仕組みがあってもよい。
次に、ステップS611にて、ライセンス判定部303は、ステップS603で選択されたアプリケーションのライセンスが有効であり、まだ利用できるか否かを判定する。本実施形態では、有効期限で説明しているため、アプリケーションのライセンスが有効期限内であるか否かを判定する。ライセンス判定部303は、ライセンス保持部302が保持する有効期限の情報と、現在の日時を用いて判定を行う。そして、ライセンスが有効である場合(Yes)、ステップS605に進む。一方、ライセンスが無効である場合(No)、ステップS612に進む。
表1を例に説明すると、現在の日時が2017/12/01である場合、アプリケーション識別子1と2のアプリケーションのライセンスは有効であると判定される。従って、ライセンスが有効であるため、ステップS605に進む。一方、アプリケーション識別子3のアプリケーションのライセンスは、無効であると判定される。この場合、ライセンスが無効であるため、ステップS612に進む。また、現在の日時が2018/1/1である場合、アプリケーション識別子2のアプリケーションのライセンスだけが有効であると判定される。ライセンスが有効であるため、ステップS605に進む。一方、アプリケーション識別子1と3のアプリケーションのライセンスは無効であると判定される。ライセンスが無効であるため、ステップS612に進む。そして、ステップS612にて、アプリケーション起動部307が、ステップS603で選択されたアプリケーションを起動させないスキップ処理を行う。アプリケーション起動部307は、ステップS603で選択されたアプリケーションを起動する必要がないと判定し、処理が完了したことを記録する。
図7は、時間経過によっていずれかのアプリケーションのライセンスが無効になったときの処理の流れを説明するためのフローチャートである。まず、ステップS701にて、ライセンス判定部303は、時間経過によってアプリケーションのライセンスが無効になったことを検知する。この詳細なフローは不図示であるが、時間経過によって日付の変更があったことを検知して、新しい日付を使ってライセンステーブルにある各アプリケーションのライセンスを判定する処理によって実現される。もしくは、有効期限が一番近い未来に切れる日付でタイマーを仕掛ける方法であってもよい。また、本実施形態とは異なり、利用回数に対するライセンスであった場合には、利用回数のカウントアップによっていずれかのアプリケーションのライセンスが無効になったことを検知する処理となる。
次に、ステップS702にて、アプリケーションタイプ判定部305は、ステップS701で検知した、ライセンスが無効になったアプリケーションのアプリケーションタイプがログインタイプか否かを判定する。この処理は、ステップS604と同等の処理であるため、その詳細な説明を省略する。判定の結果がログインタイプである場合(Yes)、本フローの処理を終了する。一方、ログインタイプでない場合(No)、ステップS703に進む。次に、ステップS703にて、アプリケーション起動部307が、ステップS701で検知した、ライセンスが無効になったアプリケーションを停止する。
図8は、画面遷移要求を検知した際の処理の流れを説明するためのフローチャートである。まず、ステップS801にて、UI制御部306は、画面遷移要求を検知する。ここで、画面遷移要求は、入力装置を利用者(ユーザ)が操作することによって発生する。操作は、例えば、ハードウェアで用意されたボタンを押下する、ディスプレイにソフトウェアが表示したボタンを入力装置で選択するなどの操作であってよい。その他、音声による画面遷移要求など、代替手段であってもよい。
次に、ステップS802にて、ライセンス判定部303は、ログインアプリケーションのライセンスが無効か否かを判定する。ライセンス判定部303は、動作中のログインアプリケーションを特定する。具体的には、起動順序テーブルのアプリケーションに対してアプリケーションタイプ判定部305によりログインタイプのアプリケーションを探索する。表3の例では、アプリ識別子1のカード認証アプリのアプリケーションタイプがログインタイプであるため、ログインタイプのアプリケーションであると特定される。ライセンス判定部303は、次に特定されたログインアプリケーションのライセンス判定を行う。本実施形態では、有効期限の例で説明しているため、現在の日付とライセンステーブルの有効期限の比較によって判定する。表1の例では、アプリ識別子1のカード認証アプリは、有効期限が2017年12月31日であるため、現在の日付が2017年12月31日以前である場合、有効と判定される。一方、現在の日付が2018年1月1日以降である場合、無効と判定される。ライセンス判定の結果、有効である場合(Yes)、ステップS805へ進み、無効である場合(No)、ステップS803へ進む。
次に、ステップS803にて、UI制御部306は、画面遷移先の画面優先度を取得する。ここで、画面遷移先は、ステップS801で検知した画面遷移要求によって要求された画面である。該当する画面の画面優先度を、UI制御テーブルから参照する。例えば、現在表示されている画面が認証画面501であったと仮定する。その状態から、認証操作の成功によってホーム画面502の表示要求がステップS801で検知されたとする。この場合、表2によればホーム画面は警告画面502よりも「優先しない」であることが取得される。一方、例えば、現在表示されている画面が警告画面503であったと仮定する。その状態から、ハードウェアボタンの操作によってサービスモード画面の表示要求がステップS801で検知されたとする。この場合、表2によればサービスモード画面は、警告画面502よりも「優先」であることが取得される。
次に、ステップS804にて、UI制御部306は、ステップS803で取得した画面優先度が優先であるか否かを判定する。優先である場合(Yes)、ステップS805に進む。一方、優先でない場合(No)、ステップS806に進む。次に、ステップS805にて、UI制御部306は、ステップS801で要求された画面を表示する。ステップS803で挙げたサービスモード画面を表示要求された場合は、本ステップでサービスモード画面を表示する。次に、ステップS806にて、UI制御部306は、ステップS801で要求された画面ではなく、ログインアプリケーションのライセンスが無効であることを警告する警告画面を表示する。ステップS803で挙げたホーム画面を表示要求された場合は、本ステップで警告画面503を表示する。
以上、本実施形態によれば、画像形成装置上で動作するアプリケーションの多くが連携動作する必要があるアプリケーションのライセンスが無効になったときにも、連携動作するアプリケーションを利用することが可能になる。
(第2実施形態)
まず、本実施形態の前提として、ログインアプリケーションのアプリケーション別認証について説明する。通常のログインアプリケーションは、画像形成装置101の操作全体に対して認証、認可を行う機能を提供する。そのため、画像形成装置101を起動すると、まず認証操作を促す画面が表示され、認証操作をしないとほとんどの機能が利用できないように制御される。アプリケーション別認証の場合、認証操作を促されるアプリケーションを管理者ユーザが限定できる機能が提供される。
例えば、送信アプリケーションを利用する場合だけ認証を要するといった設定が可能である。ここで、アプリケーション別認証対象外の機能を利用する場合に、誰の操作によるものかを残したい要望がある。そのため、認証操作を行う前に予め内部的に用意されたデフォルトのユーザで認証を行い、アプリケーションにはデフォルトユーザが操作中であることを通知しておく構成であってよい。デフォルトユーザのIDは、例えば、「0000」や「Default User」のような固定の文字列が用いられることが多い。通知を受けたアプリケーションは、操作者のIDが「0000」や「Default User」であれば、まだ認証操作を行う前に利用されており、誰にでも利用させてよい機能だけをUIとして表示する、などの制御を行うことができる。アプリケーションから見ると、デバイス起動時には、デフォルトユーザでのログインイベントを検知し、アプリケーション別認証対象のアプリケーション操作を行うために認証操作が行われると、2度目のログインインベントを検知することになる。
なお、アプリケーション別認証の機能をサポートするログインアプリケーションであれば、設定を切り替えるだけでアプリケーション別認証をサポートするモードに切り替わって動作する。また、アプリケーション別認証の機能をサポートしないログインアプリケーションも存在するため、その場合はアプリケーション別認証の機能をサポートするログインアプリケーションをインストールする必要がある。
アプリケーション別認証の機能が有効である場合、第1実施形態で説明した例では、認証を必要としないアプリケーションまで画面遷移できなくなってしまう不都合が発生する恐れがある。そこで、本実施形態では、ログイン関連のイベントをトリガに警告画面を表示し、その状態から画面遷移の制御を行う方法について説明する。
図9は、画面遷移要求を受けたときの、UI制御部306が画面遷移を判断する処理の流れを説明するためのフローチャートである。まず、ステップS901にて、UI制御部306は、画面遷移要求を検知する。画面遷移要求元については、ステップS801と同等であるため、その詳細な説明は省略する。次に、ステップS902にて、UI制御部306は、現在ユーザ(デフォルトユーザ以外)が認証済みか否かを判定する。具体的には、ログインアプリケーションから利用者のIDが通知されているか否かを判定する。ユーザが認証済みでない場合は、ユーザに認証してもらう必要があるため、ステップS910へ進み、認証画面501を表示する。一方、ユーザがログアウトを指示した場合には、ステップS902で認証済みでないと判定される。
次に、ステップS903にて、UI制御部306は、デフォルトユーザで認証済みか否かを判定する。具体的には、ログインアプリケーションから通知されている利用者のIDがデフォルトユーザ用に予約された特定のIDであるか否かを判定する。デフォルトユーザで認証済みである場合には、ステップS904へ進む。一方、デフォルトユーザで認証されていない場合は、すでに誰かが認証画面501で認証済みであるため、ステップS908へ進み、要求された画面を表示する。
次に、ステップS904にて、UI制御部306は、ステップS901で要求された画面がアプリケーション別認証の対象か否かを判定する。アプリケーション別認証の対象である場合、ステップS905に進む。一方アプリケーション別認証の対象でない場合、ステップS908に進み、要求された画面を表示する。ここで、アプリケーション別認証の対象であるか否かは、UI制御部306がログインアプリケーションから通知されて、表4に示すテーブルを保持しておき、認証要否の項目を参照して判別する。
Figure 2019069564
ここで、表4において、画面の列と、画面の表示優先度の列は、表2と同等であるため、その詳細な説明を省略する。認証要否の列は、現在動作しているログインアプリケーションが、アプリケーション別認証を行う場合に、各画面が認証を必要とするアプリケーションを表示する画面であるか否かを示す。例えば、サービスモード画面は認証を必要としないが、送信画面は認証を必要とすることを示す。他の手段でもよく、例えば、ログインアプリケーションに、認証要否を毎回問い合わせる構成であってもよい。
次に、ステップS905にて、ライセンス判定部303は、ログインアプリケーションのライセンスが無効か否かを判定する。ライセンス判定の結果、有効である場合、ステップS910へ進む。一方、無効である場合、ステップS906へ進む。なお、ライセンス判定部303で行う処理の詳細は、ステップS802と同等であるため、その詳細な説明は省略する。次に、ステップS906にて、UI制御部306は、画面遷移先の画面優先度を取得する。画面遷移先は、ステップS801で検知した画面遷移要求によって要求された画面である。該当する画面の画面優先度を、UI制御テーブルから参照する。次に、ステップS907にて、UI制御部306は、ステップS803で取得した画面優先度が優先であるか否かを判定する。優先である場合、ステップS908に進む。一方、優先でない場合、ステップS909に進む。
次に、ステップS908にて、UI制御部306は、ステップS901で要求された画面を表示する。ステップS903でデフォルトユーザ以外のユーザが認証済みである場合には、要求された画面を表示する。また、ステップS904で要求された画面がアプリケーション別認証の対象でない場合には、デフォルトユーザであっても認証画面を表示する必要がないため、要求された画面を表示する。さらに、ステップS907で画面優先度が優先と判定された場合には、警告画面503よりも優先されるべき画面を要求されたということなので、要求された画面を表示する。次に、ステップS909にて、UI制御部306は、ログインアプリケーションの有効期限が切れた警告画面503を表示する。次に、ステップS910にて、UI制御部306は、認証画面501を表示する。以上、本実施形態によれば、アプリケーション別認証の場合にも適切な画面制御を行うことができる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。

Claims (8)

  1. 画像形成装置で動作するアプリケーションの動作を制御する制御手段と、
    前記アプリケーションに係る画面を表示する表示手段と、
    を備え、
    前記制御手段は、前記アプリケーションの有効期限が無効である場合に、前記アプリケーションが認証機能を有していれば前記アプリケーションを起動させ、前記認証機能を有していなけば前記アプリケーションを停止させ、
    前記表示手段は、ユーザからの操作に従って前記画面を表示する際に、前記アプリケーションが認証機能を有しており、かつ有効期限が無効である場合であっても、前記アプリケーションに係る画面の表示優先度に応じて前記アプリケーションに係る画面を表示する
    ことを特徴とする画像形成装置。
  2. 前記制御手段は、前記アプリケーションが認証機能を有しており、かつ別のアプリケーションと連携する場合は、前記別のアプリケーションの利用準備の状況に応じて前記アプリケーションの動作を制御する
    ことを特徴とする請求項1に記載の画像形成装置。
  3. 前記制御手段は、前記別のアプリケーションの利用準備が完了している場合に、前記アプリケーションを起動させ、前記別のアプリケーションの利用準備が完了していない場合に、前記アプリケーションの起動をさせない
    ことを特徴とする請求項2に記載の画像形成装置。
  4. 前記表示手段は、前記アプリケーションに係る画面の前記表示優先度が前記有効期限が無効であることを示す警告画面よりも優先される場合、前記アプリケーションに係る画面を表示する
    ことを特徴とする請求項1〜3のいずれか1項に記載の画像形成装置。
  5. 前記表示手段は、前記アプリケーションに係る画面を表示する際に前記認証機能とは別の認証を必要とする場合、前記別の認証のための画面を表示する
    ことを特徴とする請求項1〜4のいずれか1項に記載の画像形成装置。
  6. 前記表示手段は、前記アプリケーションに係る画面を表示する際に前記認証機能とは別の認証を必要としない場合、前記アプリケーションに係る画面を表示する
    ことを特徴とする請求項5に記載の画像形成装置。
  7. 画像形成装置で動作するアプリケーションの動作を制御する画像形成装置の制御方法であって、
    前記アプリケーションの動作を制御する制御工程と、
    前記アプリケーションに係る画面を表示する表示工程と、
    を有し、
    前記制御工程では、前記アプリケーションの有効期限が無効である場合に、前記アプリケーションが認証機能を有していれば前記アプリケーションを起動させ、前記認証機能を有していなけば前記アプリケーションを停止させ、
    前記表示工程では、ユーザからの操作に従って前記画面を表示する際に、前記アプリケーションが認証機能を有しており、かつ有効期限が無効である場合であっても、前記アプリケーションに係る画面の表示優先度に応じて前記アプリケーションに係る画面を表示する
    ことを特徴とする画像形成装置の制御方法。
  8. 請求項1乃至6のいずれか1項に記載の画像形成装置の各手段としてコンピューターを機能させるためのプログラム。
JP2017197157A 2017-10-10 2017-10-10 画像形成装置、画像形成装置の制御方法、及びプログラム Pending JP2019069564A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017197157A JP2019069564A (ja) 2017-10-10 2017-10-10 画像形成装置、画像形成装置の制御方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017197157A JP2019069564A (ja) 2017-10-10 2017-10-10 画像形成装置、画像形成装置の制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2019069564A true JP2019069564A (ja) 2019-05-09

Family

ID=66440910

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017197157A Pending JP2019069564A (ja) 2017-10-10 2017-10-10 画像形成装置、画像形成装置の制御方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP2019069564A (ja)

Similar Documents

Publication Publication Date Title
JP6727799B2 (ja) 権限委譲システム、情報処理装置、認可サーバ、制御方法およびプログラム
US8656470B2 (en) Image processing apparatus, access control method, and storage medium
US8640102B2 (en) Removal of program licensed to user
JP6499423B2 (ja) 情報処理システム、情報処理装置、及びその制御方法とプログラム
US20200334342A1 (en) Information processing system, information processing apparatus and information processing method
US20090070855A1 (en) Information processing apparatus, authentication control method, and authentication control program
JP6904721B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2014059673A (ja) 画像処理システム、操作装置およびプログラム
JP6942541B2 (ja) 画像形成装置とその制御方法、及びプログラム
JP6993910B2 (ja) 情報処理装置及びその制御方法、並びにプログラム
US11671313B2 (en) Printing apparatus, printing system, method of registering printing apparatus, and medium
JP2015007893A (ja) 画像処理装置及びその認証方法、並びにプログラム
JP2011258000A (ja) 情報処理装置、情報処理装置のユーザ認証方法
US11237788B2 (en) Authentication system using a code with a mobile application
JP5052367B2 (ja) 画像処理装置、認証パッケージインストール方法、認証パッケージインストールプログラム、及び記録媒体
JP2015104022A (ja) 情報処理装置、その制御方法、及びプログラム
JP2019069564A (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
US10831424B1 (en) Authentication system with refresh tokens to print using a mobile application
US10768873B1 (en) Authentication system for printing at a device using a mobile application
JP2011104843A (ja) 画像形成装置、情報処理方法、及び情報処理プログラム
JP5285970B2 (ja) キー管理サーバ装置
JP2017091107A (ja) 情報処理装置とその制御方法、及びプログラム
JP7434488B2 (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
US11262958B2 (en) Authentication of user at a device using a mobile application
JP7242430B2 (ja) システム、ネットワークデバイス、制御方法、およびプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200618