(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024145005
(43)【公開日】2024-10-15
(54)【発明の名称】通信装置、コンピュータプログラム、および、方法
(51)【国際特許分類】
G06F 21/45 20130101AFI20241004BHJP
H04N 1/00 20060101ALI20241004BHJP
【FI】
G06F21/45
H04N1/00 838
H04N1/00 127A
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023057221
(22)【出願日】2023-03-31
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110001058
【氏名又は名称】鳳国際弁理士法人
(72)【発明者】
【氏名】宇野 暁仁
(72)【発明者】
【氏名】安藤 智子
【テーマコード(参考)】
5C062
【Fターム(参考)】
5C062AA05
5C062AA13
5C062AA29
5C062AB23
5C062AB38
5C062AB40
5C062AC05
5C062AC34
(57)【要約】
【課題】 サーバに適していないアクセス制御方法の通信装置による使用の可能性を低減する。
【解決手段】
1以上のサーバ制御方法を示す情報であるサーバ方法情報の要求を第1サーバに送信する。1以上のサーバ制御方法は、第1サーバによってサポートされるアクセス制御方法である。サーバ方法情報を含む応答を第1サーバから受信する。サーバ方法情報によって示される1以上のサーバ制御方法が候補制御方法を含むことを含む変更条件が満たされる場合に、設定済制御方法を候補制御方法に変更することをユーザに促す第1出力情報を出力する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
通信装置であって、
通信装置によって使用可能なアクセス制御方法を示す方法情報を格納するように構成されている方法記憶領域であって、前記方法記憶領域は、前記通信装置によって使用されるように現在設定されているアクセス制御方法である設定済制御方法を示す情報と、前記設定済制御方法の候補である候補制御方法を示す情報と、を格納するように構成されている、前記方法記憶領域と、
1以上のサーバ制御方法を示す情報であるサーバ方法情報の要求を前記第1サーバに送信する第1送信部であって、前記1以上のサーバ制御方法は、第1サーバによってサポートされるアクセス制御方法である、前記第1送信部と、
前記サーバ方法情報を含む応答を前記第1サーバから受信する第1受信部と、
前記サーバ方法情報によって示される前記1以上のサーバ制御方法が前記候補制御方法を含むことを含む変更条件が満たされる場合に、前記設定済制御方法を前記候補制御方法に変更することをユーザに促す第1出力情報を出力する第1出力部と、
を備える、通信装置。
【請求項2】
請求項1に記載の通信装置であって、さらに、
前記第1サーバと通信する通信部を備え、
前記1以上のサーバ制御方法が、前記設定済制御方法を含み、前記候補制御方法を含まない第1の場合には、前記変更条件は満たされず、
前記第1の場合には、
前記出力部は、前記第1出力情報を出力せずに、
前記通信部は、前記設定済制御方法に従って前記第1サーバと通信する、
通信装置。
【請求項3】
請求項1または2に記載の通信装置であって、
前記1以上のサーバ制御方法が、前記設定済制御方法を含まず、前記候補制御方法を含む第2の場合には、前記変更条件は満たされ、
前記第2の場合に、前記出力部は、前記第1出力情報を出力する、
通信装置。
【請求項4】
請求項1または2に記載の通信装置であって、
前記1以上のサーバ制御方法が前記設定済制御方法と前記候補制御方法とを含み、前記候補制御方法のセキュリティレベルが前記設定済制御方法のセキュリティレベルよりも高い第3の場合には、前記変更条件は満たされ、
前記第3の場合に、前記出力部は、前記第1出力情報を出力する、
通信装置。
【請求項5】
請求項1または2に記載の通信装置であって、
前記1以上のサーバ制御方法が、前記設定済制御方法と前記候補制御方法とのいずれも含まない第4の場合には、前記変更条件は満たされず、
前記通信装置は、さらに、
前記第4の場合に、前記通信装置に設定されるべきアクセス制御方法に関連する問い合わせを管理サーバに送信する第2送信部と、
前記問い合わせに対する応答を前記管理サーバから受信する第2受信部と、
前記第1出力情報とは異なるとともに前記管理サーバからの前記応答に含まれる情報を表す第2出力情報を出力する第2出力部と、
を備える、通信装置。
【請求項6】
請求項5に記載の通信装置であって、さらに、
前記設定済制御方法に基づくアクセス許可の要求を行うためのファームウェアを格納するファームウェア記憶領域を備え、
前記管理サーバからの前記応答が前記ファームウェアの更新を表す情報を含む場合に、前記第2出力部は、前記ファームウェアの更新を促す情報を含む前記第2出力情報を出力する、
通信装置。
【請求項7】
請求項5に記載の通信装置であって、
前記管理サーバからの前記応答が、前記第1サーバによって提供される第1サービスに代えて、前記第1サーバとは異なる第2サーバによって提供される第2サービスの使用を表す情報を含む場合に、前記第2出力部は、前記第1サービスに代えて前記第2サービスの使用を促す情報を含む前記第2出力情報を出力する、
通信装置。
【請求項8】
請求項5に記載の通信装置であって、
前記管理サーバからの前記応答が、前記通信装置によって使用可能なアクセス制御方法であって前記候補制御方法とは異なる第1制御方法への前記設定済制御方法の変更を表す情報を含む場合に、前記第2出力部は、前記第1制御方法への前記設定済制御方法の変更を促す情報を含む前記第2出力情報を出力する、
通信装置。
【請求項9】
請求項1または2に記載の通信装置であって、さらに、
前記1以上のサーバ制御方法が、前記設定済制御方法と前記候補制御方法とのいずれも含まず、かつ、前記1以上のサーバ制御方法が、前記通信装置で使用可能かを判断できない第2制御方法を含む第5の場合には、前記変更条件は満たされず、
前記通信装置は、さらに、
前記第5の場合に、前記第2制御方法を示す情報を管理サーバに送信する第3送信部と、
前記第2制御方法に関連する情報を含む応答を前記管理サーバから受信する第3受信部と、
を備える、通信装置。
【請求項10】
請求項1または2に記載の通信装置であって、さらに、
電子メールの送信要求であるメール送信要求と、電子メールの受信要求であるメール受信要求と、の一方または両方を前記第1サーバに送信するメール要求送信部を備え、
前記第1送信部は、前記メール送信要求の送信と、前記メール受信要求の送信と、の一方または両方のために、前記サーバ方法情報の要求を前記第1サーバに送信する、
通信装置。
【請求項11】
請求項1または2に記載の通信装置であって、
前記設定済制御方法は、ユーザの指示によって選択されるアクセス制御方法であり、前記候補制御方法は、前記通信装置の出荷前に予め決められたアクセス制御方法である、
通信装置。
【請求項12】
通信装置を制御するコンピュータのためのコンピュータプログラムであって、
通信装置は、前記通信装置によって使用可能なアクセス制御方法を示す方法情報を格納するように構成されている方法記憶領域であって、前記方法記憶領域は、前記通信装置によって使用されるように現在設定されているアクセス制御方法である設定済制御方法を示す情報と、前記設定済制御方法の候補である候補制御方法を示す情報と、を格納するように構成されている、前記方法記憶領域を備え、
前記コンピュータプログラムは、
1以上のサーバ制御方法を示す情報であるサーバ方法情報の要求を前記第1サーバに送信する第1送信機能であって、前記1以上のサーバ制御方法は、第1サーバによってサポートされるアクセス制御方法である、前記第1送信機能と、
前記サーバ方法情報を含む応答を前記第1サーバから受信する第1受信機能と、
前記サーバ方法情報によって示される前記1以上のサーバ制御方法が前記候補制御方法を含むことを含む変更条件が満たされる場合に、前記設定済制御方法を前記候補制御方法に変更することをユーザに促す第1出力情報を出力する第1出力機能と、
をコンピュータに実現させる、コンピュータプログラム。
【請求項13】
通信装置を制御する方法であって、
通信装置は、前記通信装置によって使用可能なアクセス制御方法を示す方法情報を格納するように構成されている方法記憶領域であって、前記方法記憶領域は、前記通信装置によって使用されるように現在設定されているアクセス制御方法である設定済制御方法を示す情報と、前記設定済制御方法の候補である候補制御方法を示す情報と、を格納するように構成されている、前記方法記憶領域を備え、
前記方法は、
1以上のサーバ制御方法を示す情報であるサーバ方法情報の要求を前記第1サーバに送信する第1送信工程であって、前記1以上のサーバ制御方法は、第1サーバによってサポートされるアクセス制御方法である、前記第1送信工程と、
前記サーバ方法情報を含む応答を前記第1サーバから受信する第1受信工程と、
前記サーバ方法情報によって示される前記1以上のサーバ制御方法が前記候補制御方法を含むことを含む変更条件が満たされる場合に、前記設定済制御方法を前記候補制御方法に変更することをユーザに促す第1出力情報を出力する第1出力工程と、
を備える、方法。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、通信装置を制御する技術に関する。
【背景技術】
【0002】
サーバは、通信装置(例えば、プリンタ、スキャナ、スマートフォン、パーソナルコンピュータ、ゲーム機など)と通信することによって、電子メールの送信、電子メールの受信、リモート印刷、ウェブページの提供、などの種々のサービスを提供する。サーバは、通信装置からのアクセスを種々の方法で制御する。特許文献1は、OAuth(Open Authorization)を使用する技術を提案している。認証済のユーザによる認可の下で、OAuthの処理によってトークンが発行される。発行されたトークンは、サーバへのアクセスに使用可能である。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
アクセス制御方法としては、種々の方法が使用され得る。例えば、サーバは、ユーザIDとパスワードとを使用する認証によって、アクセスを制御し得る。また、サーバは、認可を示すトークンを使用して、アクセスを制御し得る(例えば、OAuthのトークン)。ところが、サーバに適していないアクセス制御方法が通信装置によって使用される場合があった。
【0005】
本明細書は、サーバに適していないアクセス制御方法の通信装置による使用の可能性を低減する技術を開示する。
【課題を解決するための手段】
【0006】
本明細書に開示された技術は、以下の適用例として実現することが可能である。
【0007】
[適用例1]通信装置であって、通信装置によって使用可能なアクセス制御方法を示す方法情報を格納するように構成されている方法記憶領域であって、前記方法記憶領域は、前記通信装置によって使用されるように現在設定されているアクセス制御方法である設定済制御方法を示す情報と、前記設定済制御方法の候補である候補制御方法を示す情報と、を格納するように構成されている、前記方法記憶領域と、1以上のサーバ制御方法を示す情報であるサーバ方法情報の要求を前記第1サーバに送信する第1送信部であって、前記1以上のサーバ制御方法は、第1サーバによってサポートされるアクセス制御方法である、前記第1送信部と、前記サーバ方法情報を含む応答を前記第1サーバから受信する第1受信部と、前記サーバ方法情報によって示される前記1以上のサーバ制御方法が前記候補制御方法を含むことを含む変更条件が満たされる場合に、前記設定済制御方法を前記候補制御方法に変更することをユーザに促す第1出力情報を出力する第1出力部と、を備える、通信装置。
【0008】
この構成によれば、変更条件が満たされる場合に、設定済制御方法を候補制御方法に変更することをユーザに促す第1出力情報が出力されるので、第1サーバに適していないアクセス制御方法の通信装置による使用の可能性を低減できる。
【0009】
なお、本明細書に開示の技術は、種々の態様で実現することが可能であり、例えば、通信装置の制御方法および制御装置、通信方法および通信装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体(例えば、一時的ではない記録媒体)、等の形態で実現することができる。
【図面の簡単な説明】
【0010】
【
図1】一実施例としてのシステムを示す説明図である。
【
図2】通信処理の例である第1処理を示すシーケンス図である。
【
図4】通信処理の例である第2処理を示すシーケンス図である。
【
図5】通信処理の例である第3処理を示すシーケンス図である。
【
図6】通信処理の例である第4処理を示すシーケンス図である。
【
図7】通信処理の例である第5処理を示すシーケンス図である。
【
図8】応答情報の決定処理の例を示すフローチャートである。
【
図9】(A)は、サーバテーブルD4Aの例を示す図である。(B)、(C)は、端末テーブルD4Bの例を示す図である。
【
図10】通信処理の例である第6処理を示すシーケンス図である。
【
図11】通信処理の例である第7処理を示すシーケンス図である。
【
図12】通信処理の別の実施例を示すシーケンス図である。
【
図13】通信処理の別の実施例を示すシーケンス図である。
【
図14】通信処理の別の実施例を示すシーケンス図である。
【発明を実施するための形態】
【0011】
A.第1実施例:
A1.システムの構成:
図1は、一実施例としてのシステムを示す説明図である。このシステム1000は、複合機100と、サービスサーバ300A、300Bと、管理サーバ400と、を含む。これらの装置は、ネットワークITに接続されている。ネットワークITは、いわゆるインターネットを含んでよい。また、ネットワークITは、いわゆるローカルエリアネットワークを含んでよい。
【0012】
複合機100は、プロセッサ110と、記憶装置115と、表示部140と、操作部150と、印刷実行部160と、読取実行部170と、通信インタフェース180とを、有している。これらの要素は、バスを介して互いに接続されている。
【0013】
表示部140は、液晶ディスプレイ、有機ELディスプレイなどの、画像を表示するように構成された装置である。操作部150は、ボタン、レバー、表示部140上に重ねて配置されたタッチスクリーンなどの、ユーザによる操作を受け取るように構成された装置である。通信インタフェース180は、他の装置と通信するためのインタフェースである(例えば、有線LAN、IEEE802.11の無線LAN、のうちの1種以上のインタフェースを含む)。通信インタフェース180は、ネットワークITに接続されている。
【0014】
印刷実行部160は、画像を印刷する装置である。本実施例では、印刷実行部160は、いわゆるインクジェットプリンタである。印刷実行部160は、1種類以上の印刷材(例えば、シアンとマゼンタとイエローとブラックの4色のインク)を使用して、画像を印刷するように構成されている。なお、印刷実行部160は、他の方式で画像を印刷する装置であってよい(例えば、レーザープリンタ)。
【0015】
読取実行部170は、文書などの対象物を光学的に読み取る装置である。本実施例では、読取実行部170は、図示しない光学センサを備えている。読取実行部170は、対象物を光学的に読み取ることによって、読み取った対象物を表すスキャンデータを生成する。
【0016】
プロセッサ110は、データを処理するように構成された装置である。プロセッサ110は、例えば、Central Processing Unit(CPU)、または、System on a chip(SoC)である。記憶装置115は、揮発性記憶装置120と、不揮発性記憶装置130と、を含む。揮発性記憶装置120は、例えば、DRAMであり、不揮発性記憶装置130は、例えば、フラッシュメモリである。
【0017】
不揮発性記憶装置130は、第1記憶領域SA1と、第2記憶領域SA2と、を形成している。第1記憶領域SA1には、プログラムPG1を含む第1ファームウェアFWpのデータが、格納されている。プログラムPG1に従ってプロセッサ110によって実行される処理は、印刷実行部160に画像を印刷させる処理と、読取実行部170に文書を読み取らせる処理と、サービスサーバ300A、300Bと通信する処理と、管理サーバ400と通信する処理と、を含んでいる。第2記憶領域SA2には、第2ファームウェアFWdのデータと、設定済制御方法Mtのデータと、アクセス情報D1のデータとが、格納されている。第2ファームウェアFWdは、候補制御方法M1を含んでいる。ファームウェアFWp、FWdのデータは、複合機100の製造時に、不揮発性記憶装置130に格納される。プログラムPG1と情報Mt、M1、D1との詳細については、後述する。
【0018】
サーバ300A、300B、400のハードウェア構成について説明する。本実施例では、サーバ300A、300B、400は、類似するハードウェア構成を有している。図示を省略するが、サービスサーバ300Aと300Bとのハードウェア構成(構成310、315(320、330)、380を含む)は、同じである。以下、サービスサーバ300Aと管理サーバ400とを参照して、サーバのハードウェア構成を説明する。
【0019】
サーバ300A、400は、プロセッサ310、410と、記憶装置315、415と、通信インタフェース380、480とを、それぞれ有している。各サーバにおいて、これらの要素は、図示しないバスを介して互いに接続されている。通信インタフェース380、480は、他の装置と通信するためのインタフェースである。各通信インタフェース380、480は、例えば、有線LAN、IEEE802.11の無線LAN、のうちの1種以上のインタフェースを含む。各通信インタフェース380、480は、ネットワークITに接続されている。プロセッサ310、410は、データを処理するように構成された装置である。各プロセッサ310、410は、例えば、CPU、または、SoCである。記憶装置315、415は、揮発性記憶装置320、420と、不揮発性記憶装置330、430とを、それぞれ含む。揮発性記憶装置320、420は、例えば、DRAMであり、不揮発性記憶装置330、430は、例えば、フラッシュメモリである。
【0020】
サービスサーバ300A、300Bについて説明する。サービスサーバ300A、300Bは、複合機100を使用するサービスを提供するための処理を実行する。複合機100を使用するサービスは、消耗品(インク、用紙など)の残量をネットワークITを介して取得し、残量に応じて消耗品をユーザに配送する配送サービス、ネットワークITを介して複合機100に画像を印刷させるサービスなど、種々のサービスであってよい。本実施例では、サービスサーバ300A、300Bは、いわゆるメールサーバである。複合機100は、サービスサーバ300A、300Bを使用して、電子メールの送信と受信とを行う。電子メールは、種々の処理で使用されてよい。例えば、複合機100は、スキャンデータを含む電子メールを、サービスサーバ300Aまたは300Bを介してユーザのメールアドレスに送信する。また、複合機100は、印刷用の画像データを含む電子メールを、サービスサーバ300Aまたは300Bを介して受信する。以下、第1サービスサーバ300Aによって提供されるサービスを、第1サービスと呼び、第2サービスサーバ300Bによって提供されるサービスを、第2サービスと呼ぶ。
【0021】
第1サービスサーバ300Aの不揮発性記憶装置330は、プログラムPG3Aのデータを格納している。第1サービスサーバ300Aのプロセッサ310は、プログラムPG3Aを実行することによって、メールサービスを提供するための種々の処理を実行する。同様に、第2サービスサーバ300Bの不揮発性記憶装置330は、プログラムPG3Bのデータを格納している。第2サービスサーバ300Bのプロセッサ310は、プログラムPG3Bを実行することによって、メールサービスを提供するための種々の処理を実行する。
【0022】
サービスサーバ300A、300Bは、通信装置(例えば、複合機100)からのアクセスを、種々の方法で制御する。アクセス制御方法としては、例えば、PLAIN、CRAM-MD5、XOAUTH2が採用され得る。PLAINは、ユーザ名とパスワードとを使用する認証方法である。CRAM-MD5は、いわゆるチャレンジとレスポンスを使用する認証方法である。XOAUTH2は、アクセストークンによってアクセスを許可する方法である。
【0023】
複合機100のプログラムPG1は、サーバとの通信のための複数の処理モジュールMc1、Mc2を含んでいる。これらの処理モジュールMc1、Mc2は、互いに異なるアクセス制御方法に対応している。例えば、第1処理モジュールMc1は「PLAIN」に対応してよく、第2処理モジュールMc2は「XOAUTH2」に対応してよい。プログラムPG1は、さらに、他のアクセス制御方法の処理モジュールを含み得る。各処理モジュールは、対応する制御方法に基づくアクセス許可の要求をサーバに送信する機能を有している。また、使用可能な処理モジュールは、第1ファームウェアFWpの更新によって、更新可能である。例えば、第1ファームウェアFWpの更新によって、新たなアクセス制御方法に対応する新たな処理モジュールが、追加され得る。
【0024】
複合機100は、実装済の処理モジュールに対応付けられるアクセス制御方法を、使用可能である。候補制御方法M1は、推奨されるアクセス制御方法を示している。候補制御方法M1は、複合機100の製造時(すなわち、出荷前)に、予め決められている。候補制御方法M1は、使用可能なアクセス制御方法のうち、セキュリティレベルの高い制御方法に設定される。例えば、「PLAIN」よりもセキュリティレベルの高い制御方法が、採用される。第1ファームウェアFWpの更新によって、適切な候補制御方法M1は、変化し得る。この場合、第1ファームウェアFWpとともに、第2ファームウェアFWdも更新されることが好ましい。第2ファームウェアFWdに更新することによって、候補制御方法M1も更新可能である。
【0025】
なお、本実施例では、アクセス制御方法のセキュリティレベルとしては、予め決められたセキュリティレベルが採用される。このようなセキュリティレベルは、不正アクセスが困難であるほどセキュリティレベルが高くなるように、決定される。「PLAIN」と「CRAM-MD5」と「XOAUTH2」とに関しては、セキュリティレベルの高い順番としては、「XOAUTH2」、「CRAM-MD5」、「PLAIN」の順を採用可能である。なお、アクセス制御方法のセキュリティレベルとしては、ユーザ名とパスワードを使用する認証方法(PLAIN認証、または、ベーシック認証とも呼ばれる)と、他のアクセス制御方法と、の2つの段階で評価されてよい。通常は、他のアクセス制御方法のセキュリティレベルは、ベーシック認証のセキュリティレベルよりも、高い。候補制御方法M1としては、「PLAIN」とは異なる種々のアクセス制御方法を、採用可能である。
【0026】
設定済制御方法Mtは、複合機100によって使用されるように現在設定されているアクセス制御方法である。アクセス情報D1は、設定済制御方法Mtを使用するアクセスに使用される情報である(例えば、ユーザ名とパスワート、アクセストークン、など)。なお、設定済制御方法Mtと候補制御方法M1とは、対応するアクセス制御方法を示す種々の情報を表してよい(例えば、制御方法の名前、制御方法に割り当てられた識別番号、など)。
【0027】
複合機100は、サービスサーバ300A、300Bとの通信のために、サービスサーバ300A、300Bによってサポートされるアクセス制御方法のためのアクセス設定を行う(例えば、設定済制御方法Mtとアクセス情報D1との設定)。サービスサーバ300A、300Bは、セキュリティレベルの向上のために、サポートされるアクセス制御方法を更新し得る。例えば、XOAUTH2のサポートが開始され、PLAINのサポートが終了され得る。サポートされるアクセス制御方法が更新される場合、通信装置(例えば、複合機100)には、新たなアクセス制御方法のためのアクセス設定が要求され得る。
【0028】
管理サーバ400は、通信装置(例えば、複合機100)によるアクセス設定を支援する。管理サーバ400の不揮発性記憶装置430は、プログラムPG4と、サーバテーブルD4Aと、端末テーブルD4Bと、のそれぞれのデータを格納している。プログラムPG4は、通信装置を支援するための種々の処理の手順を示している。プログラムPG4とテーブルD4A、D4Bとの詳細については、後述する。
【0029】
A2.通信処理:
A2-1.第1処理:
図2は、通信処理の例である第1処理を示すシーケンス図である。第1処理では、ユーザは、複合機100に対して第1サービスサーバ300A(以下、単に第1サーバ300Aとも呼ぶ)との通信のためのアクセス設定を行う。複合機100は、アクセス設定に従って、第1サーバ300Aと通信する。ここで、候補制御方法M1は「XOAUTH2」であることとする。
【0030】
S120では、ユーザは、ユーザ指示を複合機100に入力する。入力されるユーザ指示は、サービスサーバとアクセス制御方法との指定を含んでいる。サービスサーバとして第1サーバ300Aが指定されることとする。アクセス制御方法は、複合機100によって使用可能なアクセス制御方法から選択される。ここでは、ユーザ指示によって指定されるアクセス制御方法は、候補制御方法M1と同じであることとする(ここでは、「XOAUTH2」)。
【0031】
なお、ユーザ指示を複合機100に入力する方法は、任意の方法であってよい。例えば、ユーザは、複合機100(
図1)の操作部150を操作することによって、指示を入力してよい。また、ユーザは、複合機100と通信可能な端末装置(例えば、スマートフォン)を操作することによって、端末装置を介して複合機100に指示を入力してよい。後述する他のステップにおいても、同様である。
【0032】
S130では、複合機100のプロセッサ110は、S120のユーザ指示に従って、制御方法Mtを設定する(Mt=XOAUTH2)。S140では、プロセッサ110は、設定済制御方法Mtのためのアクセス情報D1を取得し、取得したアクセス情報D1のデータをサービスサーバ(ここでは、第1サーバ300A)と関連付けて不揮発性記憶装置130に格納する。アクセス情報D1は、設定済制御方法Mtに適する種々の情報であってよい。また、アクセス情報D1の取得方法は、設定済制御方法Mtに適する種々の方法であってよい。例えば、アクセス情報D1は、アクセストークンとリフレッシュトークンとを含んでよい。プロセッサ110は、図示しない認可サーバと、通信することによって、認可サーバからこれらのトークンを取得する。認可サーバは、ユーザの図示しない端末装置からユーザの許可を取得し、この許可のもとでこれらのトークンを発行する。
【0033】
S210では、ユーザは、メール処理の指示を複合機100に入力する。この指示は、メールの送信指示、または、メールの受信指示であってよい。以下では、送信指示が入力される場合について説明する。
【0034】
S220では、複合機100のプロセッサ110は、第1サーバ300Aにケイパビリティの要求を送信する。ケイパビリティの要求は、第1サーバ300Aでサポートされるアクセス制御方法を示す情報の要求の例である。ケイパビリティの要求は、クライアントとサーバとの間のメール処理のための通信処理の一部であってよい。
【0035】
S230では、第1サーバ300Aのプロセッサ310は、ケイパビリティ情報のデータを複合機100に送信する。ケイパビリティ情報は、第1サーバ300Aによってサポートされるアクセス制御方法を表す情報を含んでいる(サーバ方法情報MS1と呼ぶ)。以下、サーバ方法情報MS1が、「XOAUTH2」と「PLAIN」とを含むこととする。
【0036】
S240では、複合機100のプロセッサ110は、ケイパビリティ情報を解析することによって、サーバ方法情報MS1を取得する。
【0037】
S250では、プロセッサ110は、処理の切り替えのための条件判断を行う(処理条件判断と呼ぶ)。
図3は、条件判断の例を示す表である。本実施例では、条件判断によって、使用処理条件CUと、変更処理条件CXと、問合処理条件CQと、のいずれかが満たされる。プロセッサ110は、満たされる処理条件に対応付けられる処理を実行する。後述するように、使用処理条件CUには、現行の設定済制御方法Mtを使用する処理が、対応付けられる。変更処理条件CXには、設定済制御方法Mtを候補制御方法M1に変更することをユーザに促す処理が、対応付けられる。問合処理条件CQには、管理サーバ400に問い合わせを行う処理が、対応付けられる。処理条件CU、CX、CQは、以下の状態条件C1、C2、C3の判断結果を使用して、判断される。
(第1状態条件C1)サーバ方法情報MS1が、設定済制御方法Mtを含む。
(第2状態条件C2)設定済制御方法Mtが、候補制御方法M1と同じである。
(第3状態条件C3)サーバ方法情報MS1が、候補制御方法M1を含む。
【0038】
図3の表は、状態条件C1、C2、C3の判断結果の組み合わせと、処理条件CU、CX、CQの判断結果の組み合わせと、の対応関係を示している。番号No.は、各対応関係に対応付けられる処理(後述)の番号を示している。表中の「Y(Yesの略)」は、条件が満たされることを示し、「N(Noの略)」は、条件が満たされないことを示している。表に示されるように、処理条件CU、CX、CQのうちの1つの処理条件が満たされる。満たされる処理条件に対応付けられる処理が、実行される。満たされない処理条件に対応付けられる処理は、実行されない。
【0039】
No.1とNo.2とに示されるように、使用処理条件CUは、「C1:Yes、C2:Yes(No.1)」の場合と、「C1:Yes、C3:No(No.2)」の場合とに、満たされる。「C1:Yes、C2:Yes(No.1)」の場合には、結果的に、第3状態条件C3は、満たされる。「C1:Yes、C3:No(No.2)」の場合には、結果的に、第2状態条件C2は、満たされない。
【0040】
No.3とNo.4とに示されるように、変更処理条件CXは、「C1:Yes、C2:No、C3:Yes(No.3)」の場合と、「C1:No、C3:Yes(No.4)」の場合とに、満たされる。「C1:No、C3:Yes(No.4)」の場合、結果的に、第2状態条件C2は、満たされない。
【0041】
No.5からNo.7に示されるように、問合処理条件CQは、「C1:No、C3:No」の場合に、第2状態条件C2の判断結果に拘わらずに、満たされる。
【0042】
図2の第1処理は、
図3のNo.1に対応している。第1処理では、2つの条件C1、C2が満たされる(すなわち、使用処理条件CUが満たされる)。この場合、S260で、プロセッサ110は、設定済制御方法Mtに基づくアクセス許可の要求を、第1サーバ300Aに送信する。この要求は、アクセス情報D1に基づいて決定される制御情報を含んでいる。制御情報は、第1サーバ300Aによるアクセス制御に使用される情報である。制御情報は、設定済制御方法Mtに適する種々の情報であってよい。制御情報は、例えば、アクセス情報D1に含まれるアクセストークンを含んでよい。なお、アクセストークンの有効期限が切れている場合、プロセッサ110は、アクセス情報D1に含まれるリフレッシュトークンを使用して、認可サーバから新たなアクセストークンとリフレッシュトークンとを取得してよい。プロセッサ110は、取得した新たなアクセストークンを、新たなアクセス情報D1のデータとして、不揮発性記憶装置130に格納してよい。
【0043】
S270では、第1サーバ300Aのプロセッサ310は、アクセス要求に含まれる制御情報を使用して、アクセスを許可するか否かを判断する。ここでは、アクセスが許可されることとする。プロセッサ310は、アクセスの許可通知を、複合機100に送信する。
【0044】
S280では、複合機100のプロセッサ110と第1サーバ300Aのプロセッサ310とは、メール処理のための通信を行う。複合機100のプロセッサ110は、S210の指示に応じて、電子メールの送信要求であるメール送信要求、または、電子メールの受信要求であるメール受信要求を、第1サーバ300Aに送信する。メール送信要求は、メールデータを含む。第1サーバ300Aのプロセッサ310は、受信したメールデータを、その宛先に送信する。また、第1サーバ300Aのプロセッサ310は、メール受信要求に応じて、メールデータを複合機100に送信する。
【0045】
A2-2.第2処理:
図4は、通信処理の例である第2処理を示すシーケンス図である。第2処理は、
図3のNo.2に対応している。ここで、候補制御方法M1は「XOAUTH2」であることとする。
【0046】
S120b、S130b、S140bは、
図2のS120、S130、S140に、それぞれ対応している。ここで、S120bでは、ユーザ指示は、「PLAIN」を指定していることとする。S120bでは、ユーザは、ユーザ指示を複合機100に入力する。S130bでは、複合機100のプロセッサ110は、制御方法Mtを「PLAIN」に設定する。S140bでは、プロセッサ110は、設定済制御方法Mtのためのアクセス情報D1を取得し、取得したアクセス情報D1のデータをサービスサーバ(ここでは、第1サーバ300A)と関連付けて不揮発性記憶装置130に格納する。アクセス情報D1は、例えば、ユーザ名とパスワードを含んでいる。ユーザ名とパスワードとは、ユーザ指示によって指定されてよい。以下、S120b、S130b、S140bの全体を、S110bと呼ぶ。
【0047】
S210、S220、S230、S240の方法は、
図2のS210、S220、S230、S240の方法と、それぞれ同様である。なお、第2処理では、S230で受信されるサーバ方法情報MS1は、「XOAUTH2」を含まずに、「PLAIN」を含むこととする。
【0048】
S250bでは、プロセッサ110は、処理条件判断を行う。第2処理では、プロセッサ110は、C1:Yes、C3:Noと判断する。すなわち、使用処理条件CUが満たされる。
【0049】
使用処理条件CUが満たされる場合、プロセッサ110は、S260b、S270b、S280bを実行する。S260b、S270b、S280bは、
図2のS260、S270、S280に、それぞれ対応している。ここで、S260bで送信されるアクセス制御方法としては、「PLAIN」が使用される。S260bで、プロセッサ110は、設定済制御方法Mtに基づくアクセス許可の要求を、第1サーバ300Aに送信する。この要求は、設定済制御方法Mtに適する制御情報を含んでいる(例えば、アクセス情報D1に基づくユーザ名とパスワード)。S270bでは、第1サーバ300Aのプロセッサ310は、アクセスの許可通知を複合機100に送信する(制御情報に基づいてアクセスが許可されることとする)。S280bでは、複合機100のプロセッサ110と第1サーバ300Aのプロセッサ310とは、メール処理のための通信を行う。
【0050】
A2-3.第3処理:
図5は、通信処理の例である第3処理を示すシーケンス図である。第3処理は、
図3のNo.3に対応している。No.3の条件(C1:Yes、C2:No、C3:Yes)は、例えば、第1サーバ300Aが、候補制御方法M1のサポートを新たに開始する場合に、満たされ得る。ここで、第3処理において複合機100に設定されている候補制御方法M1は「XOAUTH2」であることとする。
【0051】
S110bは、
図4のS110bと同じである。「PLAIN」のためのアクセス設定が行われる。第1サーバ300Aは、「PLAIN」をサポートしていることとする。
【0052】
S210、S220、S230、S240の方法は、
図2のS210、S220、S230、S240の方法と、それぞれ同様である。なお、第3処理では、S230で受信されるサーバ方法情報MS1は、「XOAUTH2」と「PLAIN」の両方を含むこととする。
【0053】
S250cでは、プロセッサ110は、処理条件判断を行う。第3処理では、C1:Yes、C2:No、C3:Yesである。すなわち、変更処理条件CXが満たされる。
【0054】
変更処理条件CXが満たされる場合、S310cで、プロセッサ110は、第1出力情報O11を出力する。第1出力情報O11は、設定済制御方法Mtを候補制御方法M1に変更することをユーザに促す種々の情報であってよい。例えば、第1出力情報O11は、候補制御方法M1の推奨を表す推奨情報O1aを含んでよい。推奨情報O1aは、候補制御方法M1を推奨するメッセージを含んでよい。第1出力情報O11の出力方法は、種々の方法であってよい。例えば、プロセッサ110は、第1出力情報O11のデータを表示部140に出力することによって、表示部140に第1出力情報O11を表示させてよい。また、複合機100には、アンプとスピーカなど、音を生成する音装置が設けられてよい。プロセッサ110は、第1出力情報O11のデータを音装置に出力することによって、第1出力情報O11を表す音(例えば、音声)を音装置に生成させてよい。
【0055】
ユーザは、候補制御方法M1が推奨されることを、第1出力情報O11によって知ることができる。従って、ユーザは、設定済制御方法Mtを候補制御方法M1に変更するためのアクセス設定を、速やかに行うことができる。このように、複合機100とサービスサーバとの通信エラーが発生する可能性は、低減する。
【0056】
A2-4.第4処理:
図6は、通信処理の例である第4処理を示すシーケンス図である。第4処理は、
図3のNo.4に対応している。No.4の条件(C1:No、C3:Yes)は、例えば、第1サーバ300Aが、設定済制御方法Mtのサポートを廃止する場合に、満たされ得る。ここで、第4処理において複合機100に設定されている候補制御方法M1は「XOAUTH2」であることとする。
【0057】
S110bは、
図4のS110bと同じである。「PLAIN」のためのアクセス設定が行われる。第1サーバ300Aは、「PLAIN」をサポートしていることとする。
【0058】
S210、S220、S230、S240の方法は、
図2のS210、S220、S230、S240の方法と、それぞれ同様である。なお、第4処理では、サーバ方法情報MS1は、「PLAIN」を含まずに、「XOAUTH2」を含むこととする。
【0059】
S250dでは、プロセッサ110は、処理条件判断を行う。第4処理では、C1:No、C2:No、C3:Yesである。すなわち、変更処理条件CXが満たされる。
【0060】
変更処理条件CXが満たされる場合、プロセッサ110は、S310dを実行する。S310dでは、
図5のS310cと同様に、プロセッサ110は、第1出力情報O12を出力する。本実施例では、第4処理で出力される第1出力情報O12は、推奨情報O1aに加えて、設定済制御方法Mtの廃止を表す廃止情報O1bを含んでいる。プロセッサ110は、推奨情報O1aと廃止情報O1bとを含む第1出力情報O12を、出力する。出力方法は、S310c(
図5)での出力方法と同じであってよい。ユーザは、設定済制御方法Mtが使用できないことと、候補制御方法M1が推奨されることを、第1出力情報O12によって知ることができる。従って、ユーザは、設定済制御方法Mtを候補制御方法M1に変更するためのアクセス設定を、速やかに行うことができる。このように、複合機100とサービスサーバとの通信エラーが発生する可能性は、低減する。
【0061】
A2-5.第5処理:
図7は、通信処理の例である第5処理を示すシーケンス図である。第5処理は、
図3のNo.5からNo.7に対応している。No.5からNo.7の条件(C1:No、C3:No)は、例えば、第1サーバ300Aが、設定済制御方法Mtのサポートを廃止する場合に、満たされ得る。ここで、第5処理において複合機100に設定されている候補制御方法M1は「CRAM-MD5」であることとする。
【0062】
S110bは、
図4のS110bと同じである。「PLAIN」のためのアクセス設定が行われる。第1サーバ300Aは、「PLAIN」をサポートしていることとする。
【0063】
S210、S220、S230、S240の方法は、
図2のS210、S220、S230、S240の方法と、それぞれ同様である。なお、第5処理では、サーバ方法情報MS1は、「PLAIN」と「CRAM-MD5」とを含まずに、「XOAUTH2」を含むこととする。
【0064】
S250eでは、プロセッサ110は、処理条件判断を行う。第5処理では、C1:No、C3:Noである。すなわち、問合処理条件CQが満たされる。
【0065】
問合処理条件CQが満たされる場合、S410で、プロセッサ110は、複合機100に設定されるべきアクセス制御方法に関連する問い合わせを、管理サーバ400に送信する。この問い合わせは、S230で取得したケイパビリティ情報と、第1サーバ300Aのネットワーク上の位置情報(例えば、IPアドレス、ドメインネームなど)と、複合機100のモデル情報(本実施例では、モデル名とファームウェアFWp、FWdのバージョンとの組み合わせ)と、を表すデータを含んでいる。
【0066】
S415では、管理サーバ400のプロセッサ410は、問い合わせに応じて、応答のための応答情報を決定する。
図8は、応答情報の決定処理の例を示すフローチャートである。S510では、プロセッサ410は、複合機100からの問い合わせから、ケイパビリティ情報を取得する。S520では、プロセッサ410は、問い合わせから、サーバの位置情報を取得する。S530では、プロセッサ410は、問い合わせから、モデル情報を取得する。
【0067】
S540では、プロセッサ410は、サーバの位置情報(例えば、サーバの論理的なアドレス)とケイパビリティ情報とサーバテーブルD4A(
図1)とを使用して、推奨制御方法を検索する。
【0068】
図9(A)は、サーバテーブルD4Aの例を示す図である。サーバテーブルD4Aは、サーバの位置情報ADと、サービス名SNと、推奨されるアクセス制御方法MA(以下、推奨サーバ方法MAとも呼ぶ)と、の対応関係を表している。このような対応関係は、管理サーバ400の管理者によって、予め設定される。管理者は、種々のサービスサーバの情報を収集し、サーバテーブルD4Aに登録する。推奨サーバ方法MAとしては、サーバによってサポートされているアクセス制御方法のうち、セキュリティレベルの高いものが採用される。
【0069】
S540(
図8)では、プロセッサ410は、サーバの位置情報に対応付けられる推奨サーバ方法MAを、サーバテーブルD4Aから取得する。プロセッサ410は、推奨サーバ方法MAと、ケイパビリティ情報に含まれるサーバ方法情報MS1と、の両方に含まれるアクセス制御方法を、推奨制御方法として採用する。ここで、第1サーバ300Aの位置情報ADが第1位置情報AD1であり、第2サービスサーバ300B(第2サーバ300Bとも呼ぶ)の位置情報ADが第2位置情報AD2であることとする。第1サーバ300Aの第1推奨サーバ方法MA1は、「XOAUTH2」である。また、サーバ方法情報MS1(
図7:S230)は、「XOAUTH2」を含んでいる。これにより、プロセッサ410は、「XOAUTH2」を、推奨制御方法として採用する。
【0070】
通常は、サーバテーブルD4Aの推奨サーバ方法MAは、ケイパビリティ情報のサーバ方法情報に含まれる。サービスサーバによってサポートされるアクセス制御方法は、変更され得る。この変更がサーバテーブルD4Aに反映されていない場合、推奨サーバ方法MAに含まれるアクセス制御方法が、サーバ方法情報に含まれない可能性がある。本実施例では、推奨サーバ方法MAとサーバ方法情報とに共通なアクセス制御方法が、推奨制御方法として採用される。従って、推奨制御方法がサーバによってサポートされていない可能性は、低減する。
【0071】
S550(
図8)では、プロセッサ410は、モデル情報に対応付けられるアクセス制御方法が、推奨制御方法を含むか否かを判断する。この判断では、端末テーブルD4Bが参照される。
図9(B)は、端末テーブルD4Bの例を示す図である。端末テーブルD4Bは、モデル情報MIと、使用可能なアクセス制御方法MB(以下、端末方法MBとも呼ぶ)と、の対応関係を表している。
【0072】
モデル情報MIは、モデル名MDと、ファームウェアバージョンFWvと、を表している。本実施例では、ファームウェアバージョンFWvは、ファームウェアFWp、FWd(
図1)のセットのバージョンを表している。同じモデル名MDの複数のファームウェアバージョンFWvの間では、端末方法MBは異なり得る。
【0073】
端末テーブルD4Bのこのような対応関係は、管理サーバ400の管理者によって、予め設定される。管理者は、種々の通信装置の情報を収集し、端末テーブルD4Bに登録する。
【0074】
ここで、複合機100のモデル情報MIが、第1モデル名MDaを含むこととする。プロセッサ410は、端末テーブルD4Bから、第1モデル名MDaを含む対応関係を、検索する。そして、第1モデル情報MIa1が見つかることとする。第1モデル情報MIa1に対応付けられる第1端末方法MBa1は、推奨制御方法(ここでは、XOAUTH2)を含まずに、「PLAIN」と「CRAM-MD5」を含んでいる。従って、S550の判断結果は、Noである。
【0075】
S550の判断結果がNoである場合、プロセッサ410は、S560で、第1種応答情報を採用する。第1種応答情報は、端末方法MBをサポートする他のサービスへの変更を表す情報である。本実施例では、プロセッサ410は、サーバテーブルD4A(
図9(A))を参照し、複合機100の第1端末方法MBa1に含まれるアクセス制御方法を含む推奨サーバ方法MAを検索する。本実施例では、第2推奨サーバ方法MA2が、第1端末方法MBa1に含まれる「CRAM-MD5」を含んでいる。従って、プロセッサ410は、第2推奨サーバ方法MA2に対応付けられるサービスへの変更を表す第1種応答情報を生成する。第1種応答情報は、第2推奨サーバ方法MA2に対応付けられる第2位置情報AD2と第2サービス名SN2との一方、または、両方を含んでよい。
【0076】
S560の後、プロセッサ410は、
図8の処理を終了する。S550の判断結果がYesである場合については、後述する。
【0077】
図8の処理、すなわち、
図7のS415の後、S420で、プロセッサ410は、応答を複合機100に送信する。第5処理では、この応答は、第1種応答情報を含んでいる。
【0078】
S430eでは、複合機100のプロセッサ110は、管理サーバ400からの応答を使用して、第2出力情報O21を出力する。第2出力情報O21は、応答に含まれる応答情報を表している。第5処理で出力される第2出力情報O21は、サービス変更情報O2aを含んでいる。サービス変更情報O2aは、S420で取得される第2位置情報AD2または第2サービス名SN2によって表される第2サービスへのサービス変更を案内する。サービス変更情報O2aは、第2位置情報AD2と第2サービス名SN2との一方、または、両方を含んでよい。出力方法は、S310c(
図5)での出力方法と同じであってよい。ユーザは、第2サービスへの変更が推奨されることを、第2出力情報O21によって知ることができる。従って、ユーザは、サービスの変更を、速やかに行うことができる。このように、複合機100とサービスサーバとの通信エラーが解消されない可能性は、低減する。
【0079】
A2-6.第6処理:
図10は、通信処理の例である第6処理を示すシーケンス図である。第6処理は、
図3のNo.5からNo.7に対応している。第6処理は、第5処理(
図7)と同様に、サーバ方法情報MS1が、設定済制御方法Mtと候補制御方法M1との両方を含まない場合の処理である(すなわち、C1:No、C3:No)。ここで、複合機100のファームウェアFWp、FWdを更新することによって、複合機100は、第1サーバ300Aによってサポートされるアクセス制御方法を使用できることとする。ここで、候補制御方法M1は「CRAM-MD5」であることとする。
【0080】
S110b、S210、S220、S230、S240、S250eの方法は、
図7のS110b、S210、S220、S230、S240、S250eの方法と、それぞれ同様である。第6処理では、サーバ方法情報MS1は、「PLAIN」と「CRAM-MD5」とを含まずに、「XOAUTH2」を含むこととする。また、S250eでは、問合処理条件CQが満たされる。
【0081】
S410、S415、S420の方法は、
図7のS410、S415、S420の方法と、それぞれ同様である。ここで、S415で決定される応答情報が、
図7の第1種応答情報とは異なっている。
【0082】
S415では、プロセッサ410は、
図8の処理を実行する。S510-S540の方法は、
図7の第5処理でのS510-S540の方法と、それぞれ同じである。プロセッサ410は、「XOAUTH2」を、推奨制御方法として採用する。
【0083】
S550では、プロセッサ410は、端末テーブルD4Bを参照する。
図9(C)は、端末テーブルD4Bの例を示す図である。
図9(B)の端末テーブルD4Bとは異なり、複合機100の第1モデル名MDaに対応する第2モデル情報MIa2が追加されている。第1モデル情報MIa1との差違は、ファームウェアバージョンFWvがFWva1からFWva2へ更新されている点と、端末方法MBに「XOAUTH2」が追加されている点である。第6処理では、
図9(C)の端末テーブルD4Bが参照されることとする。
【0084】
プロセッサ410は、端末テーブルD4Bから、第1モデル名MDaを含む対応関係を、検索する。ここでは、第1モデル情報MIa1と第2モデル情報MIa2とが見つかることとする。プロセッサ410は、見つかったモデル情報MIに対応付けられる端末方法MBから、推奨制御方法を検索する。第2モデル情報MIa21に対応付けられる第2端末方法MBa2は、推奨制御方法(XOAUTH2)を含んでいる。従って、S550の判断結果は、Yesである。
【0085】
S550の判断結果がYesである場合、S570で、プロセッサ410は、ファームウェアの更新を要するか否かを判断する。複合機100のモデル名MDとファームウェアバージョンFWvとに対応付けられる端末方法MBが、推奨制御方法を含まない場合、プロセッサ110は、ファームウェアの更新を要すると判断する。ここで、複合機100のモデル名MDとファームウェアバージョンFWvとが、第1モデル情報MIa1に対応付けられることとする。この場合、第1端末方法MBa1は、推奨制御方法(XOAUTH2)を含まないので、プロセッサ110は、ファームウェアの更新を要すると判断する(S570:Yes)。
【0086】
S570の判断結果がYesである場合、S580で、プロセッサ410は、第2種応答情報を採用する。第2種応答情報は、ファームウェアの更新を表している。第2種応答情報は、推奨制御方法を使用可能な新しいファームウェアのバージョン(ここでは、FWva2(
図9(C))を含んでよい。
【0087】
S580の後、プロセッサ410は、
図8の処理を終了する。S570の判断結果がNoである場合については、後述する。
【0088】
図8の処理、すなわち、
図10のS415の後、S420で、プロセッサ410は、応答を複合機100に送信する。第6処理では、この応答は、第2種応答情報を含んでいる。
【0089】
S430fでは、複合機100のプロセッサ110は、管理サーバ400からの応答を使用して、第2出力情報O22を出力する。第6処理で出力される第2出力情報O22は、更新情報O2bを含んでいる。更新情報O2bは、複合機100のファームウェアの更新を案内する。更新情報O2bは、S420で取得される新しいファームウェアのバージョン(ここでは、FWva2(
図9(C))を含んでよい。出力方法は、S310c(
図5)での出力方法と同じであってよい。ユーザは、ファームウェアの更新が推奨されることを、第2出力情報O22によって知ることができる。従って、ユーザは、ファームウェアの更新を、速やかに行うことができる。このように、複合機100とサービスサーバとの通信エラーが発生する可能性は、低減する。
【0090】
A2-7.第7処理:
図11は、通信処理の例である第7処理を示すシーケンス図である。第7処理は、
図3のNo.5からNo.7に対応している。第7処理は、第6処理(
図10)と同様に、サーバ方法情報MS1が、設定済制御方法Mtと候補制御方法M1との両方を含まない場合の処理である(すなわち、C1:No、C3:No)。ここで、候補制御方法M1は「XOAUTH2」であることとする。また、複合機100は、設定済制御方法Mtと候補制御方法M1とのいずれとも異なるアクセス制御方法(第1制御方法Maと呼ぶ)を使用できることとする。第1制御方法Maが「CRAM-MD5」であることとする。
【0091】
S110b、S210、S220、S230、S240、S250eの方法は、
図10のS110b、S210、S220、S230、S240、S250eの方法と、それぞれ同様である。第7処理では、サーバ方法情報MS1は、「PLAIN」と「XOAUTH2」とを含まずに、「CRAM-MD5」を含むこととする。また、S250eでは、問合処理条件CQが満たされる。
【0092】
S410、S415、S420の方法は、
図10のS410、S415、S420の方法と、それぞれ同様である。ここで、S415で決定される応答情報が、
図10の第2種応答情報とは異なっている。
【0093】
S415では、プロセッサ410は、
図8の処理を実行する。S510-S550の方法は、
図10の第6処理でのS510-S550の方法と、それぞれ同様である。ここで、サーバテーブルD4Aの図示を省略するが、第1サーバ300Aの推奨サーバ方法MAが、「CRAM-MD5」を示すこととする。この場合、プロセッサ410は、「CRAM-MD5」を、推奨制御方法として採用する。また、端末テーブルD4Bの図示を省略するが、複合機100のモデル情報MIに対応付けられる端末方法MBが、推奨制御方法(ここでは、第1制御方法MaであるCRAM-MD5)を含むこととする。この場合、S550の判断結果は、Yesであり、S570の判断結果は、Noである。そして、プロセッサ410は、S590へ移行する。
【0094】
S590では、プロセッサ410は、第3種応答情報を採用する。第3種応答情報は、モデル情報MIに対応付けられる推奨制御方法(ここでは、第1制御方法MaであるCRAM-MD5)への変更を表している。第3種応答情報は、推奨制御方法を表す情報を含んでいる。
【0095】
S590の後、プロセッサ410は、
図8の処理、すなわち、
図11のS415を終了する。S420で、プロセッサ410は、応答を複合機100に送信する。第7処理では、この応答は、第3種応答情報を含んでいる。
【0096】
S430gでは、複合機100のプロセッサ110は、管理サーバ400からの応答を使用して、第2出力情報O23を出力する。第7処理で出力される第2出力情報O23は、設定済制御方法Mtを推奨制御方法(ここでは、第1制御方法Ma)に変更することをユーザに促す種々の情報であってよい。例えば、第2出力情報O23は、S420で取得される推奨制御方法を表す推奨情報O2caを含んでよい。推奨情報O2caは、推奨制御方法を推奨するメッセージを含んでよい。また、第2出力情報O23は、設定済制御方法Mtの廃止を表す廃止情報O2cbを含んでよい。出力方法は、S310c(
図5)での出力方法と同じであってよい。ユーザは、推奨制御方法が推奨されることを、第2出力情報O23によって知ることができる。従って、ユーザは、設定済制御方法Mtを推奨制御方法に変更するためのアクセス設定を、速やかに行うことができる。このように、複合機100とサービスサーバとの通信エラーが発生する可能性は、低減する。
【0097】
以上のように、本実施例では、複合機100(
図1)は、第2記憶領域SA2を備えている。第2記憶領域SA2は、設定済制御方法Mtと候補制御方法M1とを格納するように構成されている。設定済制御方法Mtは、複合機100によって使用されるように現在設定されているアクセス制御方法を示している。候補制御方法M1は、設定済制御方法Mtの候補を示している。設定済制御方法Mtと候補制御方法M1とは、複合機100によって使用可能なアクセス制御方法を示す方法情報の例である。第2記憶領域SA2は、方法情報を格納するように構成されている方法記憶領域の例である。
【0098】
複合機100のプロセッサ110は、以下の処理を実行する。S220(
図5等)では、プロセッサ110は、サーバ方法情報MS1の要求を、第1サーバ300Aに送信する。サーバ方法情報MS1は、1以上のサーバ制御方法を示す情報である。サーバ制御方法は、第1サーバ300Aによってサポートされるアクセス制御方法である。S230(
図5等)では、プロセッサ110は、サーバ方法情報MS1を含む応答を第1サーバ300Aから受信する。
図5、
図6に示すように、変更処理条件CXが満たされる場合(S250c、S250d)、S310c、S310dで、プロセッサ110は、設定済制御方法Mtを候補制御方法M1に変更することをユーザに促す第1出力情報O11、O12を出力する。
図3のNo.3とNo.4とに示すように、変更処理条件CXは、サーバ方法情報MS1によって示される1以上のサーバ制御方法が候補制御方法M1を含むこと(C3:Yes)を含む条件である。
【0099】
このように、変更処理条件CXが満たされる場合に、設定済制御方法Mtを候補制御方法M1に変更することをユーザに促す第1出力情報O11、O12が出力される。従って、第1サーバ300Aに適していないアクセス制御方法(例えば、変更前の設定済制御方法Mt)の複合機100による使用の可能性を低減できる。
【0100】
また、本実施例では、
図3のNo.2に示すように、サーバ方法情報MS1が、設定済制御方法Mtを含み、候補制御方法M1を含まない場合(第1の場合Caと呼ぶ)、変更処理条件CXは、満たされない。
図4に示すように、S260b-S280bでは、プロセッサ110は、第1サーバ300Aと通信する。第1の場合Caには、プロセッサ110は、第1出力情報(例えば、第1出力情報O11、O12)を出力せずに、設定済制御方法Mtに従って第1サーバ300Aと通信する。第1出力情報の不適切な出力は、ユーザによる複合機100の管理の負担を増大させ得る。本実施例では、第1の場合Caに、第1出力情報が出力されずに、複合機100が第1サーバ300Aと通信するので、ユーザの管理負担の増大の可能性は、低減する。
【0101】
また、本実施例では、
図3のNo.4に示すように、サーバ方法情報MS1が、設定済制御方法Mtを含まず、候補制御方法M1を含む場合(第2の場合Cbと呼ぶ)、変更処理条件CXは満たされる。
図6に示すように、第2の場合Cbに、S310dで、プロセッサ110は、第1出力情報O12を出力する。従って、複合機100と第1サーバ300Aとの通信エラーが解消されない可能性は、低減する。
【0102】
また、本実施例では、複合機100によって使用可能なアクセス制御方法は、「PLAIN」と他のアクセス制御方法(例えば、「XOAUTH2」)とを含んでいる。候補制御方法M1は、複合機100によって使用可能なアクセス制御方法のうち、「PLAIN」よりもセキュアな制御方法を示している。設定済制御方法Mtが「PLAIN」である場合、候補制御方法M1のセキュリティレベルは、設定済制御方法Mtのセキュリティレベルよりも高い。
図3のNo.3に示すように、サーバ方法情報MS1が設定済制御方法Mtと候補制御方法M1とを含み、候補制御方法M1が設定済制御方法Mtと異なる場合であって、さらに、設定済制御方法Mtが「PLAIN」である場合、候補制御方法M1のセキュリティレベルは設定済制御方法Mtのセキュリティレベルよりも高い。このような場合には、変更処理条件CXは満たされる。そして、
図5に示すように、S310cで、プロセッサ110は、第1出力情報O11を出力する。このように、プロセッサ110は、設定済制御方法Mtから、よりセキュリティレベルの高い候補制御方法M1への変更を、促すことができる。
【0103】
また、本実施例では、
図3のNo.5からNo.7に示すように、サーバ方法情報MS1が、設定済制御方法Mtと候補制御方法M1とのいずれも含まない場合(第4の場合Cdと呼ぶ)には、変更処理条件CXは、満たされない。
図7、
図10、
図11に示すように、第4の場合Cdには、S410で、プロセッサ110は、複合機100に設定されるべきアクセス制御方法に関連する問い合わせを、管理サーバ400に送信する。S420で、プロセッサ110は、応答を管理サーバ400から受信する。S430e、S430f、S430gでは、プロセッサ110は、第1出力情報O11、O12とは異なるとともに管理サーバ400からの応答に含まれる情報を表す第2出力情報O21、O22、O23を出力する。このように、第4の場合Cdには、プロセッサ110は、管理サーバ400からの応答に含まれる情報を表す第2出力情報O21、O22、O23を出力することによって、複合機100とサービスサーバとの通信エラーが発生する可能性を低減できる。
【0104】
また、本実施例では、第1記憶領域SA1は、第1ファームウェアFWpを格納するように、構成されている。第1ファームウェアFWpは、複数の処理モジュール(例えば、処理モジュールMc1、Mc2)を含んでいる。複数の処理モジュールのうちの1つは、設定済制御方法Mtに対応している。設定済制御方法Mtに対応する処理モジュールは、設定済制御方法Mtに基づくアクセス許可の要求(例えば、S260、S260b(
図2、
図4))を行う機能を有している。
図10の第6処理では、管理サーバ400からの応答(S420)は、ファームウェアの更新を表す情報(ここでは、第2種応答情報)を含んでいる。この場合、S430fで、プロセッサ110は、ファームウェアの更新を促す情報(ここでは、更新情報O2b)を含む第2出力情報O22を出力する。従って、ユーザは、ファームウェアの更新が推奨されることを、速やかに知ることができる。そして、ユーザは、ファームウェアの更新を、速やかに行うことができる。また、複合機100とサービスサーバとの通信エラーが発生する可能性は、低減する。なお、プログラムPG1の全体に代えて、プログラムPG1のうちの複数の処理モジュール(例えば、処理モジュールMc1、Mc2)を含む一部分を含むファームウェアが、更新されてよい。
【0105】
また、本実施例では、
図7の第5処理では、管理サーバからの応答(S420)は、第1サーバ300Aによって提供される第1サービスに代えて、第1サーバ300Aとは異なる第2サーバ300Bによって提供される第2サービスの使用を表す情報(ここでは、第1種応答情報)を含んでいる。この場合、S430eで、プロセッサ110は、第1サービスに代えて第2サービスの使用を促す情報(ここでは、サービス変更情報O2a)を含む第2出力情報O21を出力する。従って、ユーザは、第1サービスから第2サービスへの変更が推奨されることを知ることができる。
【0106】
また、本実施例では、
図11の第7処理では、管理サーバからの応答(S420)は、複合機100によって使用可能なアクセス制御方法であって候補制御方法M1とは異なる第1制御方法Maへの設定済制御方法Mtの変更を表す情報(ここでは、第3種応答情報)を含んでいる。この場合、S430gで、プロセッサ110は、第1制御方法Maへの設定済制御方法Mtの変更を促す情報(ここでは、推奨情報O2ca)を含む第2出力情報O23を出力する。従って、ユーザは、適切なアクセス制御方法が第1制御方法Maであることを、速やかに知ることができる。
【0107】
また、本実施例では、
図2、
図4に示すように、S280、S280bでプロセッサ110によって第1サーバ300Aに送信される要求は、電子メールの送信要求であるメール送信要求と、電子メールの受信要求であるメール受信要求と、のいずれであってもよい。S220では、プロセッサ110は、メール送信要求の送信、または、メール受信要求の送信のために、サーバ方法情報MS1の要求を第1サーバ300Aに送信する。このように、プロセッサ110は、電子メールの送信または受信のために、サーバ方法情報MS1を取得できる。なお、複合機100の機能からは、電子メールの送信と、電子メールの受信と、のいずれかが、省略されてよい。
【0108】
また、本実施例では、S120-S130(
図2)、S110b(
図4等)に示すように、設定済制御方法Mtは、ユーザの指示によって選択されるアクセス制御方法である。また、上述したように、候補制御方法M1は、複合機100の出荷前に予め決められたアクセス制御方法である。複合機100のプロセッサ110は、このような情報Mt、M1を使用することによって、適切な通信を実行できる。
【0109】
B.第2実施例:
図12、
図13は、通信処理の別の実施例を示すシーケンス図である。
図10の第6処理とは異なり、S250eの後にS255hが追加されている。S110b、S210-S250eは、
図10のS110b、S210-S250eと、それぞれ同様である。
【0110】
S255hでは、複合機100のプロセッサ110は、サーバ方法情報MS1が、複合機100で使用可能かを判断できないアクセス制御方法(第2制御方法と呼ぶ)を含むか否かを判断する。本実施例では、プロセッサ110は、複合機100で使用可能なアクセス制御方法に含まれないアクセス制御方法を、使用可能かを判断できない第2制御方法として扱う。サーバ方法情報MS1に含まれる文字列をプロセッサ110が解釈できない場合、使用可能かを判断できないアクセス制御方法をサーバ方法情報MS1が含むと、プロセッサ110は判断してよい。
【0111】
S255hの判断結果は、複合機100の構成と第1サーバ300Aの構成とに応じて、変化する。例えば、複合機100で使用可能なアクセス制御方法が「PLAIN」と「CRAM-MD5」とであり、サーバ方法情報MS1が「XOAUTH2」を含むこととする。この場合、「XOAUTH2」は第2制御方法であるので、S255hの判断結果は、Yesである。
【0112】
S255hの判断結果がYesである場合、プロセッサ110は、S410へ移行する。S410の後、
図7、
図10、
図11のいずれかのS410に続く処理が、実行される。
図12は、
図10の処理が実行される場合のシーケンスを表している。
【0113】
このように、本実施例では、サーバ方法情報MS1が、設定済制御方法Mtと候補制御方法M1とのいずれも含まない場合(C1:No、C3:No:S250e)、プロセッサ110は、S255hを実行する。S255hでは、プロセッサ110は、サーバ方法情報MS1が、複合機100で使用可能かを判断できない第2制御方法を含むか否かを判断する。「C1:No、C3:No、S255h:Yes」である場合(第5の場合と呼ぶ)、変更処理条件CXは満たされない(本実施例では、問合処理条件CQが満たされる)。第5の場合には、
図7、
図10、
図11のいずれかのS410とそれに続く処理が実行される。いずれの場合も、S410で、プロセッサ110は、第2制御方法を含むケイパビリティ情報を含む問い合わせを、管理サーバ400に送信する。そして、S420では、プロセッサ110は、第2制御方法に関連する情報(ここでは、第1種応答情報、第2種応答情報、第3種応答情報のいずれか)を含む応答を、管理サーバ400から受信する。従って、プロセッサ110は、サーバ方法情報MS1が第2制御方法を含む場合に、サービスサーバとの通信のための適切な処理を進行できる。
【0114】
なお、複合機100の構成と第1サーバ300Aの構成とに応じて、S255hの判断結果はNoであり得る。例えば、複合機100で使用可能なアクセス制御方法が「PLAIN」と「CRAM-MD5」と「XOAUTH2」とであり、サーバ方法情報MS1が「XOAUTH2」を含むこととする(ここで、Mt=PLAIN、M1=CRAM-MD5とする)。この場合、「XOAUTH2」は使用可能なアクセス制御方法であるので、S255hの判断結果は、Noである。以下、設定済制御方法Mtと候補制御方法M1とのいずれとも異なり、サーバ方法情報MS1に含まれるアクセス制御方法を、第3制御方法と呼ぶ。
【0115】
S255hの判断結果がNoである場合、プロセッサ110は、
図13のS450hで、第3出力情報O3を出力する。第3出力情報O3は、設定済制御方法Mtを第3制御方法に変更することをユーザに促す種々の情報であってよい。例えば、第3出力情報O3は、第3制御方法の推奨を表す推奨情報O3aを含んでよい。また、第3出力情報O3は、設定済制御方法Mtの廃止を表す廃止情報O3bを含んでよい。第3出力情報O3の出力方法は、S310c(
図5)での出力方法と同じであってよい。ユーザは、第3制御方法が推奨されることを、第3出力情報O3によって知ることができる。
【0116】
C.第3実施例:
図14は、通信処理の別の実施例を示すシーケンス図である。本実施例では、
図5のS250cの後に、S252iが追加される。S252iでは、プロセッサ110は、候補制御方法M1のセキュリティレベルが、設定済制御方法Mtのセキュリティレベルよりも高いか否かを判断する。S252iの判断結果がYesである場合、プロセッサ110は、変更処理条件CXが満たされると判断し、S310c(
図5)へ移行する。S252iの判断結果がNoである場合、プロセッサ110は、使用処理条件CUが満たされると判断し、S260b(
図4)へ移行する。このように、サーバ方法情報MS1が設定済制御方法Mtと候補制御方法M1とを含み、候補制御方法M1のセキュリティレベルが設定済制御方法Mtのセキュリティレベルよりも高い場合(第3の場合Ccと呼ぶ)には、変更処理条件CXが満たされる。第3の場合Ccには、プロセッサ110は、S310cで、第1出力情報O11を出力する。このように、プロセッサ110は、設定済制御方法Mtから、よりセキュリティレベルの高い候補制御方法M1への変更を、促すことができる。
【0117】
D.変形例:
(1)設定済制御方法Mtを候補制御方法M1に変更することをユーザに促す第1出力情報(例えば、
図5、
図6の第1出力情報O11、O12)を出力するための変更条件は、
図3、
図14の変更処理条件CXに限らず、サーバ方法情報MS1が候補制御方法M1を含むことを含む種々の条件であってよい。例えば、サーバ方法情報MS1が設定済制御方法Mtを含む場合には、変更条件は満たされなくてよい。
【0118】
(2)管理サーバ400による応答情報の決定処理は、
図8の処理に代えて、他の種々の情報であってよい。例えば、S570、S580が省略され、「S550:Yes」の場合には、プロセッサ410は、S590へ移行してよい。また、「S550:No」の場合、プロセッサ410は、他のサービスを表さずに、現行のサービスが不適切であることを表す応答情報を採用してよい。いずれの場合も、複合機100のプロセッサ110は、管理サーバ400からの応答情報を表す第2出力情報を出力してよい。
【0119】
(3)管理サーバ400は、省略されてよい。ここで、サーバ方法情報MS1が設定済制御方法Mtと候補制御方法M1との両方を含まない場合に出力される情報は、
図7、
図10、
図11の第2出力情報O21、O22、O23に限らず、他の種々の情報であってよい。例えば、プロセッサ110は、設定済制御方法Mtと候補制御方法M1とが不適切であることを表す警告情報を、出力してよい。
【0120】
(4)設定済制御方法Mtは、複合機100の製造時(すなわち、出荷前)に、予め決められてよい。また、候補制御方法M1は、ユーザによって選択されてよい。
【0121】
(5)複合機100とサービスサーバとの間の通信は、メール処理のための通信に代えて、他の種々のサービスのための通信であってよい。また、サーバ方法情報MS1の要求は、ケイパビリティ情報の要求に代えて、他の種々の手続きに従って行われてよい。例えば、複合機100は、アクセス制御方法を制御するための専用のプロトコルを使用して、サーバ方法情報MS1を要求してよい。
【0122】
(6)複合機100の構成は、
図1の構成に代えて、他の種々の構成であってよい。例えば、設定済制御方法Mtと候補制御方法M1とを格納するように構成される方法記憶領域(例えば、第2記憶領域SA2)と、設定済制御方法に基づくアクセス許可の要求を行うためのファームウェアを格納するように構成されているファームウェア記憶領域(例えば、第1記憶領域SA1)とは、物理的に同一のメモリ内に形成されてもよく、互いに異なるメモリ内に形成されてもよい。
【0123】
(7)上記の実施例と変形例とは、複合機100に限らず、種々の通信装置に適用可能である。通信装置は、例えば、プリンタ、スキャナ、ミシン、カッティングマシン、工作機械、デジタルカメラ、スマートフォン、タブレットコンピュータ、ゲーム機、のいずれかであってよい。通信装置とサービスサーバとの間の通信は、メール処理のための通信に代えて、通信装置に適する種々のサービスのための通信であってよい。また、ネットワークを介して互いに通信可能な複数の装置(例えば、コンピュータ)が、通信装置によるアクセス制御方法を制御する処理の機能を一部ずつ分担して、全体として、アクセス制御方法を制御する処理の機能を提供してもよい(これらの装置を備えるシステムが通信装置に対応する)。
【0124】
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、変更処理条件CXが満たされるか否かを判断する機能を、専用のハードウェア回路によって実現してもよい。
【0125】
また、本開示の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体(例えば、一時的ではない記録媒体)に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体(コンピュータ読み取り可能な記録媒体)に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD-ROMのような携帯型の記録媒体に限らず、各種ROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。
【0126】
上記の実施例と変形例とは、適宜に組み合わせることができる。また、上記の実施例と変形例とは、本開示の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【0127】
100…複合機、110…プロセッサ、115…記憶装置、120…揮発性記憶装置、130…不揮発性記憶装置、140…表示部、150…操作部、160…印刷実行部、170…読取実行部、180…通信インタフェース、300A…第1サービスサーバ(第1サーバ)、300B…第2サービスサーバ(第2サーバ)、310…プロセッサ、315…記憶装置、320…揮発性記憶装置、330…不揮発性記憶装置、380…通信インタフェース、400…管理サーバ、410…プロセッサ、415…記憶装置、420…揮発性記憶装置、430…不揮発性記憶装置、480…通信インタフェース、1000…システム、IT…ネットワーク