(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024160805
(43)【公開日】2024-11-15
(54)【発明の名称】画像処理装置及び認証処理方法
(51)【国際特許分類】
G06F 21/45 20130101AFI20241108BHJP
G06F 21/31 20130101ALI20241108BHJP
H04N 1/00 20060101ALI20241108BHJP
【FI】
G06F21/45
G06F21/31
H04N1/00 E
H04N1/00 838
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023076194
(22)【出願日】2023-05-02
(71)【出願人】
【識別番号】000005049
【氏名又は名称】シャープ株式会社
(74)【代理人】
【識別番号】100112335
【弁理士】
【氏名又は名称】藤本 英介
(74)【代理人】
【識別番号】100101144
【弁理士】
【氏名又は名称】神田 正義
(74)【代理人】
【識別番号】100101694
【弁理士】
【氏名又は名称】宮尾 明茂
(74)【代理人】
【識別番号】100124774
【弁理士】
【氏名又は名称】馬場 信幸
(72)【発明者】
【氏名】徳永 真悟
【テーマコード(参考)】
5C062
【Fターム(参考)】
5C062AA05
5C062AA13
5C062AA32
5C062AA35
5C062AA37
5C062AB02
5C062AB22
5C062AB23
5C062AB32
5C062AB33
5C062AB38
5C062AB41
5C062AB43
5C062AB44
5C062AC02
5C062AC04
5C062AC05
5C062AC22
5C062AC38
5C062AE01
5C062AE15
5C062AF01
5C062AF02
5C062AF06
5C062AF12
5C062AF14
5C062BC06
(57)【要約】
【課題】トークンの有効期限の徒過により、当該アカウントに対する再認証処理が実行されるまでメール送信が不可となる事態を回避することが可能な画像処理装置等を提供する。
【解決手段】サービス提供装置に対するアカウントを記憶する記憶部と、前記アカウントに基づき前記サービス提供装置に対する認証処理を制御する制御部と、を備え、前記制御部は、新規アカウントの入力を受付けたとき、前記新規アカウントと、前記記憶部に記憶されている第1のアカウントとが同じ認証方式に対応していると判定した場合、前記新規アカウントを前記第1のアカウントの代替アカウントである第2のアカウントとして前記記憶部に記憶する画像処理装置。
【選択図】
図2
【特許請求の範囲】
【請求項1】
サービス提供装置に対するアカウントを記憶する記憶部と、
前記アカウントに基づき前記サービス提供装置に対する認証処理を制御する制御部と、を備え、
前記制御部は、
新規アカウントの入力を受付けたとき、前記新規アカウントと、前記記憶部に記憶されている第1のアカウントとが同じ認証方式に対応していると判定した場合、前記新規アカウントを前記第1のアカウントの代替アカウントである第2のアカウントとして前記記憶部に記憶することを特徴とする画像処理装置。
【請求項2】
前記制御部は、
前記第1のアカウントを用いた前記認証処理が不可であった場合、前記第2のアカウントを用いて前記サービス提供装置に対する認証処理を行うことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記認証処理は、
前記第1のアカウントに対応付けられた更新要求情報に基づき、前記サービス提供装置が提供するサービスを利用するための認可情報の更新有効性を検証する工程を含み、前記更新要求情報には有効期限が設けられていることを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記制御部は、
前記第1のアカウントに係る前記更新要求情報の有効期限が徒過した場合にのみ前記第2のアカウントに係る前記更新要求情報を用いて前記サービス提供装置との認証処理を行うことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記制御部は、
前記第1のアカウントの所有者に対して前記第1のアカウントを用いた再認証処理を促す旨を通知することを特徴とする請求項2に記載の画像処理装置。
【請求項6】
前記制御部は、
前記第2のアカウントを用いた前記サービス提供装置に対する認証処理を、前記第1のアカウントを用いた再認証処理を促す旨を通知する場合に限定することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記制御部は、
前記新規アカウントと前記第1のアカウントとが、異なる前記サービス提供装置に対する前記アカウントである場合に、前記新規アカウントを前記第2のアカウントとして前記記憶部に記憶することを特徴とする請求項1に記載の画像処理装置。
【請求項8】
前記制御部は、
前記更新要求情報の有効期限を確認し、当該有効期限が徒過する前に前記第1のアカウントの所有者又は前記第2のアカウントの所有者に対して前記認可情報の更新を促す旨を通知することを特徴とする請求項3に記載の画像処理装置。
【請求項9】
サービス提供装置に対するアカウントを第1のアカウントとして記憶装置に記憶し、
新規アカウントの入力を受付けたとき、前記新規アカウントと、前記第1のアカウントとが同じ認証方式に対応していると判定した場合、前記新規アカウントを前記第1のアカウントの代替アカウントである第2のアカウントとして前記記憶装置に記憶し、
前記記憶装置に記憶した前記アカウントに基づき前記サービス提供装置に対する認証処理を行う認証処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像処理装置等に関する。
【背景技術】
【0002】
メール送信に係る認証方法として、昨今では、ユーザIDとパスワードとを用いた従来の認証方式よりもよりセキュアな認証方式であるOAuth認証方式が主流となりつつある。
【0003】
OAuth認証に用いられるトークンには、セキュリティを担保するための有効期限が設けられている。もし、トークンの有効期限が徒過した場合、アカウントの所有者である管理者による認可を伴う再認証処理が必要となり、その間はメール送信を行うことができない。
【0004】
例えば、特許文献1には、トークンの有効期限が徒過した場合に、OAuth認証の再認可処理を促す仕組みについて記載されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示は、トークンの有効期限の徒過により、当該アカウントに対する再認証処理が実行されるまでメール送信が不可となる事態を回避することが可能な画像処理装置等を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本開示に係る画像処理装置は、サービス提供装置に対するアカウントを記憶する記憶部と、前記アカウントに基づき前記サービス提供装置に対する認証処理を制御する制御部と、を備え、前記制御部は、新規アカウントの入力を受付けたとき、前記新規アカウントと、前記記憶部に記憶されている第1のアカウントとが同じ認証方式に対応していると判定した場合、前記新規アカウントを前記第1のアカウントの代替アカウントである第2のアカウントとして前記記憶部に記憶することを特徴としている。
【0008】
また、本開示に係る認証処理方法は、サービス提供装置に対するアカウントを第1のアカウントとして記憶装置に記憶し、新規アカウントの入力を受付けたとき、前記新規アカウントと、前記第1のアカウントとが同じ認証方式に対応していると判定した場合、前記新規アカウントを前記第1のアカウントの代替アカウントである第2のアカウントとして前記記憶装置に記憶し、前記記憶装置に記憶した前記アカウントに基づき前記サービス提供装置に対する認証処理を行うことを特徴としている。
【発明の効果】
【0009】
本開示によれば、トークンの有効期限の徒過により、当該アカウントに対する再認証処理が実行されるまでメール送信が不可となる事態を回避することが可能な画像処理装置等を提供することができる。
【図面の簡単な説明】
【0010】
【
図1】複合機と、クラウドと、メール配信サーバとの接続形態を説明する図である。
【
図3】アカウント管理テーブルを説明する図である。
【
図4】第1実施形態に係る処理の流れを説明するフローチャートである。
【
図5】第1実施形態に係るコマンドの流れを説明するシーケンスである。
【
図6】第1実施形態に係るコマンドの流れを説明するシーケンスである。
【
図7】第1実施形態に係る処理の流れを説明するフローチャートである。
【
図8】第1実施形態に係る動作例を説明する図である。
【
図9】第1実施形態に係る動作例を説明する図である。
【
図10】第1実施形態に係る動作例を説明する図である。
【
図11】第2実施形態に係る処理の流れを説明するフローチャートである。
【
図12】第2実施形態に係る動作例を説明する図である。
【
図13】第2実施形態に係る動作例を説明する図である。
【
図14】第3実施形態に係る処理の流れを説明するフローチャートである。
【
図15】第3実施形態に係る動作例を説明する図である。
【
図16】第3実施形態に係る動作例を説明する図である。
【
図17】第3実施形態に係る動作例を説明する図である。
【
図18】第4実施形態に係る処理の流れを説明するフローチャートである。
【
図19】アカウント管理テーブルを説明する図である。
【発明を実施するための形態】
【0011】
以下、本開示の実施形態について図面を参照して説明する。なお、以下の実施形態は、本開示を説明するための一例であり、特許請求の範囲に記載した説明の技術的内容は、以下の記載に限定されるものではない。
【0012】
画像処理装置からメール送信する場合、画像処理装置の管理者等により予め設定されたアカウントを用いてメール配信サービスや、認証サービス等に対する認証処理が行われる。このときのアカウントがOAuth認証方式に対応したアカウントである場合、管理者が設定時に認証処理を行っていたとしても、トークンの有効期限が徒過した場合には、管理者による再認証処理が必要となる。
【0013】
そして、再認証処理は、アカウントの所有者(管理者)が行うことが多いため、他のユーザは、再認証処理が完了するまでメール送信を行うことができない。特に、メール送信の失敗が、画像処理装置の操作画面を操作していないとき、例えば、ファクス受信の自動転送のような場合に発生すると、メール送信の失敗が把握されないまま長時間、ジョブが失敗し続ける可能性がある。
【0014】
更に、OAuth認証では、アカウント毎に取得可能なトークンの数に制限が設けられる場合もある。アカウントが多くの装置で使用されている態様である場合、トークンの取得数が上限に達すると、メール送信が失敗する可能性はより増大する。
【0015】
本開示では、トークンの有効期限の徒過により、当該アカウントに対する再認証処理が実行されるまでメール送信が不可となる事態を回避することが可能な画像処理装置等を以下の実施形態で実現する。
【0016】
[1 第1実施形態]
[1.1 全体構成]
図1は、第1実施形態に係る画像処理装置としての複合機10と、サービス提供装置としてのクラウド30と、メール配信サーバ50との接続形態の一例を説明する図である。
【0017】
第1実施形態に係る複合機10は、プリント、コピー、ファクス(インターネットFAX)、メール送信等を一つの筐体で実現可能な画像処理装置である。なお、第1実施形態では、画像処理装置の一形態として複合機10について説明するが、OAuth認証に対応したアカウントを用いての認証処理が可能な構成であれば、特に制限は無く、コピー機、プリンタ、ファクス等の画像処理装置であってもかまわない。
【0018】
複合機10は、ネットワークNWを介してクラウド30と、メール配信サーバ50とに接続されている。複合機10は、例えば、IP(Internet Protocol)、TCP(Transmission Control Protocol)、HTTP(Hypertext Transfer Protocol)、SMTP(Simple Mail Transfer Protocol)等の通信プロトコルに基づき、クラウド30、メール配信サーバ50との通信が可能となるように構成されている。なお、ネットワークNWは、LAN(Local Area Network)、WAN(Wide Area Network)、インターネット等のネットワーク回線を表している。なお、ネットワークNWに接続される複合機10の数は、
図1の例示に限定されず、複数台数の複合機10がネットワークNWに接続されてもよい。
【0019】
クラウド30は、例えば、OAuth2.0認証方式に基づく認可コードフローを実施することでリソースの利用認可を行う認可サーバ(不図示)を含む。クラウド30は、認証(認可)に応じて認可コード、認可情報としてのアクセストークン、更新要求情報としてのリフレッシュトークン等を生成する構成であれば、装置構成に制限は無く、例えば、認可コードフローを処理する認可サーバと、リソースを提供するリソースサーバとを別体で構成してもよく、認証機能とリソース提供機能とを併せ持つ単体の装置で構成することも可能である。
【0020】
メール配信サーバ50は、SMTPプロトコルやPOP(Post Office Protocol)プロトコルに準拠してメール配信を行う。メール配信サーバ50は、クラウド30(リソースサーバ)からのAPI(Application Programming Interface)を介したメール送信要求に応じ、特定の宛先に対するメール送信や、受信したメールの配信を行うことができる。なお、メール配信サーバ50は、クラウド30のリソースサーバとして構成してもよい。
【0021】
[1.2 機能構成]
[1.2.1 複合機10について]
次に、第1実施形態に係る複合機10の機能構成について
図2を用いて説明する。複合機10は、制御部11と、表示部13と、操作入力部15と、通信部17と、画像処理部19と、画像入力部21と、記憶部23とを備える。
【0022】
制御部11は、複合機10全体を制御する。制御部11は、例えば、1又は複数の演算装置(CPU(Central processing unit)等)により構成される。制御部11は、記憶部23に記憶された各種プログラムを読み出して実行することにより、その機能を実現する。
【0023】
表示部13は、各種情報をユーザ等に対して表示する。表示部13は、例えば、LCD(Liquid crystal display)や有機EL(Electro-luminescence)ディスプレイ等により構成することができる。表示部13は、制御部11による制御に基づき、後述するブラウザプログラム234によって生成された閲覧用の画面情報に基づく画面を表示する。
【0024】
操作入力部15は、ユーザ等による情報の入力を受付ける。操作入力部15は、例えば、ハードキーやソフトウェアキーといった操作キー、ボタン等の各種入力装置により構成することができる。なお、操作入力部15は、表示部13を介しての入力が可能なタッチパネルとして構成することができる。この場合、操作入力部15は、表示部13で表示するWebブラウザ画面やアプリケーション画面を介したUI(User Interface)として機能することができる。なお、タッチパネルの入力方式としては、例えば、抵抗膜方式、赤外線方式、電磁誘導方式、静電容量方式といった一般的な方式を採用することができる。
【0025】
なお、制御部11が後述する制御プログラム231を読み出すことでOS(Operating System)として機能し、当該OSによる制御に基づき駆動するUIを第1実施形態ではUI/OS110と称することがある。
【0026】
通信部17は、例えば、LAN、WAN、インターネット、電話回線、ファクス回線等のネットワーク(NW)を介して他の装置(クラウド30、メール配信サーバ50)と通信を行うための有線/無線の何れか又はその両方のインタフェースを備える。また、通信部17は、例えば、Bluetooth(登録商標)、NFC(Near field communication)、Wi-Fi(登録商標)、ZigBee(登録商標)、Irda、ワイヤレスUSB等の(近距離)無線通信技術に関するインタフェースを備えてもよい。
【0027】
画像処理部19は、画像データに基づく画像を記録媒体としての用紙等に形成する画像形成部を含む。画像形成部は、不図示の給紙トレイから用紙を給紙し、用紙上に画像データに基づく画像を形成した後、不図示の排紙部に排紙する。画像形成部は、例えば、電子写真方式を利用したレーザプリンタ等により構成することができる。この場合、画像形成部は、トナー色(例えば、シアン、マゼンタ、イエロー、ブラック)に対応した不図示のトナーカートリッジから供給されるトナーを用いて画像形成を行う。また、画像処理部19は、画像入力部21から入力された画像データに対して、例えば、シェーディング補正や、濃度補正等を施して、メール添付用の出力用画像データを生成する形態を含めてもよい。
【0028】
画像入力部21は、原稿を走査することにより、画像データを生成する。画像入力部21は、例えば、CCD(Charge coupled device)、CID(Contact image sensor)等のイメージセンサを備え、自動原稿送り装置(ADF:Automatic document feeder)や、原稿を載置して読取るためのフラットベット等を有するスキャナ装置として構成することができる。画像入力部21は、原稿画像からの反射光像をイメージセンサで読取ることで画像データを生成することが可能な構成であれば、その構成に特に制限はない。なお、画像入力部21は、例えば、USB(Universal serial bus)メモリ等の可搬性記憶媒体に記憶された画像データや、不図示の外部端末装置等から送信された画像データを取得可能なインタフェースとして構成することも可能である。
【0029】
記憶部23は、複合機10の動作に必要な各種プログラムや、各種データを記憶する。記憶部23は、例えば、RAM(Random access memory)、HDD(Hard disk drive)、SSD(Solid state drive)、ROM(Read only memory)等の記憶装置により構成することができる。
【0030】
第1実施形態において、記憶部23は、制御プログラム231と、認証プログラム232と、アプリケーションプログラム233と、ブラウザプログラム234と、アカウント管理プログラム235とを記憶し、アカウント記憶領域236を確保する。
【0031】
制御プログラム231は、複合機10を統括的に制御する際に制御部11が読み出すプログラムである。制御プログラム231を読み出した制御部11は、OSとして機能し、表示部13、操作入力部15、通信部17、画像処理部19、画像入力部21の駆動を制御することでプリント、コピー、ファクス、メール送信等の各ジョブの設定、実行、後処理等を行う。
【0032】
認証プログラム232は、クラウド30との間で認証処理を行う際に制御部11が読み出すプログラムである。認証プログラム232を読み出した制御部11は、クラウド30に対する認証処理の実施を後述するWebブラウザを介して行う。なお、認証プログラム232を読み出した制御部11は、OAuth認証といった事前の認可が必要な認証方式に加え、例えば、ユーザ名(ユーザID)とパスワードとの組み合わせで認証する従来の認証処理(例えば、SMTP認証処理、POP認証処理)や、複合機10に対するログイン認証も行うことができる。また、認証プログラム232を読み出した制御部11は、認証処理として、アカウントに対応付けられた更新要求情報としてのリフレッシュトークンに基づき、サービス提供装置としてのクラウド30(メール配信サーバ50)が提供するメール配信サービスを利用するための認可情報としてのアクセストークンの更新が可能か否かを検証する(以降、更新有効性と称する)を検証する。本開示では、制御部11は、リフレッシュトークンに設けられた有効期限に基づきアクセストークンの更新有効性を検証する。
【0033】
アプリケーションプログラム233は、制御部11が読み出すことにより、プリント、コピー、ファクス、メール送信等の機能を実現することが可能なアプリケーションである。アプリケーションプログラム233としては、複合機10の設定、管理等を司る統合管理アプリケーションであってもよいし、当該統合管理アプリケーションをプラットホームとする個別のアプリケーション(例えば、スキャン送信アプリケーション等)であってもかまわない。なお、アプリケーションプログラム233を読み出した制御部11は、APIを介し、認証プログラム232等の他のプログラムが奏する機能を利用することができる。アプリケーションプログラム233と、認証プログラム232とは協働することで、クラウド30との間で認証情報やアクセストークンの取得/更新/受け渡し等を行うことができる。ここでの説明では、アプリケーションプログラム233と認証プログラム232とを別構成として説明したが、認証プログラム232の機能をアプリケーションプログラム233に設けることも可能である。なお、以降の説明では、アプリケーションプログラム233を読み出した制御部11がユーザの目的のために動作する態様を単にアプリケーションとして称して説明する。
【0034】
ブラウザプログラム234は、入力を受けたコンテンツをレンダリングすることにより、閲覧用の画面情報を生成する際に制御部11が読み出すプログラムである。ブラウザプログラム234を読み出した制御部11は、Webブラウザとして機能し、表示するWebブラウザ画面を介してユーザからの入力や要求を受け付けたり、アプリケーションからの通知をユーザに対して表示することができる。
【0035】
アカウント管理プログラム235は、プロバイダに応じて設定されたアカウントを管理する際に制御部11が読み出すプログラムである。アカウント管理プログラム235を読み出した制御部11は、例えば、不図示の設定画面を介して新規アカウントの入力を受付けると、当該新規アカウントの認証方式がOAuth認証方式に対応しているか否かを判定する。そして、制御部11は、新規アカウントの認証方式がOAuth認証方式に対応していると判定した場合、既にアカウント記憶領域236に記憶している第1のアカウントの代替アカウントとして、新規アカウントを第2のアカウントとして記憶する。なお、新規アカウントの認証方式がOAuth認証方式に対応していりないと判定した場合、制御部11は、他の認証方式のアカウントとしてアカウント記憶領域236に記憶する。
【0036】
アカウント記憶領域236は、アカウントを記憶する記憶領域である。アカウント記憶領域236は、アカウント管理プログラム235を読み出した制御部11による制御に基づき、アカウントを
図3で例示するアカウント管理テーブルとして記憶する。なお、アカウント記憶領域236は複合機10以外のネットワークNWに接続された外部記憶装置等に設けることも可能である。
【0037】
ここで、第1実施形態に係るアカウント管理テーブルの構成例について
図3を用いて説明する。なお、
図3で例示するアカウント管理テーブルの構成例は、あくまでも一例であり、本開示に係るアカウントの管理が
図3での例示に限定されるものではない。例えば、アカウント管理テーブルは、
図3で例示する管理項目以外の項目を含んでもよく、管理形式もテーブル形式に限定されず、データベースであってもかまわない。
【0038】
アカウント管理テーブル2361は、IDと、ユーザ名と、プロバイダと、使用アカウントと、認証方式と、アカウント種別と、トークン有効期限とを管理項目として含む。
【0039】
IDは、管理するアカウントを一意に識別するための識別子である。ユーザ名は、当該アカウントの所有者の名称を表す。プロバイダは、認証先(クラウド30)の名称を表す。使用アカウントは、認証処理に用いるアカウント名を表す。認証方式は、当該アカウントに対応した認証方式を表す。アカウント種別は、OAuth認証方式に対応したアカウントの種別を表す。トークン有効期限は、当該アカウントに対応してクラウド30から発行されたトークンの有効期限を表す。ここで、本開示に係るトークンとは、クラウド30のリソース(メール配信サーバ50)を利用するためのアクセストークン(認可情報)を更新するためのリフレッシュトークン(更新要求情報)を意図するものとする。また、本開示に係る有効期限とは、クラウド30により発行されたトークンが有効な一定の時期を表し、日付や時間で表現してもよく、クラウド30により発行された日付から特定の日付までの期間で表してもかまわない。なお、アカウント管理テーブル2361は、これらの管理項目以外にも、例えば、使用アカウントに対応付けたパスワード、トークン(自体)、認可コード、アカウント所有者の連絡先(メールアドレス等)を管理項目に含めてもよい。
【0040】
例えば、ID“01”に係るアカウントは、ユーザ名“admin”を所有者とするアカウントを表している。ID“01”に係るアカウントは、プロバイダ“aabbcc”を認証先とし、このときの使用アカウントは、“admin@aabbcc.jp”である。ID“01”に係るアカウントはOAuth認証方式に対応しており(認証方式“OAuth認証方式”)、当該アカウントの種別は“第1のアカウント”である。第1のアカウントは、メール送信に係る認証処理において、メインアカウントとして用いられるアカウントであって、アカウント記憶領域236に対して記憶済のアカウントである。また、ID“01”に係るアカウントに対するトークンの有効期限は“2023/5/10”である。トークンの有効期限が徒過すると、当該アカウントを用いた認証処理は失敗する。
【0041】
ID“02”に係るアカウントは、ユーザ名“admin”を所有者とするアカウントを表している。ID“02”に係るアカウントは、プロバイダ“aabbcc”を認証先とし、このときの使用アカウントは、“admin2@aabbcc.jp”である。ID“02”に係るアカウントはOAuth認証方式に対応しており(認証方式“OAuth認証方式”)、当該アカウントの種別は“第2のアカウント”である。第2のアカウントは、制御部11が、新規アカウントして受付けたアカウントの認証方式がOAuth認証方式に対応していると判定した場合、既にアカウント記憶領域236に記憶している第1のアカウントの代替アカウントとして、アカウント記憶領域236に記憶したものである。制御部11は、第1のアカウントに係るトークンの有効期限“2023/5/10”が徒過した場合、当該第1のアカウントの代替アカウントである第2のアカウントを用いて認証処理を行う。なお、本開示におけるアカウントを用いた認証処理とは、OAuth認証方式に準拠した認証・認可処理を包含する概念であり、例えば、使用アカウント(アカウント名)、パスワード等を用いたクラウド30に対する認証処理、アクセストークンを用いた認可処理、リフレッシュトークンに基づくアクセストークンのトークン更新要求処理等の認証・認可処理を含むものとする。
【0042】
一方、ID“03”に係るアカウントは、ユーザ名“user01”を所有者とするアカウントを表している。ID“03”に係るアカウントは、プロバイダ“gghhii”を認証先とし、このときの使用アカウントは、“user@gghhii.jp”である。ID“03”に係るアカウントはOAuth認証方式に対応しておらず(認証方式“SMTP認証方式”)、当該アカウントは、第1のアカウント”、“第2のアカウント”の何れのアカウント種別に属さないアカウントである(アカウント種別:“-”)。
【0043】
[1.2.2 クラウド30について]
第1実施形態に係るクラウド30は、OAuth認証方式に基づく認可コードフローを実施することでリソースの利用認可を行う認可サーバを含む構成であれば、既知の構成を用いることができる。したがって、クラウド30の機能構成に関する説明は省略する。
【0044】
[1.2.3 メール配信サーバ50について]
第1実施形態のメール配信サーバ50は、クラウド30(リソースサーバ)からのAPIを介したメール送信要求に応じ、特定の宛先に対するメール送信や、受信したメールの配信を行うことが可能な構成であれば、既知の構成を用いることができる。したがって、メール配信サーバ50の機能構成に関する説明は省略する。
【0045】
[1.3 処理の流れ]
次に、第1実施形態に係る処理の流れについて説明する。
図4は、新規アカウントして受付けたアカウントの認証方式がOAuth認証方式に対応した場合に、当該アカウントを第2のアカウントとして設定(記憶)する処理を説明するフローチャートである。なお、
図4のフローチャートで説明する処理は、制御部11がアカウント管理プログラム235等を読み出すことにより実行する処理である。また、
図4では、OAuth認証方式に対応したアカウントを第1のアカウントとして設定(記憶)する処理から説明する。
【0046】
まず、制御部11は、複合機10の管理者(例えば、
図3のアカウント管理テーブル2361で例示したID“01”のユーザ名“admin”で示されるアカウント所有者)により、OAuth認証方式に対応したアカウントの設定を受付ける。制御部11は、受付けたアカウントをメール送信の認証処理に係る第1のアカウントとして設定する。制御部11は、第1のアカウントの設定を受付けると、当該アカウントをアカウント管理テーブル2361に記憶する(ステップS10)。
【0047】
次いで、制御部11は、アカウントの新規入力を受付けたか否かを判定する(ステップS12)。制御部11は、新規アカウントの入力を受付けたと判定した場合、当該アカウントの認証方式がOAuth認証方式に対応しているか否か判定する(ステップS12;Yes→ステップS14)。なお、制御部11は、新規アカウントの入力を受付けていないと判定した場合、当該アカウントの入力を受付けるまで待機する(ステップS12;No)。
【0048】
制御部11は、新規アカウントの認証方式がOAuth認証方式に対応していると判定した場合、新規アカウントを第1のアカウントの代替アカウントである第2のアカウントとして設定し、処理を終了する(ステップS14;Yes→ステップS16)。このとき、制御部11は、クラウド30に対する第2のアカウントを用いた認証処理を行う。
【0049】
一方、制御部11は、受付けたアカウントの認証方式がOAuth認証方式に対応していないと判定した場合、受付けたアカウントを他の認証方式のアカウントとして設定し、処理を終了する(ステップS14;No→ステップS18)。
【0050】
次に、トークンの有効期限の徒過により送信エラーが発生し、ユーザ(管理者)により再認証が行われる場合の、ユーザ、UI/OS110、アプリケーション、クラウド30間におけるコマンドシーケンスについて
図5を用いて説明する。なお、以降では、認証処理としてトークン更新要求処理を中心に説明する。
【0051】
まず、ユーザによりメール送信実行指示が入力されると(S100)、UI/OS110は、トークン更新実行要求コマンドをアプリケーションに送信する(S102)。
【0052】
アプリケーションはトークンの更新要求コマンドをクラウド30に対して送信する(S104)。トークンの更新要求コマンドを受信したクラウド30は、当該トークンの有効期限の検証を行う。このとき、トークンの有効期限が徒過していれば、クラウド30は、エラー判定を行う(エラー判定)。そして、クラウド30は、トークンの有効期限切れによるエラーをアプリケーションに対して返却する(S106)。一方、トークンの有効期限が徒過していない場合、更新したトークン(アクセストークン、リフレッシュトークン)を発行し、アプリケーションに対してトークン応答コマンドを送信する。トークン応答コマンドを受信したアプリケーションは、UI/OS110にトークンを渡す。UI/OS110は、取得したトークンを含むメール送信要求コマンドをクラウド30(リソースサーバ)に送信する。クラウド30(リソースサーバ)は、受信したトークンの有効性を確認し、メール配信サーバ50に対してメール送信要求を行う。そして、メール送信が成功すると、クラウド30(リソースサーバ)は、送信成功応答コマンドをUI/OS110に送信する。UI/OS110は、メール送信が完了した旨をユーザに対して通知する。
【0053】
クラウド30からエラー返却を受けたアプリケーションは、UI/OS110に対してエラーを返却する(S108)。UI/OS110は、送信エラーと、当該送信エラーに伴う認証が必要である旨(要再認証)をユーザに対して通知する(S110)。
【0054】
次いで、送信エラー後、ユーザとしての管理者が再認証するケースについて説明する。
【0055】
UI/OS110は、管理者による再認証要求指示を受付ける(S112)。再認証要求指示を受付けると、UI/OS110は認証処理要求コマンドをアプリケーションに対して送信する(S114)。認証処理要求コマンドを受信したアプリケーションは、クラウド30に対して認証処理要求コマンドを送信する(S116)。
【0056】
認証処理要求コマンドを受信したクラウド30は、認証画面応答コマンドをアプリケーションに対して送信する(S118)。認証画面応答コマンドには、管理者に対する認証情報(ログイン情報)の入力を受付けるための認証画面に係るコンテンツや、当該コンテンツの格納場所を表すURL(Uniform Resource Locator)を含めることができる。
【0057】
アプリケーションは、認証画面応答コマンドを受信すると、認証画面応答コマンドをUI/OS110に対して送信する(S120)。アプリケーションからUI/OS110に対して送信されるコマンドには、クラウド30から受信した認証画面に係るコンテンツやURL等のロケーション情報に加え、当該認証画面のWebブラウザを介した表示指示を含めることができる。
【0058】
アプリケーションから認証画面応答コマンドを受信したUI/OS110は、認証画面を管理者に対して表示する(S122)。
【0059】
UI/OS110は、管理者によるログイン情報の入力を受付ける(S124)。UI/OS110はログイン情報の入力を受付けると、アプリケーションに対してログイン実行要求コマンドを送信する(S126)。アプリケーションはUI/OS110からログイン実行要求を受信すると、クラウド30に対してログイン要求コマンドを送信する(S128)。
【0060】
クラウド30は、受信したログイン情報を検証することでログイン認証を行う。ログイン認証が成功すると(認証O.K.)、クラウド30は認可画面応答コマンドをアプリケーションに対して送信する(S130)。認可画面応答コマンドには、リソースの使用可否の入力を受付けるための認可画面に係るコンテンツや、当該コンテンツの格納場所を表すURLを含めることができる。
【0061】
アプリケーションは、認可画面応答コマンドを受信すると、認可画面応答コマンドをUI/OS110に対して送信する(S132)。アプリケーションからUI/OS110に対して送信されるコマンドには、クラウド30から受信した認可画面に係るコンテンツやURL等のロケーション情報に加え、当該認可画面のWebブラウザを介した表示指示を含めることができる。
【0062】
アプリケーションから認可画面応答コマンドを受信したUI/OS110は、認可画面を管理者に対して表示する。
【0063】
次いで、管理者の再認証が成功後のメールの再送信について説明する。
【0064】
UI/OS110は、管理者によるメール再送信の指示入力を受付ける(S136)。UI/OS110はメール再送信の指示入力を受付けると、アプリケーションに対してトークン取得実行要求コマンドを送信する(S138)。アプリケーションはUI/OS110からトークン取得実行要求コマンドを受信すると、クラウド30に対して認可コードを含むトークン取得要求コマンドを送信する(S140)。
【0065】
クラウド30は、認可コードに基づきトークンを発行し(認証O.K.)、アプリケーションに対してトークン応答コマンドを送信する(S142)。トークン応答コマンドを受信したアプリケーションは、UI/OS110にトークンを渡す(S144)。
【0066】
UI/OS110は、取得したトークンを含むメール送信要求コマンドをクラウド30(リソースサーバ)に送信する(S146)。クラウド30(リソースサーバ)は、受信したトークンの有効性を確認し、メール配信サーバ50に対してメール送信要求を行う。そして、メール送信が成功すると、クラウド30(リソースサーバ)は、送信成功応答コマンドをUI/OS110に送信する(S148)。UI/OS110は、メール送信が完了した旨をユーザに対して通知する(S150)。
【0067】
次に、トークンの有効期限の徒過により送信エラーが発生し、第2のアカウントを用いてメールを再送信する場合の、ユーザ、UI/OS110、アプリケーション、クラウド30間におけるコマンドシーケンスについて
図6を用いて説明する。なお、S100からS108、S142からS150に係るコマンドシーケンスについては、
図5で説明したものと同一であるため、ここでの説明は省略する。
【0068】
アプリケーションからエラーの返却を受けたUI/OS110は、アカウントを第2のアカウントに切替え、トークン更新実行要求コマンドをアプリケーションに対して送信する(S200)。アプリケーションはトークンの更新要求コマンドをクラウド30に対して送信する(S202)。トークンの更新要求コマンドを受信したクラウド30は、当該トークンの有効期限の検証を行う。このとき、第2のアカウントに係るトークンの有効期限内であれば、クラウド30は、認証成功判定を行う(認証O.K.)。そして、クラウド30は、トークンを発行し、アプリケーションに対してトークン応答コマンドを送信する(S142)。トークン応答コマンドを受信したアプリケーションは、UI/OS110にトークンを渡す(S144)。一方、第2のアカウントに係るトークンの有効期限が徒過していれば、クラウド30は、エラー判定を行う(エラー判定)。そして、クラウド30は、トークンの有効期限切れによるエラーをアプリケーションに対して返却する。クラウド30からエラー返却を受けたアプリケーションは、UI/OS110に対してエラーを返却する。UI/OS110は、送信エラーと、当該送信エラーに伴う認証が必要である旨(要再認証)をユーザに対して通知する。
【0069】
UI/OS110は、アカウントを切替えた旨をユーザに対して通知する(S204)。一方で、UI/OS110は、取得したトークンとともにメール送信要求コマンドをクラウド30(リソースサーバ)に送信する(S146)。クラウド30(リソースサーバ)は、受信したトークンの有効性を確認し、メール配信サーバ50に対してメール送信要求を行う。そして、メール送信が成功すると、クラウド30(リソースサーバ)は、送信成功応答コマンドをUI/OS110に送信する(S148)。
【0070】
UI/OS110は、メール送信が完了した旨をユーザに対して通知する(S150)。
【0071】
図7は、
図6のS108において、アプリケーションからエラーの返却を受けたUI/OS110が実行する処理を説明するフローチャートである。
【0072】
UI/OS110は、送信エラーの返却を受けたか否かを判定する(ステップS20)。送信エラーの返却を受けたと判定した場合、UI/OS110は、受信した送信エラーの内容を解析し、当該送信エラーがトークンの有効期限の徒過に起因したものであるか否かを判定する(ステップS20;Yes→ステップS22)。なお、UI/OS110は、送信エラーの返却を受けていないと判定した場合、当該送信エラーの返却を受けるまで待機する(ステップS20;No)。
【0073】
送信エラーの解析の結果、当該送信エラーがトークンの有効期限の徒過に起因したものであると判定した場合、UI/OS110は、アカウントを第2のアカウントに切替える(ステップS22;Yes→ステップS24)。一方、当該送信エラーがトークンの有効期限の徒過に起因したものでないと判定した場合、UI/OS110は、当該送信エラーが、例えば、単純なアカウントの認証失敗に起因するものであると判定し、アカウントを第2のアカウントに切替えずに処理を終了する(ステップS22;No→“終了”)。
【0074】
UI/OS110はアカウントを第2のアカウントに切替えた後、アプリケーションに対してトークン更新実行要求コマンドを送信し、処理を終了する(ステップS26)。
【0075】
送信エラーが発生した場合、全てのケースで第2のアカウントへの切替えを行うと、アカウントの認証失敗等、セキュリティ上好ましくないケースでもメール送信が実行されてしまう。そのため、第1実施形態では、トークンの有効期限の徒過等の一定の条件に基づき、第2のアカウントへの切替えを行う。このような構成とすることで、送信エラーの発生に関し、セキュリティ上好ましくないケースにおいて、無用にメールが送信されることを防止することができる。
【0076】
[1.4 動作例]
次に、第1実施形態の動作例について説明する。
図8及び
図9は、SMTP設定画面W10の一構成例を説明する図である。
図8は第1のアカウントの設定動作を説明する図であり、
図9は第2のアカウントの設定動作を説明する図である。
図8及び
図9で説明する動作例は、
図4で例示した処理に対応する動作例である。
【0077】
図8及び
図9で例示するSMTP設定画面W10は、SMTP設定領域R10と、認証方式設定領域R12とを含む。
【0078】
SMTP設定領域R10は、プライマリサーバ及びセカンダリサーバと、ポート番号と、タイムアウトと、送信者名と、送信者アドレスと、SSL/TLSを有効にするチェックボックスとを設定項目として含む。
【0079】
プライマリサーバ及びセカンダリサーバは、メール配信サーバ50を特定するための入力ボックスであり、メール配信サーバ50の名称(ドメイン名)や、IPアドレス情報等の入力を受付ける。なお、セカンダリサーバについて設定しない場合は、当該入力ボックスは空欄であってもかまわない。
【0080】
ポート番号は、メール配信サーバ50のポート番号の入力を受付ける。タイムアウトは接続タイムアウトになるまでアイドル状態を維持する時間の長さの入力を受付ける。送信者名は、メールの送信者名の入力を受付け、送信者アドレスは、メールの送信者のメールアドレスの入力を受付ける。SSL/TLSを有効にするチェックボックスは、インターネット上でデータを送受信する際に当該データの暗号化を行うか否かの指定を受付けるチェックボックスである。
【0081】
認証方式設定領域R12は、認証方式選択プルダウンメニューPM10と、プロバイダ入力ボックスBx10と、アカウント名入力ボックスBx12とを含む。
【0082】
認証方式選択プルダウンメニューPM10は、認証方式の選択を受付けるプルダウンメニューである。
図8及び
図9は、選択可能な認証方式として、“認証無し”、“SMTP認証”、又は“OAuth認証”の何れかの認証方式が選択可能である構成を表しており、認証方式としてOAuth認証方式が選択された例示である。
【0083】
プロバイダ入力ボックスBx10は、認証先のプロバイダ(クラウド30)の名称の入力を受付ける入力ボックスである。
図8及び
図9は、プロバイダとして“aabbcc”が入力された例示である。
【0084】
アカウント名入力ボックスBx12は、認証先のプロバイダに対するアカウント名の入力を受付ける入力ボックスである。
図8は、第1のアカウントに係るアカウント名として“admin@aabbcc.jp”の入力を受付けた例示である。
図9は、第2のアカウントに係るアカウント名として“admin2@aabbcc.jp”の入力を受付けた例示である。
【0085】
図8及び
図9で例示したSMTP設定画面W10を介して入力された設定内容は、
図3で例示したアカウント管理テーブル2361に記憶される。
【0086】
図10は、アカウント切替通知画面の表示構成例を説明する図である。
図10は、スキャン送信アプリケーションのジョブ実行画面W20上にメッセージ画面M10を重畳して表示した例示である。
【0087】
メッセージ画面M10は、アカウント名“admin@aabbcc.jp”(第1のアカウント)におけるトークンの有効期限が徒過し、アカウントを第2のアカウントに切替えた旨“トークンの有効期限が過ぎています。アカウントを第2のアカウントに切替えました。”を通知内容としたメッセージ画面の例示である。なお、第2のアカウントを用いたスキャン送信(メール送信)に制限を設ける場合(例えば、第2のアカウントへの切替えをトークンの有効期限の徒過のみに制限する場合や、第2のアカウントを用いたメール送信をアカウント所有者(管理人)に対する再認証要求に限定する場合(第2実施形態)等)、例えば、“第2のアカウントによるメール送信は機能が制限される場合があります。”といったユーザに対して注意を促すメッセージを追加することも可能である。
【0088】
以上のように、第1実施形態によれば、第1のアカウントに対するトークンの有効期限が徒過した場合であっても、当該第1のアカウントの代替アカウントである第2のアカウントに切替えてメール送信を行うことにより、トークンの有効期限の徒過により、第1のアカウントに対する再認証処理が実行されるまでメール送信が不可となる事態を回避することができる。また、第1実施形態によれば、第2のアカウントがスキャン送信等のメール送信に無用に利用されることを防ぎ、セキュリティ上好ましくない送信先へのメール送信を制限することができる。
【0089】
[2 第2実施形態]
第2実施形態は、切替えた第2のアカウントに基づき、第1のアカウントのアカウント所有者に対して再認証を促す通知を送信する形態である。
【0090】
[2.1 機能構成]
第2実施形態に係る複合機、クラウド、及びメール配信サーバの機能構成は、第1実施形態に係る複合機10、クラウド30、及びメール配信サーバ50の機能構成と同一構成とすることができる。したがって、ここでの説明は省略する。
【0091】
[2.2 処理の流れ]
図11は、第2実施形態に係る処理の流れを説明するフローチャートである。
図11では、
図7のステップS20~ステップS26で説明した処理に継続する処理として説明する。
【0092】
UI/OS110は、アカウント所有者に対して、第1のアカウントに対する再認証処理を促す旨を通知する(ステップS30)。
【0093】
次いで、UI/OS110は、アカウント所有者による再認証処理が行われ、再認証が成功したか否かを判定する(ステップS32)。再認証が成功したと判定した場合、UI/OS110は、メール送信に係るアカウントを第2のアカウントから第1のアカウントに切替え、処理を終了する(ステップS32;Yes→ステップS34)。なお、再認証が成功していないと判定した場合、UI/OS110は、再認証が成功するまで待機する(ステップ32;No)。
【0094】
[2.3 動作例]
図12は、再認証を促す通知がアカウント所有者に対して送信されたことを内容とする通知画面の表示構成例を説明する図である。
図12は、スキャン送信アプリケーションのジョブ実行画面W20にメッセージ画面M12を重畳して表示した例示である。
【0095】
メッセージ画面M12は、アカウント名“admin@aabbcc.jp”(第1のアカウント)におけるトークンの有効期限が徒過したため、当該アカウントの再認証を促す旨“トークンの有効期限が過ぎています。アカウント所有者に通知を送信しました。再認証が済むまで暫くお待ちください。”を通知内容としたメッセージ画面の例示である。
【0096】
図13は、アカウント名“admin@aabbcc.jp”(第1のアカウント)におけるトークンの有効期限が徒過した旨と、当該アカウントの再認証を促す旨とをアカウント所有者(管理者)に対して通知するメール送信画面W30の構成例を説明する図である。
図13は、“トークンの有効期限が過ぎています。プロバイダ“aabbcc”に対する再認証を行ってください。”を通知内容としたメール送信画面の例示である。なお、メール送信画面W30には、アカウント所有者による再認証処理を容易とするため、認証画面へのリンク先L10を含めてもよい。
【0097】
以上のように、第2実施形態によれば、切替えた第2のアカウントに基づき、第1のアカウントのアカウント所有者に対して再認証を促す通知を送信することができるため、第1のアカウントのアカウント所有者は、当該アカウントでの再認証が必要であることを容易に把握することができる。また、第2実施形態では、第2のアカウントへの切替えに基づくメール送信後、第1のアカウントでの再認証が成功した場合、メール送信に係るアカウントを第1のアカウントに切替えることができる。このような構成とすることで、第1のアカウントでの再認証が成功した場合に、アカウントの切替えを、ユーザが手動で行う必要がないといった効果も得ることができる。
【0098】
[3 第3実施形態]
第1のアカウントのトークンの有効期限が徒過し、再認証が必要な場合であって、第1実施形態や第2実施形態で述べた第2のアカウントに基づきメール送信を行おうとしても、第2のアカウントに係るトークンの有効期限が徒過していた場合、メール送信を行うことができず、送信エラーが発生する可能性がある。このような事態を回避するため、第3実施形態では、設定済の第1のアカウントに係るプロバイダと、第2のアカウントとして設定を所望するアカウントに係るプロバイダとが同一のプロバイダである場合に、当該アカウントの第2のアカウントとしての設定を制限することで、例えば、サーバ障害やトークンのリセット等で第1のアカウント及び第2のアカウントの両方でトークンの取得失敗が発生する可能性を低減することが可能な形態である。
【0099】
[3.1 機能構成]
第3実施形態に係る複合機、クラウド、及びメール配信サーバの機能構成は、第1実施形態に係る複合機10、クラウド30、及びメール配信サーバ50の機能構成と同一構成とすることができる。したがって、ここでの説明は省略する。
【0100】
[3.2 処理の流れ]
第3実施形態に係る処理の流れは、
図4を
図14のフローチャートで置き換えた処理とすることができる。したがって、同一の処理については、同一の符号を付してその説明は省略する。
【0101】
制御部11は、受付けたアカウントの認証方式がOAuth認証方式に対応していると判定した場合、受付けたアカウントのプロバイダが、第1のアカウントに係るプロバイダと同一であるか否かを判定する(ステップS40)。制御部11は、受付けたアカウントのプロバイダが、第1のアカウントに係るプロバイダと同一であると判定した場合、当該アカウントの第2のアカウントとしての設定を行うことなく、処理を終了する(ステップS40;Yes→“終了”)。このとき、ユーザに対して第1のアカウントに係るプロバイダとは異なるプロバイダを介して設定を行うよう促す通知を行ってもよい。
【0102】
一方、制御部11は、受付けたアカウントに係るプロバイダが、第1のアカウントに係るプロバイダと同一ではないと判定した場合、当該アカウントを第2のアカウントとして設定し、処理を終了する(ステップS40;No→ステップS16→“終了”)。
【0103】
[3.3 動作例]
図15は、第2のアカウントとしての設定が不可である旨を表示するメッセージ画面M14をSMTP設定画面W10上に重畳して表示した例示である。
【0104】
メッセージ画面M14は、第2のアカウントとして設定を所望するアカウント(アカウント名“admin2@aabbcc.jp”、プロバイダ名“aabbcc”)が第1のアカウントに係るプロバイダ(名)“aabbcc”と同一であるため、第2のアカウントとしての設定が不可である旨“第1のアカウントと同一プロバイダであるため、第2のアカウントとして設定できません。異なるプロバイダを選択してください。”を通知内容としたメッセージ画面の例示である。この場合、管理者は、プロバイダを第1のアカウントに係るプロバイダ“aabbcc”と異なるプロバイダを選択することにより、入力したアカウントを第2のアカウントとして設定することができる。
【0105】
図16は、第2のアカウントとして、第1のアカウントと同一のプロバイダの選択を制限する態様を説明する図である。
図16は、プロバイダの選択を受付けるプルダウンメニューPM12において、第1のアカウントと同一のプロバイダ(プロバイダ名“aabbcc”)をグレーアウト表示し、当該プロバイダの選択を制限した態様の例示である。このように、第2のアカウントの設定の際に、第1のアカウントに係るプロバイダと同一のプロバイダの選択を不可とする制御を行うことも可能である。
【0106】
以上のように、第3実施形態によれば、設定済の第1のアカウントに係るプロバイダと、第2のアカウントとして設定を所望するアカウントに係るプロバイダとが同一のプロバイダにならないように、当該アカウントの第2のアカウントとしての設定を制限することで、第1のアカウントに係るプロバイダと第2のアカウントに係るプロバイダとが同じプロバイダであることに起因して、サーバ障害やトークンのリセット等で第1のアカウント及び第2のアカウントの両方でトークンの取得失敗が発生する可能性を低減することができる。
【0107】
なお、例えば、第1のアカウントの有効期限と第2の有効期限とが所定期間(例えば、3ケ月等)空くようなタイミングで、第2のアカウントを設定するような場合、第2のアカウントとして、第1のアカウントと同一のプロバイダの選択を受付ける態様も可能である。この場合、
図17のメッセージ画面M16で例示するように、例えば、“第1のアカウントの有効期限と、第2のアカウントの有効期限とは3カ月以上空いています。第1のアカウントと同じプロバイダでの設定が可能ですが、異なるプロバイダを選択することをお勧めします。・・・推奨プロバイダ:ddeeff”等のメッセージ画面を表示することで、第2のアカウントとして、第1のアカウントと同一のプロバイダとは異なるプロバイダの選択を促し、注意喚起を図るのが望ましい。
【0108】
なお、上記アカウントに係るプロバイダ判定処理は、クラウド30側で実施することも可能である。この場合、第2のアカウントに係る認証処理の段階で、第1のアカウントに係るプロバイダと、第2のアカウントに係るプロバイダとが同一のプロバイダであると判定した場合、クラウド30は、第2のアカウントに係る認証を拒否するか、異なるプロバイダへの変更を促す通知を複合機10の制御部11に通知すればよい。
【0109】
[4 第4実施形態]
第4実施形態は、第1のアカウントに係るトークンの有効期限と、第2のアカウントに係るトークンとの有効期限とを確認し、これらのアカウントに係るトークンの有効期限が同時に徒過しないように適切な日時に再認証を促すことが可能な形態である。
【0110】
[4.1 機能構成]
第4実施形態に係る複合機、クラウド、及びメール配信サーバの機能構成は、第1実施形態に係る複合機10、クラウド30、及びメール配信サーバの機能構成と同一構成とすることができる。したがって、ここでの説明は省略する。
【0111】
[4.2 処理の流れ]
図18は、第4実施形態に係る処理の流れを説明するフローチャートである。なお、
図14のフローチャートで説明する処理は、制御部11がアカウント管理プログラム235等を読み出すことにより実行する処理である。
【0112】
制御部11は、第2のアカウントの設定後、当該第2のアカウントに係るトークンの有効期限と、第1のアカウントに係るトークンの有効期限とをアカウント管理テーブル2361から読み出す(ステップS50→ステップS52)。
そして、制御部11は、ステップS52において読み出したトークンの有効期限に基づき、再認証を促す旨の通知日時を決定する(ステップS54)。
【0113】
なお、第2のアカウントの設定前に、第1のアカウントに係るトークンの有効期限を読み出し、第2のアカウントに係るトークンの有効期限が所定時間以上空くように第2のアカウントの設定タイミングを制御することも可能である。
【0114】
制御部11は、ステップS54で決定した通知日時をアカウント管理テーブル2361に反映することでアカウントテーブルを更新する(ステップS56)。
【0115】
制御部11は、不図示の計時手段により計時した日時が、再認証を促す旨の通知日時に至ったか否かを判定する(ステップS58)。計時した日時が、再認証を促す旨の通知日時に至ったと判定した場合、制御部11は、再認証を促す旨をアカウント所有者(管理者)等に通知し、処理を終了する(ステップS58;Yes→ステップS60)。なお、計時した日時が、再認証を促す旨の通知日時に至っていないと判定した場合、制御部11は当該通知日時に至るまで不図示の計時手段による計時を継続する(ステップS58;No)。
【0116】
ここで、
図19を用いて、
図18のステップS56に係る更新処理において更新されたアカウント管理テーブル2363について説明する。なお、
図17で例示するアカウント管理テーブル2363は、
図3で例示したアカウント管理テーブル2361で管理する管理項目に加え、再認証通知日時を管理項目として含む。ここで、例えば、ID“01”及びID“02”に係る両アカウントのトークンの発行日が“2023年5月10日”であって、有効期限が“2023年11月10日”であるものとする(有効期間がトークンの発行日から6カ月間)。
【0117】
ここで、例えば、再認証通知日時が決定されず、再認知通知が実行されない形態である場合、ID“01”及びID“02”に係る両アカウントに係るトークンは2023年11月10日に有効期限の期限切れを迎える。
【0118】
しかしながら、
図17での例示のように、ID“01”又はID“02”の何れか一方のアカウントに係るトークン(
図17は、ID“01”に係るトークン)に対して、再認証を促す旨を通知する再認証通知日時をトークンの発行日(2023年5月10日)から、例えば、3カ月後(2023年8月10日)に設定して通知することで、ID“01”又はID“02”の両アカウントに係るトークンが同時(同日)に期限徒過となることを防止することができる。なお、
図17の例示では、ID“01”又はID“02”の何れか一方のアカウントに係るトークンに対して再認証通知日時を設定したが、ID“01”及びID“02”の両アカウントに係るトークンに対して異なる日時の再認証通知日時を設定することも無論可能である。
【0119】
以上のように、第4実施形態によれば、第1のアカウントに係るトークンと第2のアカウントに係るトークンとのどちらか一方又は両方に再認証を促す再認証通知日時を設定することで、第1のアカウントに係るトークンと第2のアカウントに係るトークンの有効期限が同時に徒過することを防止することができる。
【0120】
[5 変形例]
OAuth認証では、アカウント毎に取得可能なトークンの数に制限が設けられる場合もある。アカウントが多くの装置で使用されている態様である場合、トークンの取得数が上限に達すると、メール送信が失敗する可能性はより増大する。このような場合、第2のアカウントやそれ以上の複数個のアカウントを複合機10に対して設定可能とし、メール送信に係るアカウントをローテーションで使用することで、送信エラーの発生を抑制することも可能である。
【0121】
本開示は、認証方式として、OAuth認証以外にも、GNAP(Grant Negotiation and Authorization Protocol)等のトークンベースの認証方式に適用可能である。そして、本開示は上述した各実施の形態に限定されるものではなく、種々の変更が可能である。すなわち、本開示の要旨を逸脱しない範囲内において適宜変更した技術的手段を組み合わせて得られる実施の形態についても本開示の技術的範囲に含まれる。
【0122】
また、上述した実施形態は、説明の都合上、それぞれ別に説明している部分があるが、技術的に可能な範囲で組み合わせて実行してもよいことは勿論である。
【0123】
また、実施形態において各装置で動作するプログラムは、上述した実施形態の機能を実現するように、CPU等を制御するプログラム(コンピュータを機能させるプログラム)である。そして、これら装置で取り扱われる情報は、その処理時に一時的に一時記憶装置(例えば、RAM)に蓄積され、その後、各種ROM(Read Only Memory)やHDD等の記憶装置に格納され、必要に応じてCPUによって読み出し、修正・書き込みが行なわれる。
【0124】
ここで、プログラムを格納する記録媒体としては、半導体媒体(例えば、ROMや、不揮発性のメモリカード等)、光記録媒体・光磁気記録媒体(例えば、DVD(Digital Versatile Disc)、MO(Magneto Optical Disc)、MD(Mini Disc)、CD(Compact Disc)、BD (Blu-ray(登録商標)Disc等))、磁気記録媒体(例えば、磁気テープ、フレキシブルディスク等)等の何れであってもよい。また、ロードしたプログラムを実行することにより、上述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、オペレーティングシステムあるいは他のアプリケーションプログラム等と共同して処理することにより、本開示の機能が実現される場合もある。
【0125】
また、市場に流通させる場合には、可搬型の記録媒体にプログラムを格納して流通させたり、インターネット等のネットワークを介して接続されたサーバコンピュータに転送したりすることができる。この場合、サーバコンピュータの記憶装置も本開示に含まれるのは勿論である。
【0126】
また、上述した実施形態に用いた装置の各機能ブロック、又は諸特徴は、電気回路、例えば、集積回路あるいは複数の集積回路で実装、実行することも可能である。本明細書で述べた機能を実現するように設計された電気回路は、汎用用途プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又はその他のプログラマブル論理デバイス、ディスクリートゲート又はトロンジスタロジック、ディスクリートハードウェア部品、又はこれらを組み合わせたものを含んでもよい。汎用用途プロセッサは、マイクロプロセッサでもよいし、従来型のプロセッサ、コントローラ、マイクロコントローラ、又はステートマシンであってもよい。前述した電気回路は、デジタル回路で構成されていてもよいし、アナログ回路で構成されていてもよい。また、半導体技術の進歩により現在の集積回路に代替する集積回路化の技術が出現した場合、本開示の一以上の態様は当該技術による新たな集積回路を用いることも可能である。
【符号の説明】
【0127】
10 複合機
11 制御部
13 表示部
15 操作入力部
17 通信部
19 画像処理部
21 画像入力部
23 記憶部
231 制御プログラム
232 認証プログラム
233 アプリケーションプログラム
234 ブラウザプログラム
235 アカウント管理プログラム
236 アカウント記憶領域
110 UI/OS
30 クラウド
50 メール配信サーバ