説明

ネットワーク通信方法、ネットワーク通信システム、ネットワーク通信装置、及びそのプログラム

【課題】SNMPを用いたネットワーク通信方法であって、排他的なアクセスを可能にし、さらに、比較的容易な処理で通信セキュリティを向上させることができるネットワーク通信方法、等を提供する。
【解決手段】機器間のSNMPを用いたネットワーク通信方法において、第一機器が第二機器の備える管理情報にアクセスする場合に、第一機器が、識別子領域と値領域から成るデータ領域の、値領域に、第一機器の機器識別情報又はユーザー識別情報を含む付加情報を加えた、アクセス要求メッセージを生成して第二機器へ送信する工程と、第二機器が、当該メッセージに含まれる機器識別情報又はユーザーの識別情報と、その時点で管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記メッセージによって要求されるアクセスの許可/不許可を決定する工程と、を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、SNMP(Simple Network Management Protocol)を用いたネットワーク通信方法等に関し、特に、排他的なアクセスを可能にし、さらに、比較的容易な処理で通信セキュリティを向上させることができるネットワーク通信方法等に関する。
【背景技術】
【0002】
従来より、ネットワーク管理用プロトコルとしてSNMP(簡易ネットワーク管理プロトコル)が使用されており、ネットワーク上の管理装置(SNMPマネージャ)と被管理装置(SNMPエージェント)の間で、当該プロトコルを用いた管理情報の通信が行われている。SNMPマネージャは、SNMPを用いて、SNMPエージェントが備える管理情報データベースMIB(Management Information Base)にアクセスし、管理情報の取得、設定が可能である。例えば、SNMPエージェントとしてのプリンターに、SNMPマネージャとしてのホストコンピューターからアクセスし、プリント条件の設定を行ったり、エラー状態などステータス情報を取得したりすることが行われている。
【0003】
このように、プリンター等のネットワーク機器が持つ管理情報(ステータス、設定値等)にリモートからアクセスする手段としてSNMPが用いられるが、そのVersion 1(SNMPv1)及びVersion 2c(SNMPv2c)が普及している。
【0004】
SNMPv1及びSNMPv2cは、管理情報へのアクセスを制限するためにコミュニティ名による簡易な認証機能を備えているが、このコミュニティ名はネットワーク上を平文で流れるため容易に読み取り可能であり、悪意ある第三者による管理情報への不正アクセスを完全に防げるものではない、という課題がある。
【0005】
また、SNMPv1及びSNMPv2cでは、通信される管理情報自体も平文でネットワーク上を流れるため、ネットワークの盗聴による情報の漏洩に対して無防備である。
【0006】
さらに、SNMPv1及びSNMPv2cには、管理情報に対して排他的にアクセスを行う機能が備えられておらず、複数のユーザー(SNMPマネージャ)からの同時アクセスにより、管理情報の不整合が発生するなど、意図した情報の取得、設定ができない虞もある。
【0007】
このようなSNMPv1及びSNMPv2cの課題に対して、下記特許文献1では、認証に関し、コミュニティ名だけで侵入者が管理データにアクセスできないようにするための提案がなされている。
【0008】
また、SNMPの上位バージョンであるSNMP version 3(SNMPv3)では、高度な認証機能及び暗号化機能が提供されている。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特表2009−522702号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、上記特許文献1に提案の方法では、ネットワーク上の盗聴や上述した同時アクセスの問題が解決され得ない。
【0011】
また、SNMPv3は、幅広いセキュリティ上の脅威に対応する仕様となっているため、機器によっては過度な処理が要求されるという課題があり、また、上述した同時アクセスの問題については対応していない。
【0012】
従って、SNMPv1及びSNMPv2cにおいて、排他的にアクセスを行う機能と比較的軽い処理による認証、暗号化機能を実現することが望まれるところである。
【0013】
そこで、本発明の目的は、SNMPを用いたネットワーク通信方法であって、排他的なアクセスを可能にし、さらに、比較的容易な処理で通信セキュリティを向上させることができるネットワーク通信方法、等を提供することである。
【課題を解決するための手段】
【0014】
上記の目的を達成するために、本発明の一つの側面は、ネットワークを介して接続される機器間の簡易ネットワーク管理プロトコルを用いたネットワーク通信方法が、第一機器が第二機器の備える管理情報にアクセスする場合に、前記第一機器が、アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該第一機器の機器識別情報又は当該第一機器のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記第二機器へ送信する工程と、前記第二機器が、前記送信されたメッセージに含まれる前記機器識別情報又は前記ユーザーの識別情報と、その時点で前記管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記送信されたメッセージによって要求されるアクセスの許可/不許可を決定する工程と、を有する、ことである。
【0015】
更に、上記の発明において、その好ましい態様は、前記第一機器が送信するアクセス要求メッセージの、前記識別子領域には、当該メッセージに前記付加情報が含まれることを示す情報が格納され、前記値領域には、前記アクセス対象の識別情報とその値が格納される、ことを特徴とする。
【0016】
更にまた、上記の発明において、好ましい態様は、前記アクセスの許可/不許可を決定する際の前記所定数が1である、ことを特徴とする。
【0017】
更に、上記の発明において、その好ましい態様は、前記第二機器は、前記アクセスの許可を決定した場合に、前記送信されたメッセージに含まれる前記機器識別情報又は前記ユーザーの識別情報を、前記アクセス中の機器又はユーザーの情報として記憶する、ことを特徴とする。
【0018】
更にまた、上記の発明において、好ましい態様は、前記第一機器が送信するアクセス要求メッセージの前記付加情報には、送信元を認証するための情報が含まれ、前記第二機器は、当該認証をするための情報に基づいて認証処理を実行する、ことを特徴とする。
【0019】
更に、上記の発明において、その好ましい態様は、前記認証をするための情報には、前記送信されたメッセージに基づいて生成されたコードが含まれる、ことを特徴とする。
【0020】
更にまた、上記の発明において、その好ましい態様は、前記第一機器が送信するアクセス要求メッセージにおける、前記アクセス対象の識別情報とその値についてのデータが暗号化され、当該暗号化に関する情報が当該メッセージの前記付加情報に含まれ、前記第二機器は、当該暗号化に関する情報に基づいて、前記暗号化されたデータを復号する、ことを特徴とする。
【0021】
上記の目的を達成するために、本発明の別の側面は、1以上の第一機器と、当該第一機器とネットワークを介して簡易ネットワーク管理プロトコルを用いた通信を行う第二機器とを備えるネットワーク通信システムにおいて、前記第一機器が前記第二機器の備える管理情報にアクセスする場合に、前記第一機器は、アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該第一機器の機器識別情報又は当該第一機器のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記第二機器へ送信し、前記第二機器は、前記送信されたメッセージに含まれる前記機器識別情報又は前記ユーザーの識別情報と、その時点で前記管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記送信されたメッセージによって要求されるアクセスの許可/不許可を決定する、ことである。
【0022】
上記の目的を達成するために、本発明の更に別の側面は、ネットワークを介して接続される他の機器と簡易ネットワーク管理プロトコルを用いて通信を行うネットワーク通信装置が、前記他の機器が備える管理情報にアクセスする場合に、アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該ネットワーク通信装置の機器識別情報又は当該装置のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記他の機器へ送信し、前記他の機器から前記アクセス要求メッセージと同様のメッセージを受信した場合に、前記受信したメッセージに含まれる前記他の機器の前記機器識別情報又は前記他の機器の前記ユーザーの識別情報と、その時点で当該ネットワーク通信装置が備える管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記受信したメッセージによって要求されるアクセスの許可/不許可を決定する、ことである。
【0023】
上記の目的を達成するために、本発明の別の側面は、ネットワークを介して接続される他の機器と簡易ネットワーク管理プロトコルを用いて通信を行うネットワーク通信装置に、通信処理を実行させるプログラムが、前記他の機器が備える管理情報にアクセスする場合に、アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該ネットワーク通信装置の機器識別情報又は当該装置のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記他の機器へ送信する工程を、前記ネットワーク通信装置に実行させ、前記他の機器から前記アクセス要求メッセージと同様のメッセージを受信した場合に、前記受信したメッセージに含まれる前記他の機器の前記機器識別情報又は前記他の機器の前記ユーザーの識別情報と、その時点で当該ネットワーク通信装置が備える管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記受信したメッセージによって要求されるアクセスの許可/不許可を決定する工程を、前記ネットワーク通信装置に実行させる、ことである。
【0024】
本発明の更なる目的及び、特徴は、以下に説明する発明の実施の形態から明らかになる。
【図面の簡単な説明】
【0025】
【図1】本発明を適用したネットワーク通信システムの実施の形態例に係る構成図である。
【図2】拡張メッセージの構造を説明するための図である。
【図3】ログイン時の処理手順を例示したフローチャートである。
【図4】送受信される拡張メッセージの生成過程及び受信後の処理過程を示す図である。
【図5】ログインセッション中における通信処理の手順を例示したフローチャートである。
【発明を実施するための形態】
【0026】
以下、図面にしたがって本発明の実施の形態について説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【0027】
図1は、本発明を適用したネットワーク通信システムの実施の形態例に係る構成図である。図1に示すネットワーク通信システム100が本実施の形態例に係るシステムであり、ネットワーク3で接続される、SNMPマネージャとしての1以上のホストコンピューター1とSNMPエージェントとしてのプリンター2から構成される。当該システムでは、ホストコンピューター1とプリンター2間の通信において、SNMPv1に則った独自の拡張メッセージが用いられ、当該メッセージの拡張部分に含まれるホストコンピューター1の機器識別情報(機器ID)に基づいて、プリンター2の管理情報23に対する排他的なアクセス、すなわち、複数ユーザーの同時アクセスを許さない制御が実行される。また、当該拡張メッセージにおいては、実際のデータ部分は暗号化されるが、上記拡張部分に、認証のための情報及び暗号化の情報が含まれるので、受信側機器は、これらの情報に基づいて送信元の認証及び暗号化されたデータの復号が可能となり、SNMPv1において通信セキュリティの向上を図ることができる。
【0028】
なお、図1では、複数のホストコンピューター1と1台のプリンター2が示されるが、ネットワーク3を介して接続されるプリンターは複数存在しても構わない。また、本実施の形態例では、SNMPv1を用いるが、SNMPv2cを用いてもよい。
【0029】
ホストコンピューター1は、一般的なパーソナルコンピューター等で構成され、図示していないが、CPU、RAM、HDD、通信インターフェース、表示装置、操作装置等を備える。当該ホストコンピューター1は、プリンター2に印刷指示を行うプリンター2のホスト装置として機能するが、上述したように、SNMPマネージャとしてプリンター2の管理情報23にアクセスし、当該情報の取得及び設定を行う機能を有する。
【0030】
当該機能を司るのが、図1に示す管理ツール11であり、プリンター2の管理者は当該ツールを使用して、プリンター2の設定値を変更したり、プリンター2のステータス情報を取得したりする。当該管理ツール11は、プリンター2に関する上記管理情報の取得、設定に係る処理を実行するためのプログラム、当該プログラムに従って処理を実行する上記CPU、処理中のデータを保持する上記RAM、当該プログラムが格納される上記HDD等で構成される。また、当該プログラムは、プリンター2のユーティリティソフトウェアとして、CDからインストールされる、あるいは、インターネット等を介して所定のサイトからダウンロードされる、ことにより備えられる。
【0031】
また、ホストコンピューター1の上記HDDには、当該機器の識別情報である機器IDと、前述した認証及び暗号化のための認証/暗号化キーが記憶されている。機器IDは、SNMPの拡張メッセージを用いる場合の識別情報であり、予め決定されて記憶されている。また、認証/暗号化キーは、プリンター2側にも保持される共有キーであり、これも予め決定されて記憶されている。
【0032】
次に、プリンター2は、上記ホストコンピューター1からの印刷指示に従って印刷を実行する機器であり、図1に示すように、コントローラー21、印刷実行部22、管理情報23などを備える。また、上述の通り、SNMPエージェントとしてホストコンピューター1からのアクセスを受ける。
【0033】
コントローラー21は、機器全体を制御する部分であり、特に、上記印刷指示を受けた場合には、印刷データの処理、印刷実行部22への印刷指示等を実行する。また、管理情報23に対するホストコンピューター1からのアクセスに応答する処理も実行する。なお、コントローラー21は、CPU、RAM、ROM、NVRAM、ASIC、HDD等で構成され、上記アクセスに対する応答処理は、上記ROMに記憶されたプログラムと当該プログラムに従った上記CPUの動作によって実行される。
【0034】
印刷実行部22は、コントローラー21の指示に従って印刷媒体に対して印刷処理を実行する部分である。
【0035】
次に、管理情報23は、プリンター2の各種管理情報であり、MIBとして上記HDDに格納される。管理情報23には、プリンター2の各種動作のための設定値(例えば、デフォルトの各印刷条件)やプリンター2の状態を示すステータス情報(例えば、各エラー情報)などが含まれ、上述したホストコンピューター1からのSNMPによるアクセスを受ける。
【0036】
以上説明したような構成を有する本ネットワーク通信システム100では、上述のとおり、SNMPv1に則った拡張メッセージを用いて通信を行うことに特徴があり、以下、この拡張メッセージについて説明する。図2は、拡張メッセージの構造を説明するための図である。
【0037】
図2の(a)は、SNMPv1によるメッセージ(図中のA)のデータ構造を示している。図示されるように、SNMPv1メッセージには、データユニット(PDU)の領域(図中のB)があり、その中にデータを格納するためのデータリストの領域(図中のC)がある。データリストの領域には、複数のデータが格納できる構造となっており、一つのデータを格納する領域(図中のD)は、識別子(OID)を格納する領域(図中のE)と値(Value)を格納する領域(図中のF)から構成されている。
【0038】
識別子(OID)は、アクセスするMIBオブジェクトの識別子であり、換言すれば、アクセス対象の管理情報を識別する情報である。また、値(Value)は、当該識別子で特定される管理情報の値である。これら識別子と値が対となって1つのデータを構成している。
【0039】
本実施の形態例における拡張メッセージは、このようなSNMPv1の標準構造に則った上で、上記値(Value)の領域に各種の情報を格納し、新たな機能を実現させるものである。図2の(b)は、拡張メッセージとしてSNMPv1メッセージを用いる場合の、上記値(Value)の領域におけるデータ構造を示している。
【0040】
図に示すように、拡張メッセージでは、上記値(Value)の領域(図中のF)が、付加情報の領域(図中のG)とデータリストの領域(図中のFC)から構成される。付加情報は、拡張メッセージで新たに実現する各機能のための情報であり、具体的には、排他的アクセスのための上述した機器ID、暗号化機能のための暗号化アルゴリズム種別及び暗号化パラメータ、認証機能のための認証コードなどの情報が含まれる。
【0041】
暗号化アルゴリズム種別は、暗号化の手法を特定する情報であり、暗号化パラメータは、暗号化手法によっては必要となるパラメータの情報である。また、認証コードは、アクセス先で認証を得るために送信側で生成するコードであり、付加情報の領域内に収められる(図中のH)。
【0042】
これらの付加情報は、受信側の機器で解釈され、各機能を実現するために用いられる。
【0043】
次に、データリストの領域(図中のFC)には、上述したSNMPv1の標準構造におけるデータリストの領域(図中のC)の情報が格納され、従って、図に示すように、識別子領域(図中のFE)及び値領域(図中のFF)からなるデータ領域(図中のFD)が1以上格納される。これらデータ領域には、上述した標準構造の場合と同様の情報が格納される。
【0044】
このように、拡張メッセージでは、SNMPv1メッセージの値(Value)領域に、データユニット(PDU)に収められる情報がカプセル化された構造となっている。また、この拡張メッセージを使用する場合には、カプセル化された情報を収める値(Value)領域と対をなす識別子(OID)領域(図中のE)に、当該拡張メッセージであることを示す情報(拡張メッセージ用の識別子)が格納される。当該拡張メッセージ用の識別子は、そのメッセージに付加情報が含まれることを示す情報でもある。
【0045】
以上説明したような構造を有する拡張メッセージが、本実施の形態例におけるネットワーク通信システム100では用いられ、ホストコンピューター1の管理ツール11及びプリンター2のコントローラー21の双方で拡張メッセージの生成及び解釈がなされる。
【0046】
次に、当該拡張メッセージを用いた通信処理の具体的な処理手順について説明する。まず、ホストコンピューター1からプリンター2の管理情報23へログインする際の処理について説明する。図3は、ログイン時の処理手順を例示したフローチャートである。図3の(a)は、ホストコンピューター1側の処理を示している。まず、プリンター2の管理情報23にアクセスをしたいプリンター2の管理者等が管理ツール11に対してログインを要求する操作を行うと、管理ツール11は、ログイン用拡張メッセージの生成を実行する(ステップS10)。
【0047】
当該処理の具体的な処理手順は図3の(b)に示され、まず、ログイン要求データを生成する(ステップS11)。具体的には、図2に示したFEとFFの領域に格納する、ログインを要求する情報を生成する。識別子領域FEに対しては、ログイン又はログアウトの要求であることを示す識別情報が生成され、値領域FFに対しては、ログインである旨を示す情報が生成される。
【0048】
図4は、送受信される拡張メッセージの生成過程及び受信後の処理過程を示す図である。図4の(a)は、拡張メッセージの生成過程を示しており、上記生成したログイン要求データは、当該図においては送信データ(a−1)に相当する。
【0049】
図3に戻って、次に、管理ツール11は、生成したログイン要求データ(送信データ)の暗号化処理を行う(ステップS12)。当該暗号化処理では、所定の暗号化手法に従って、前述した認証/暗号化キーを用いてログイン要求データを暗号化し、使用した暗号化アルゴリズムの種別の情報を付加情報とする。また、暗号化パラメータを必要とする手法を用いた場合には、その暗号化パラメータも付加情報として付加する(ステップS13)。
【0050】
図4では、ホストコンピューター1が保持する前述した認証/暗号化キー(a−2)が暗号化に使用され、送信データ(a−1)が暗号化された送信データ(a−3)になる。また、付加情報(a−4)に暗号化アルゴリズム種別及び必要に応じて暗号化パラメータが付与される。
【0051】
なお、暗号化手法としては、従前の各種方法を用いることができ、予め定められた幾つかの手法の中から、管理ツールの操作者の指示あるいは所定のルールに従って、使用する手法を決定する。
【0052】
次に、管理ツール11は、機器IDを付加情報として付与する(ステップS14)。前述のように、ホストコンピューター1には当該機器の機器IDが保持されているのでその情報を読み出して付与する。図4では、付加情報(a−4)に付与される。また、認証アルゴリズム種別も付加情報として付与される。
【0053】
その後、管理ツール11は、認証コードを生成して付加情報とする(ステップS15)。認証コードは、図4に示されるように、生成された付加情報(a−4)及び暗号化された送信データ(a−3)と、上記認証/暗号化キー(a−2)を用いて上記認証アルゴリズム種別に示される方法で生成する。なお、認証コードが生成される前の時点においては、認証コードが格納される領域には全て0の値が入れられる。
【0054】
認証コードを生成する手法には各種の方法を用いることができるが、例えば、上記生成に使用するデータのハッシュ値を用いる方法を取ることができる。そして、この生成手法は、予め定められた幾つかの手法の中から、管理ツールの操作者の指示あるいは所定のルールに従って、使用する手法を決定し、その認証アルゴリズム種別が上述のとおり付加情報とされる。
【0055】
このようにして生成された認証コード(a−5)は、図4に示すように、認証コードの領域(図2のH)の情報として、これまで生成した付加情報に付与される(a−6)。換言すれば、上記全て0の値が生成した認証コードに置き換わる。
【0056】
以上の処理で、ログイン用拡張メッセージの拡張部分が生成されるので、管理ツール11は、生成した付加情報と暗号化された送信データを、SNMPv1メッセージの値(Value)領域(図2のF)に格納すると共に、上述した拡張メッセージ用識別子を識別子(OID)領域(図2のE)に格納し、SNMPv1メッセージを完成させる。すなわち、上記生成した拡張部分をSNMPメッセージにカプセル化する(ステップS16)。
【0057】
図4では、これまでに生成した情報が値(Value)領域(a−7)に格納され、拡張メッセージ用識別子が識別子(OID)領域(a−8)に格納される。
【0058】
このようにして、ログイン用拡張メッセージがSNMPv1メッセージとして生成されると、管理ツール11は、当該メッセージをプリンター2へ送信する(ステップS20)。
【0059】
図3の(c)は、当該メッセージを受信するプリンター2側の処理手順を示しており、また、図4の(b)は、その受信したメッセージに対する処理過程を示している。プリンター2のコントローラー21は、上記送信されたログイン用拡張メッセージを受信し(ステップS30)、その識別子(OID)領域に格納されている拡張メッセージ用識別子から当該メッセージが拡張メッセージであると判断し、まず、この時点で、管理情報23に他の機器がログイン中であるか否かを確認する(ステップS40)。
【0060】
プリンター2では、前述した管理情報23への同時アクセスによる問題を防ぐために、管理情報23へ同時にアクセスすることのできる機器数(ユーザー数)を、一例として1に制限する仕様としている。すなわち、他の機器が管理情報23にログイン中(アクセス中)である場合には、ログイン、アクセスを許さない仕様としている。
【0061】
後述するように、プリンター2では、ログインを許可した際に、ログインしたホストコンピューター1の機器IDを上記RAMに保持するようにしているため、上記確認(S40)では、その保持した機器IDと今回受信したメッセージの付加情報に含まれる機器IDを比較し(図4では(b−1))、双方が異なっていれば、他の機器がログイン中であると判断する。一方、双方が同じである、又は、RAMに機器IDを保持していない場合には、他の機器がログイン中ではないと判断する。
【0062】
当該確認の結果、他の機器がログイン中であると判断した場合には(ステップS40のYes)、コントローラー21は、当該受信したメッセージによる要求を受け付けず、すなわち、アクセスを許可せず、その旨のエラー応答を送信元のホストコンピューター1に行って(ステップS100)、当該ログイン処理を終了する。なお、当該応答メッセージも拡張メッセージによって行われる。
【0063】
一方、他の機器がログイン中ではないと判断した場合には(ステップS40のNo)、コントローラー21は、認証の処理を行う(ステップS50)。当該認証の処理では、図4に示されるように、まず、受信したメッセージの付加情報に含まれる認証コードを取り出して保持する(b−2)。その後、認証コードが格納されていた領域の値を全て0にした拡張部分、すなわち、付加情報と暗号化された送信データ(b−6)と、プリンター2が保持していた認証/暗号化キー(b−4)を用いて、当該付加情報に含まれる認証アルゴリズム種別が示す方法で、認証コードを生成する(b−5)。そして、生成した認証コード(b−5)と上記保持した認証コード(b−2)を比較し、一致すれば認証成功と判断し、一致しなければ認証失敗と判断する。
【0064】
認証が失敗した場合には(ステップS50の失敗)、送信先が保持する認証/暗号化キーが正しくないものである、又は、送信されたデータが通信途中で改竄された、虞があるため、コントローラー21は、当該メッセージを受け付けず、エラー応答を送信元のホストコンピューター1に行って(ステップS100)、当該ログイン処理を終了する。
【0065】
一方、認証が成功した場合には(ステップS50の成功)、当該メッセージが正しい送信先から送られ、通信途中でデータの改竄もされていないと判断して、コントローラー21は、当該メッセージを受け付けて応答処理をすべく、暗号化された部分の復号処理を行う(ステップS60)。当該復号処理では、図4に示すように、暗号化された送信データ(b−6)を、プリンター2が保持していた認証/暗号化キー(b−4)を用いて、付加情報に含まれる暗号化アルゴリズム種別が示す方法で、必要に応じて付加情報に含まれる暗号化パラメータを用いて、復号し、元の送信データ(b−7)を生成する。
【0066】
その後、コントローラー21は、復号された送信データを解釈し、この場合には、上記ホストコンピューター1により生成されたログイン要求データを解釈し、ログインが要求されていると判断する。ここでは、上記S40の判断で、他の機器がログインしていないので、当該ログイン要求を受け付け、管理情報23へのログインを許可し、当該メッセージの付加情報に含まれる機器IDをログイン中の機器を特定する情報として上記RAMに記憶する(ステップS70)。当該記憶された機器IDが上述したS40の判断に用いられる。
【0067】
次に、コントローラー21は、当該許可したログインのログインセッションを開始し(ステップS80)、ログインが成功した旨の応答を送信元のホストコンピューター1に行って(ステップS90)、当該ログイン処理を終了する。なお、当該応答メッセージも拡張メッセージによって行われる。
【0068】
次に、ログインセッション中における通信処理について説明する。図5は、ログインセッション中における通信処理の手順を例示したフローチャートである。ここでは、ホストコンピューター1がプリンター2の管理情報23にアクセスしその情報を取得したり設定したりするためのメッセージが、拡張メッセージとしてホストコンピューター1からプリンター2へ送信され、プリンター2ではその拡張メッセージを受信し、受信したメッセージに対する処理が実行される。
【0069】
図5の(a)及び(b)は、ホストコンピューター1側の処理を示しており、まず、管理ツール11は、送信するデータを拡張メッセージとして生成する(ステップ110)。具体的には、前述したログイン用拡張メッセージの生成の場合と同様に(図3のS11−S16)、送信データの生成、暗号化、暗号化パラメータの付与、機器IDの付与、認証コードの生成、付与、及びSNMPメッセージへのカプセル化(ステップS111−S116)を実行する。なお、送信データは、ここでは、ログイン要求データではないので、アクセスする内容に応じた、アクセス対象の識別子とその値が格納される。
【0070】
図5の(c)は、プリンター2側の処理を示しており、コントローラー21は、上記拡張メッセージを受信して(ステップS130)、その識別子(OID)領域に格納されている拡張メッセージ用識別子から当該メッセージが拡張メッセージであると判断する。その後、コントローラー21は、機器IDの確認を行う(ステップS140)。当該確認は、ログイン用拡張メッセージの場合のステップS40と同様の処理であり、送信された機器IDとプリンター2に保持されている機器IDが不一致の場合には(ステップS140の不一致)、複数機器の同時アクセスを認めないので、コントローラー21は、当該メッセージを受け付けず、エラー処理を実行して(ステップS180)当該通信処理を終了する。具体的には、図3のステップS100の場合と同様のエラー応答が行われる。
【0071】
一方、送信された機器IDとプリンター2に保持されている機器IDが一致した場合には(ステップS140の一致)、ログイン用拡張メッセージの場合と同様に(図3のS50及びS60)、コントローラー21は、認証及び復号の処理を実行する(ステップS150及びS160)。認証に失敗した場合には(ステップS150の失敗)、当該メッセージを受け付けず、エラー処理を実行して(ステップS180)当該通信処理を終了する。具体的には、図3のステップS100の場合と同様のエラー応答が行われる。
【0072】
復号処理の後は、コントローラー21は、復号した送信データの内容を解釈し、その要求に応じたデータ処理を実行する(ステップS170)。例えば、送信データの内容が、所定の管理情報の値を取得することを要求するものであれば、その値を返答する拡張メッセージを生成して、送信元のホストコンピューター1に返信する。
【0073】
このようにして、データ処理が実行されると当該通信処理が終了する。
【0074】
なお、ログアウトは、ログイン中のホストコンピューター1から、ログイン用拡張メッセージの場合と同様に、ログアウトを要求する拡張メッセージをプリンター2に送信することによって実行される。また、当該ログアウトの要求メッセージが受信されなくても、プリンター2側で、時間によりログアウトを実行するようにしても良い。そして、ログアウトが実行された場合には、上述のRAMに記憶する機器IDを削除する。
【0075】
なお、以上説明した例では、ログイン可能な機器数(可能なログインセッション数、同時アクセス可能な機器数)を1としたが、同時アクセスによる弊害が抑えられる範囲で、2以上としてもよい。この場合には、プリンター2側で、ログイン中(アクセス中)の全ての機器IDを保持し、新たな拡張メッセージを受信する度に、ログインセッション数が定められた数を超えないように、アクセスの許可/不許可を判断する。
【0076】
また、以上の例では、排他的アクセスに機器IDを用いたが、上述した管理者等のユーザーIDを用いることもできる。これにより、ログイン可能なユーザー数を制限することができる。この場合には、拡張メッセージの付加情報に、機器IDに換わってユーザーIDが付与される。
【0077】
また、以上の例では、ホストコンピューター1がSNMPマネージャであり、プリンター2がSNMPエージェントであったが、1つの機器、例えば、自らの管理情報(MIB)を有するコンピューターが、SNMPマネージャとして他の機器の管理情報にアクセスすると共に、SNMPエージェントとして他の機器から管理情報に対するアクセスを受ける、という場合も想定され、このような場合にも、拡張メッセージを用いることができる。この場合、上記の説明で、ホストコンピューター1が実行する処理とプリンター2が実行する処理の両方を、一つの機器で実行することが可能になる。
【0078】
以上説明したように、本実施の形態例におけるネットワーク通信システム100では、SNMPv1に則った拡張メッセージを使用し、その拡張部分にアクセス元の識別情報を含めることで、比較的簡便な処理で、管理情報に対する排他的なアクセスが可能になり、同時アクセスによる問題を解消することができる。
【0079】
また、上記拡張部分に認証のための情報が付与されて、認証機能が実現されるため、SNMPv1において、もなりすましなどのセキュリティ上の問題を解決することができる。
【0080】
さらに、上記認証のために生成される認証コードには、送信するデータ自体が用いられ、通信途中のデータの改竄による問題も解消することができる。
【0081】
また、上記拡張部分に暗号化情報を付与し、送信データを暗号化するので、暗号化機能が実現され、SNMPv1において、盗聴などの弊害を抑えることができる。
【0082】
なお、上記実施の形態例では、SNMPエージェントがプリンターであったが、管理情報(MIB)を備える通信可能な機器であれば本発明を適用することができる。
【0083】
本発明の保護範囲は、上記の実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
【符号の説明】
【0084】
1 ホストコンピューター、 2 プリンター、 3 ネットワーク、 11 管理ツール、 21 コントローラー、 22 印刷実行部、 23 管理情報

【特許請求の範囲】
【請求項1】
ネットワークを介して接続される機器間の簡易ネットワーク管理プロトコルを用いたネットワーク通信方法であって、
第一機器が第二機器の備える管理情報にアクセスする場合に、
前記第一機器が、アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該第一機器の機器識別情報又は当該第一機器のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記第二機器へ送信する工程と、
前記第二機器が、前記送信されたメッセージに含まれる前記機器識別情報又は前記ユーザーの識別情報と、その時点で前記管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記送信されたメッセージによって要求されるアクセスの許可/不許可を決定する工程と、を有する
ことを特徴とするネットワーク通信方法。
【請求項2】
請求項1において、
前記第一機器が送信するアクセス要求メッセージの、前記識別子領域には、当該メッセージに前記付加情報が含まれることを示す情報が格納され、前記値領域には、前記アクセス対象の識別情報とその値が格納される
ことを特徴とするネットワーク通信方法。
【請求項3】
請求項1あるいは請求項2において、
前記アクセスの許可/不許可を決定する際の前記所定数が1である
ことを特徴とするネットワーク通信方法。
【請求項4】
請求項1乃至請求項3のいずれかにおいて、
前記第二機器は、前記アクセスの許可を決定した場合に、前記送信されたメッセージに含まれる前記機器識別情報又は前記ユーザーの識別情報を、前記アクセス中の機器又はユーザーの情報として記憶する
ことを特徴とするネットワーク通信方法。
【請求項5】
請求項1乃至請求項4のいずれかにおいて、
前記第一機器が送信するアクセス要求メッセージの前記付加情報には、送信元を認証するための情報が含まれ、
前記第二機器は、当該認証をするための情報に基づいて認証処理を実行する
ことを特徴とするネットワーク通信方法。
【請求項6】
請求項5において、
前記認証をするための情報には、前記送信されたメッセージに基づいて生成されたコードが含まれる
ことを特徴とするネットワーク通信方法。
【請求項7】
請求項2乃至請求項6のいずれかにおいて、
前記第一機器が送信するアクセス要求メッセージにおける、前記アクセス対象の識別情報とその値についてのデータが暗号化され、当該暗号化に関する情報が当該メッセージの前記付加情報に含まれ、
前記第二機器は、当該暗号化に関する情報に基づいて、前記暗号化されたデータを復号する
ことを特徴とするネットワーク通信方法。
【請求項8】
1以上の第一機器と、当該第一機器とネットワークを介して簡易ネットワーク管理プロトコルを用いた通信を行う第二機器とを備えるネットワーク通信システムであって、
前記第一機器が前記第二機器の備える管理情報にアクセスする場合に、
前記第一機器は、アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該第一機器の機器識別情報又は当該第一機器のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記第二機器へ送信し、
前記第二機器は、前記送信されたメッセージに含まれる前記機器識別情報又は前記ユーザーの識別情報と、その時点で前記管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記送信されたメッセージによって要求されるアクセスの許可/不許可を決定する
ことを特徴とするネットワーク通信システム。
【請求項9】
ネットワークを介して接続される他の機器と簡易ネットワーク管理プロトコルを用いて通信を行うネットワーク通信装置であって、
前記他の機器が備える管理情報にアクセスする場合に、
アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該ネットワーク通信装置の機器識別情報又は当該装置のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記他の機器へ送信し、
前記他の機器から前記アクセス要求メッセージと同様のメッセージを受信した場合に、
前記受信したメッセージに含まれる前記他の機器の前記機器識別情報又は前記他の機器の前記ユーザーの識別情報と、その時点で当該ネットワーク通信装置が備える管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記受信したメッセージによって要求されるアクセスの許可/不許可を決定する
ことを特徴とするネットワーク通信装置。
【請求項10】
ネットワークを介して接続される他の機器と簡易ネットワーク管理プロトコルを用いて通信を行うネットワーク通信装置に、通信処理を実行させるプログラムであって、
前記他の機器が備える管理情報にアクセスする場合に、
アクセス対象の識別情報を格納するための識別子領域と当該アクセス対象の値を格納するための値領域から成るデータ領域の、前記値領域に、少なくとも、当該ネットワーク通信装置の機器識別情報又は当該装置のユーザーの識別情報を含む付加情報を加えた、アクセス要求メッセージを生成し、当該生成したメッセージを前記他の機器へ送信する工程を、前記ネットワーク通信装置に実行させ、
前記他の機器から前記アクセス要求メッセージと同様のメッセージを受信した場合に、
前記受信したメッセージに含まれる前記他の機器の前記機器識別情報又は前記他の機器の前記ユーザーの識別情報と、その時点で当該ネットワーク通信装置が備える管理情報にアクセス中の機器又はユーザーの情報に基づいて、アクセス中の機器又はユーザーの数が所定数を超えないように、前記受信したメッセージによって要求されるアクセスの許可/不許可を決定する工程を、前記ネットワーク通信装置に実行させる
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−137911(P2012−137911A)
【公開日】平成24年7月19日(2012.7.19)
【国際特許分類】
【出願番号】特願2010−289338(P2010−289338)
【出願日】平成22年12月27日(2010.12.27)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】