(57)【特許請求の範囲】
【請求項１】
制御装置に接続されるプログラマブル表示器であって、
前記プログラマブル表示器にアクセスするユーザを識別するためのユーザ管理手段と、
前記ユーザ管理手段によって識別されたユーザに付与されている権限に応じて、前記制御装置からの情報を含むインターフェイス画面を生成する生成手段と、
前記インターフェイス画面を出力する表示部と、
外部装置からのユーザのアクセス要求に応答して、前記ユーザ管理手段による当該ユーザの識別結果に基づいて当該外部装置との接続を確立するとともに、前記インターフェイス画面を接続が確立された外部装置へ送出する接続管理手段とを備え、
前記ユーザ管理手段は、それぞれ異なる権限が付与されている複数のユーザの前記プログラマブル表示器への同時アクセスを阻害する、プログラマブル表示器。
【請求項２】
前記ユーザ管理手段は、第１の権限が付与されている第１のユーザが前記プログラマブル表示器にアクセスしている状態で、前記第１の権限より低い第２の権限が付与されている第２のユーザが前記プログラマブル表示器にアクセスしようとすると、前記第１のユーザとしての前記プログラマブル表示器へのアクセスを無効化する、請求項１に記載のプログラマブル表示器。
【請求項３】
前記ユーザ管理手段は、第１の権限が付与されている第１のユーザが前記プログラマブル表示器にアクセスしている状態で、前記第１の権限より低い第２の権限が付与されている第２のユーザが前記プログラマブル表示器にアクセスしようとすると、前記第２のユーザのアクセスの試みを前記第１のユーザへ通知する、請求項１に記載のプログラマブル表示器。
【請求項４】
前記ユーザ管理手段は、前記第１のユーザによる指示に応答して、前記第２のユーザの前記プログラマブル表示器へのアクセスを有効化しない、請求項３に記載のプログラマブル表示器。
【請求項５】
前記ユーザ管理手段は、前記第１のユーザによる指示に応答して、前記第１のユーザとしての前記プログラマブル表示器へのアクセスを無効化する、請求項３に記載のプログラマブル表示器。
【請求項６】
前記ユーザ管理手段は、前記第１のユーザによる指示に応答して、前記インターフェイス画面への前記第２のユーザのアクセスを前記第１のユーザより制限した状態で許容する、請求項３に記載のプログラマブル表示器。
【請求項７】
前記ユーザ管理手段は、第１の権限が付与されている第１のユーザに向けて生成されたインターフェイス画面に対する、前記第１の権限より低い第２の権限が付与されている第２のユーザによるアクセスを制限する、請求項１に記載のプログラマブル表示器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置を含む制御システムの閲覧や操作を行なうためのプログラマブル表示器に関する。
【背景技術】
【０００２】
一般的な製造現場では、ＰＬＣ（Programmable Logic Controller）と称される制御装置を用いて、製造装置やロボットなどが制御される。製造現場における省力化の要請や、ＩＣＴ（Information and Communication Technology）の進歩などによって、ネットワーク技術を用いてリモートでの閲覧や操作を行なう技術が開発されている。
【０００３】
例えば、特開２００８−３３５７３号公報（特許文献１）は、遠隔地から、プログラマブル表示器で表示された画面を表示させるとともに、表示された画面上でプログラマブル表示器と同様に操作することができる構成を開示する。より具体的には、特許文献１に記載のプログラマブル表示器は、ＶＮＣ（Virtual Network Computing）のサーバ機能を用いて、表示されている画面のイメージ（画像データ）を複数のクライアントコンピュータへ送信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−３３５７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した特許文献１に記載のプログラマブル表示器は、表示されている画面のイメージ（画像データ）をそのまま複数のクライエントコンピュータへ送信するため、セキュリティ上の問題があると言わざるを得ない。例えば、製造現場には、ノウハウ的な情報も多く存在し、このような情報にアクセスできる者を制限することが必要となっている。一方で、製造装置の閲覧や制御には、このようなノウハウ的な情報が必要であり、プログラマブル表示器にも表示されることになる。特許文献１に記載のプログラマブル表示器では、そのセキュリティレベルや重要性にかかわらず、すべての表示内容がすべてのクライエントコンピュータから見えてしまうため、ノウハウ的な情報を適切に秘匿しておくことができない。
【０００６】
そのため、表示内容をリモートで見ることができるプログラマブル表示器において、その表示内容に対するセキュリティレベルを適切に保つための構成が要望されている。
【課題を解決するための手段】
【０００７】
本発明のある局面に従う、制御装置に接続されるプログラマブル表示器は、プログラマブル表示器にアクセスするユーザを識別するためのユーザ管理手段と、ユーザ管理手段によって識別されたユーザに付与されている権限に応じて、制御装置からの情報を含むインターフェイス画面を生成する生成手段と、インターフェイス画面を出力する表示部と、外部装置からのユーザのアクセス要求に応答して、ユーザ管理手段による当該ユーザの識別結果に基づいて当該外部装置との接続を確立するとともに、インターフェイス画面を接続が確立された外部装置へ送出する接続管理手段とを含み、ユーザ管理手段は、それぞれ異なる権限が付与されている複数のユーザのプログラマブル表示器への同時アクセスを阻害する。
【０００８】
好ましくは、ユーザ管理手段は、第１の権限が付与されている第１のユーザがプログラマブル表示器にアクセスしている状態で、第１の権限より低い第２の権限が付与されている第２のユーザがプログラマブル表示器にアクセスしようとすると、第１のユーザとしてのプログラマブル表示器へのアクセスを無効化する。
【０００９】
あるいは好ましくは、ユーザ管理手段は、第１の権限が付与されている第１のユーザがプログラマブル表示器にアクセスしている状態で、第１の権限より低い第２の権限が付与されている第２のユーザがプログラマブル表示器にアクセスしようとすると、第２のユーザのアクセスの試みを第１のユーザへ通知する。
【００１０】
さらに好ましくは、ユーザ管理手段は、第１のユーザによる指示に応答して、第２のユーザのプログラマブル表示器へのアクセスを有効化しない。
【００１１】
あるいはさらに好ましくは、ユーザ管理手段は、第１のユーザによる指示に応答して、第１のユーザとしてのプログラマブル表示器へのアクセスを無効化する。
【００１２】
あるいはさらに好ましくは、ユーザ管理手段は、第１のユーザによる指示に応答して、インターフェイス画面への第２のユーザのアクセスを第１のユーザより制限した状態で許容する。
【００１３】
あるいは好ましくは、ユーザ管理手段は、第１の権限が付与されている第１のユーザに向けて生成されたインターフェイス画面に対する、第１の権限より低い第２の権限が付与されている第２のユーザによるアクセスを制限する。
【発明の効果】
【００１４】
本実施の形態によれば、表示内容をリモートで見ることができるプログラマブル表示器において、その表示内容に対するセキュリティレベルを適切に保つことができる。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態の制御システムの全体構成を示す模式図である。
【図２】本実施の形態の表示器のハードウェア構成を示すブロック図である。
【図３】本実施の形態の表示器が提供するリモート閲覧操作機能を説明するための模式図である。
【図４】本実施の形態の表示器が提供するＨＭＩ画面の表示内容の一例を示す図である。
【図５】本実施の形態の表示器で表示されるＨＭＩ画面を設計するための開発プログラムの一例を示す図である。
【図６】本実施の形態の表示器で表示されるＨＭＩ画面を設計するための開発プログラムの一例を示す図である。
【図７】本実施の形態の表示器が提供するセキュリティレベルを適切に保つための機能を説明するための模式図である。
【図８】本実施の形態の表示器の機能構成を示すブロック図である。
【図９】本実施の形態の表示器における第１の処理例を説明するための模式図である。
【図１０】本実施の形態の表示器における第１の処理例を説明するための模式図である。
【図１１】本実施の形態の表示器における第１の処理例を説明するための模式図である。
【図１２】本実施の形態の表示器における第１の処理例を説明するための模式図である。
【図１３】本実施の形態の表示器における第１の処理例の処理手順を示すフローチャートである。
【図１４】本実施の形態の表示器に設定されるＨＭＩ画面のアクセスレベルの設定例を示す図である。
【図１５】本実施の形態の表示器における第２の処理例を説明するための模式図である。
【図１６】本実施の形態の表示器における第２の処理例の変形例を説明するための模式図である。
【図１７】本発明の実施の形態の表示器におけるユーザ認証の実装例を説明するための図である。
【発明を実施するための形態】
【００１６】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。本実施の形態においては、プログラマブル表示器１００および制御装置２００を含む制御システム１について説明する。但し、以下に説明する制御システム１は、プログラマブル表示器１００の一適用例に過ぎず、本願発明の技術的範囲は、特許請求の範囲の記載に基づいて、合理的に解釈されるべきである。なお、以下の説明では、「プログラマブル表示器１００」を単に「表示器１００」とも記す。
【００１７】
＜Ａ．制御システム１の全体構成＞
まず、本実施の形態の制御システム１の全体構成について説明する。図１は、本実施の形態の制御システム１の全体構成を示す模式図である。図１を参照して、制御システム１は、実際に製造作業が行なわれる製造現場２と、製造現場２に対してリモートで閲覧や操作が可能なリモートサイト４とを含む。製造現場２とリモートサイト４とは、任意のネットワーク６（例えば、インターネットやＶＰＮ（Virtual Private Network）など）を介してネットワーク接続されているとする。なお、製造現場２とリモートサイト４との間の通信は、セキュアであることが好ましく、典型的には、送受信するデータの暗号化、および／または、通信回線自体をセキュアなものにするといった手法が採用される。
【００１８】
製造現場２には、製造装置やロボットなどを制御する制御装置２００と、制御装置２００に接続される表示器１００とが配置される。
【００１９】
制御装置２００は、ＰＬＣ（Programmable Logic Controller）と称される産業用のコントローラであり、図示しない制御対象の装置（製造装置やロボットなど）との間で、フィールド信号（各種センサで検出された入力信号（アナログおよび／またはデジタル）、ならびに、各種アクチュエータへ与える出力信号（アナログおよび／またはデジタル））を遣り取りすることで、これらの装置を制御する。
【００２０】
図１に示す製造現場２では、制御装置２００とフィールドバス１４を介してリモートＩ／Ｏ（Input/Output）装置２０２が接続されている。リモートＩ／Ｏ装置２０２は、制御装置２００から離れた位置にある制御対象の装置との間でフィールド信号を遣り取りする。
【００２１】
表示器１００は、制御装置２００とフィールドバス１２を介して接続されており、制御装置２００が保持している情報をユーザに対して表示するとともに、ユーザからの操作に従って、制御装置２００に対して内部コマンドを送出する。表示器１００に表示されるＨＭＩ（Human Machine Interface）画面は、ユーザが任意に作成できるようになっており、一般的には、製造現場２に応じた画面や情報が表示できるように作成される。
【００２２】
本実施の形態の表示器１００は、その表示内容を外部装置（以下、「クライエント装置３００」と総称する。）へ送出する機能を有している。外部装置としては、表示器１００と何らかの手段で通信できるデバイスであれば、特に制限はなく、例えば、パーソナルコンピュータ、スマートフォン、別のプログラマブル表示器などを用いることができる。表示器１００と通信する手段としては、ＵＳＢ（Universal Serial Bus）通信、シリアル通信、パラレル通信、有線ネットワーク（例えば、イーサネット（登録商標））、無線ネットワーク（例えば、無線ＬＡＮやＢＬＵＥＴＯＯＴＨ（登録商標））などの公知の手段を用いることができる。
【００２３】
図１に制御システム１においては、クライエント装置３００としてパーソナルコンピュータを例示し、これらのパーソナルコンピュータは、ネットワークを介して、直接的または間接的に表示器１００と接続される。より具体的には、製造現場２には、ネットワーク８を介して表示器１００と接続される、クライエント装置３００＿１が配置され、リモートサイト４には、ネットワーク６およびネットワーク１０を介して表示器１００と接続される、クライエント装置３００＿２，３００＿３が配置される例を示す。
【００２４】
クライエント装置３００＿１〜３００＿３（以下、「クライエント装置３００」とも総称する。）の各々は、表示器１００にアクセスすることで、表示器１００によるユーザインターフェイス（表示器１００に表示されている表示内容のユーザへの提示、および、ユーザの操作に応じた内部コマンドの発行など）を提供することができる。すなわち、ユーザは、クライエント装置３００を介して、あたかも、表示器１００の前で行なうのと同じ閲覧および操作が可能になる。以下の説明では、このような表示器１００が提供する機能を便宜上「リモート閲覧操作機能」とも称する。
【００２５】
＜Ｂ．表示器１００のハードウェア構成＞
次に、表示器１００のハードウェア構成について説明する。図２は、本実施の形態の表示器１００のハードウェア構成を示すブロック図である。本実施の形態の表示器１００は、汎用的なアーキテクチャを有するハードウェア構成を有している。すなわち、表示器１００は、一種のパーソナルコンピュータとして実装される。但し、表示器１００を汎用的なハードウェアではなく、専用ハードウェアを用いて実装してもよい。
【００２６】
より具体的には、図２を参照して、表示器１００は、ＣＰＵ（Central Processing Unit）やＭＰＵ（Micro-Processing Unit）などのプロセッサ１０２と、主メモリ１０４と、フラッシュメモリ１１０と、ネットワークインターフェイス１１２と、Ｉ／Ｏ（Input/Output）インターフェイス１１４と、フィールドバスインターフェイス１１６と、タッチスクリーン１２０とを含む。これらのコンポーネントは、内部バス１３０を介して、互いにデータ通信可能に接続されている。
【００２７】
表示器１００では、予めインストールされたプログラムをプロセッサ１０２が実行することで、後述するような各種の機能および処理を実現する。すなわち、プロセッサ１０２は、フラッシュメモリ１１０に格納されたシステムプログラムおよびユーザプログラム（図示しない）を読み出して、主メモリ１０４に展開して実行することで、制御対象に対する制御を実現する。すなわち、プロセッサ１０２は、主メモリ１０４およびフラッシュメモリ１１０と連係することで、制御演算を実行する制御部を実現する。
【００２８】
ネットワークインターフェイス１１２、Ｉ／Ｏインターフェイス１１４、および、フィールドバスインターフェイス１１６は、表示器１００と外部装置とのデータの遣り取りを仲介する。より具体的には、ネットワークインターフェイス１１２は、ネットワーク８（図１）などを介した、クライエント装置３００との通信を仲介する。ネットワークインターフェイス１１２としては、例えば、イーサネットに従う通信が可能なコンポーネントを採用することができる。Ｉ／Ｏインターフェイス１１４は、各種のユーザインターフェイス装置（例えば、キーボード、マウスなど）との通信を仲介する。Ｉ／Ｏインターフェイス１１４としては、例えば、ＵＳＢ通信やシリアル通信が可能なコンポーネントを採用することができる。フィールドバスインターフェイス１１６は、制御装置２００との間のデータの遣り取りを仲介する。フィールドバスインターフェイス１１６は、としては、ＥｔｈｅｒＣＡＴ（登録商標）に従う通信が可能なコンポーネントを採用してもよいし、ネットワークインターフェイス１１２と同様に、イーサネットに従う通信が可能なコンポーネントを採用してもよい。
【００２９】
タッチスクリーン１２０は、ユーザに対して各種情報を提示するとともに、ユーザからの操作を受付ける。より具体的には、タッチスクリーン１２０は、ディスプレイ１２２と、タッチパネル１２４とを含む。ディスプレイ１２２は、典型的には、ＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro Luminescence）ディスプレイなどからなる。タッチパネル１２４は、ディスプレイ１２２の上に装着され、ユーザによるタッチ操作を受付ける。ディスプレイ１２２は、典型的には、感圧式や押圧式のデバイスが用いられる。
【００３０】
＜Ｃ．制御装置２００およびクライエント装置３００のハードウェア構成＞
制御装置２００は、典型的には、ＰＬＣが採用される。ＰＬＣのハードウェア構成については公知であるので、ここではその詳細な説明は行なわない。
【００３１】
また、クライエント装置３００は、典型的には、汎用的なパーソナルコンピュータが採用される。汎用的なパーソナルコンピュータのハードウェア構成については、公知であるので、ここではその詳細な説明は行なわない。但し、クライエント装置３００には、後述するような表示器１００とデータを遣り取りするためのプログラムがインストールされてもよい。
【００３２】
＜Ｄ．リモート閲覧操作機能＞
次に、表示器１００が提供するリモート閲覧操作機能について説明する。図３は、本実施の形態の表示器１００が提供するリモート閲覧操作機能を説明するための模式図である。図３を参照して、表示器１００は、タッチスクリーン１２０（正確には、ディスプレイ１２２）に表示される内容（画面表示）と同一の内容をクライエント装置３００へ送信する。クライエント装置３００のディスプレイには、この送信された内容が表示される。また、クライエント装置３００のディスプレイ上に表示された内容（画面表示）に対して、何らかのユーザ操作ＣＬ１がなされると、そのユーザ操作ＣＬ１に対応するユーザ操作ＣＬ２がタッチスクリーン１２０（正確には、タッチパネル１２４）に対してなされた場合と同様の処理が実行される。すなわち、クライエント装置３００に表示される画面表示とユーザ操作ＣＬ１との位置関係に示す操作情報が表示器１００へ送信され、表示器１００は、その操作情報に相当する入力操作に応じた入力処理を実行する。
【００３３】
すなわち、クライエント装置３００は、表示器１００の一種のクローンとして機能する。
【００３４】
このようなリモート閲覧操作機能は、任意の技術を用いて実現することができるが、典型的には、ＶＮＣ（Virtual Network Computing）の技術を用いることで実現される。本実施の形態の表示器１００は、クライエント装置３００に対してリモート閲覧操作機能を提供するために、ＶＮＣサーバとして機能するモジュールを実装する。表示器１００のソフトウェア構成については、後述する。
【００３５】
＜Ｅ．セキュリティレベル設定機能＞
本実施の形態の表示器１００は、ユーザ識別機能およびユーザに設定された権限に応じて表示内容を変更する機能を有している。以下の説明では、これらの機能を便宜上「セキュリティレベル設定機能」とも称する。
【００３６】
ユーザ識別機能としては、例えば、使用するユーザ毎に、そのユーザ名およびパスワードを入力するようにして認証機能を付加してもよいし、あるいは、特別なモードに入る場合に限って、ユーザ名およびパスワード（あるいは、パスワードのみ）を入力するようにしてもよい。後者の場合には、ユーザ名またはパスワードを入力しない場合には、当該ユーザを通常のユーザであると識別してもよい。
【００３７】
簡単な例としては、管理者権限を有しているユーザ（以下、「管理者」とも称す。）と管理者権限を有していない（言い換えれば、一般権限のみを有している）ユーザ（以下、「一般ユーザ」とも称す。）とを設定することができる。この場合、例えば、管理者権限を有しているユーザ（管理者）として使用する場合に限って、少なくともパスワードを要求するようにしてもよい。なお、ユーザ認証の方法としては、パスワード認証に限定されず、公知の任意の方法（例えば、指紋認証、顔認証、声紋認証といった各種生体認証や、ＩＣカードを用いた認証など）を採用できる。
【００３８】
さらに、表示器１００では、ユーザの有している権限に応じて、表示内容を変更することができるようになっている。
【００３９】
図４は、本実施の形態の表示器１００が提供するＨＭＩ画面の表示内容の一例を示す図である。図４（Ａ）には、管理者権限を有しているユーザに対するＨＭＩ画面の表示例を示し、図４（Ｂ）には、管理者権限を有していないユーザに対するＨＭＩ画面の表示例を示す。
【００４０】
より具体的には、図４に示すＨＭＩ画面は、食品の製造装置に関するものである。管理者権限を有しているユーザに対するＨＭＩ画面（図４（Ａ））には、食品の製造装置を稼動させるのに必要なレシピ１４１、および、レシピ１４１をダウンロード／アップロードするためのボタン１４２が表示されている。これに対して、管理者権限を有さないユーザに対するＨＭＩ画面（図４（Ｂ））には、レシピ１４１およびボタン１４２が有効には表示されていない。
【００４１】
図４に示すＨＭＩ画面の例では、レシピに関する機能を管理者以外に対しては操作させないように設計されている。このように、本実施の形態の表示器１００では、ＨＭＩ画面に配置されるコントロール部品毎に、表示／非表示、または、有効／無効をユーザの権限に応じて変更できる。
【００４２】
図５および図６は、本実施の形態の表示器１００で表示されるＨＭＩ画面を設計するための開発プログラムの一例を示す図である。図５には、セキュリティ設定画面４００を示し、図６には、ＨＭＩ画面の設計画面４１０を示す。図５に示すセキュリティ設定画面４００において、ダイアログ４０１において、ユーザアカウントを詳細に設定できる。すなわち、ダイアログ４０１においては、各ユーザの名前、パスワード、権限、コメントなどを設定できる。ダイアログ４０２において、各権限に応じたアクセスレベルを詳細に設定できる。すなわち、ダイアログ４０２においては、ダイアログ４０１において設定された権限毎にアクセス可能なレベル（アクセスレベル）を設定できる。セキュリティ設定画面４００において、アクセスレベルは、一種のグループのような属性を意味し、ＨＭＩ画面毎またはコントロール部品毎に、アクセスレベルが設定されており、この設定されているアクセスレベルを有しているユーザに対してのみ、その内容が表示されることになる。例えば、ダイアログ４０３において、「システムメニュー」のアクセスレベルが「Ｌｅｖｅｌ４」に設定されており、ダイアログ４０２において、「Ｌｅｖｅｌ４」は「Ａｄｍｉｎｉｓｔｒａｔｏｒ（管理者）」の権限を有しているユーザのみに付与されており、この権限設定によって、管理者権限を有しているユーザに対してのみ、「システムメニュー」が表示されることになる。
【００４３】
また、図６に示す設計画面４１０では、各ＨＭＩ画面に含まれる任意のコントロール部品に対しても、セキュリティレベルを設定できる。図６に示す例では、コントロール部品４１１に対して、ダイアログ４１２において、セキュリティレベルが設定される。図６に示す例では、「ＶｉｓｉｂｉｌｉｔｙＬｅｖｅｌ」が「Ｌｅｖｅｌ３」と設定されているので、コントロール部品４１１が表示される対象は、図５に示すセキュリティ設定画面４００において「Ｌｅｖｅｌ３」の属性が付与されているユーザ、すなわち「Ａｄｍｉｎｉｓｔｒａｔｏｒ（管理者）」の権限を有しているユーザに限定される。
【００４４】
以上のように、本実施の形態の表示器１００は、セキュリティレベル設定機能によって、各ユーザの有している権限に応じたＨＭＩ画面の制御が可能である。
【００４５】
＜Ｆ．概要＞
本実施の形態の表示器１００は、上述したリモート閲覧操作機能とセキュリティレベル設定機能とを組み合わせた場合に生じる、セキュリティ上の新たな問題に対処するものである。すなわち、表示器１００は、表示内容に対するセキュリティレベルを適切に保つための新たな機能を提供する。
【００４６】
具体的には、表示器１００は、それぞれ異なる権限が付与されている複数のユーザが同時にログイン（アクセス）することを阻害する。例えば、上述したような権限設定であれば、管理者権限を有しているユーザ（管理者）と管理者権限を有していないユーザ（一般ユーザ）とが、表示器１００に同時アクセスすることは制限または禁止される。
【００４７】
図７は、本実施の形態の表示器１００が提供するセキュリティレベルを適切に保つための機能を説明するための模式図である。図７には、クライエント装置３００が表示器１００に接続している状態を示す。図７（Ａ）に示すように、表示器１００およびクライエント装置３００のいずれに対しても管理者権限を有しているユーザがログインしている場合には、管理者用のＨＭＩ画面が表示される。また、図７（Ｂ）に示すように、表示器１００およびクライエント装置３００のいずれについても管理者権限を有していないユーザ（一般ユーザ）が利用している場合には、一般ユーザ用のＨＭＩ画面がそれぞれ表示される。
【００４８】
図７（Ａ）および図７（Ｂ）の場合には、いずれもセキュリティ上の問題はないが、図７（Ｃ）のような場合には、セキュリティ上の問題が生じる。すなわち、表示器１００に管理者権限を有しているユーザがログインしている一方で、管理者権限を有していないユーザ（一般ユーザ）がクライエント装置３００を利用する場合には、管理者用のＨＭＩ画面が一般ユーザに提供されてしまうことになる。
【００４９】
そのため、表示器１００は、図７（Ｃ）に示すような状態になると、いずれか一方のユーザの使用を制限または禁止して、設定されているセキュリティを保持する。一般的には、管理者用のＨＭＩ画面の方がより重要な情報が含まれているので、図７（Ｃ）に示すような状態になると、管理者権限を有しているユーザが表示器１００からログアウトされる。これによって、表示器１００およびクライエント装置３００のいずれにおいても、一般ユーザ用のＨＭＩ画面が表示される。
【００５０】
＜Ｇ．表示器１００の機能構成＞
次に、表示器１００の機能構成について説明する。図８は、本実施の形態の表示器１００の機能構成を示すブロック図である。図８を参照して、表示器１００は、その機能構成として、データ保持部１５０と、レンダリング部１６０と、Ｉ／Ｏデータ管理部１６２と、ユーザ管理部１６４と、表示出力部１６６と、ユーザ操作受付部１６８と、ＶＮＣサーバ１７０と、プロキシ１７２とを含む。
【００５１】
データ保持部１５０は、表示器１００でのＨＭＩ画面の表示に必要なデータを保持する。具体的には、データ保持部１５０は、ＨＭＩ画面設定データ１５２と、ユーザ登録データ１５４とを含む。
【００５２】
ＨＭＩ画面設定データ１５２は、ＨＭＩ画面を表示するための情報であり、図６に示すような設計画面４１０によって設計される。ユーザ登録データ１５４は、表示器１００にログイン可能なユーザアカウントの情報を含む。ユーザ登録データ１５４は、図５に示すようなセキュリティ設定画面４００によって設定される。
【００５３】
ユーザ管理部１６４は、表示器１００にアクセスするユーザを識別するためのユーザ管理機能を有しており、ユーザのログイン処理などを実行する。さらに、ユーザ管理部１６４は、上述の図７に示すようなセキュリティを保持するための処理を実行する。すなわち、ユーザ管理部１６４は、それぞれ異なる権限が付与されている複数のユーザの表示器１００への同時アクセスを阻害する。この同時アクセスを阻害する処理については、以下で詳述する。
【００５４】
レンダリング部１６０は、データ保持部１５０に含まれるＨＭＩ画面設定データ１５２を読み出して、ＨＭＩ画面を提供するための画面イメージを生成する。より具体的には、レンダリング部１６０は、Ｉ／Ｏデータ管理部１６２を介して制御装置２００との間で遣り取りされるフィールド信号を反映して、ＨＭＩ画面を動的に生成する。また、レンダリング部１６０は、ユーザ管理部１６４から現在ログインしているユーザの権限情報を取得して、ＨＭＩ画面設定データ１５２において定義されるコントロール部品毎に、それに付与されているアクセスレベルに基づいて、表示／非表示、または、有効／無効を決定し、ＨＭＩ画面に反映する。すなわち、レンダリング部１６０は、ユーザ管理部１６４（ユーザ管理手段）によって識別されたユーザに付与されている権限に応じて、制御装置２００からの情報を含むＨＭＩ画面（インターフェイス画面）を生成する。
【００５５】
Ｉ／Ｏデータ管理部１６２は、レンダリング部１６０と制御装置２００との間のフィールド信号の遣り取りを仲介する。
【００５６】
表示出力部１６６は、レンダリング部１６０によって生成された画面イメージをディスプレイ１２２へ出力する。そして、ディスプレイ１２２は、ＨＭＩ画面（インターフェイス画面）を出力する。
【００５７】
ユーザ操作受付部１６８は、ユーザがタッチパネル１２４に対して行なった操作を検知し、その検知結果をユーザ操作としてレンダリング部１６０へ出力する。
【００５８】
ＶＮＣサーバ１７０は、クライエント装置３００に対して、レンダリング部１６０によって生成された画面イメージを提供するとともに、クライエント装置３００からの操作を受付ける。プロキシ１７２は、ＶＮＣサーバ１７０とクライエント装置３００とのデータの遣り取りを仲介する中継機能を提供する。より具体的には、プロキシ１７２は、１または複数のクライエント装置３００との間でセッションを確立し、それぞれのクライエント装置３００との間の通信を管理する。このとき、ユーザ管理部１６４によるユーザの識別処理の結果に応じてセッションが確立される。すなわち、ＶＮＣサーバ１７０およびプロキシ１７２は、外部装置の一例であるクライエント装置３００からのユーザのアクセス要求に応答して、ユーザ管理部１６４によるユーザの識別結果に基づいてクライエント装置３００との接続を確立するとともに、ＨＭＩ画面（インターフェイス画面）を接続が確立されたクライエント装置３００へ送出する接続管理機能を提供する。
【００５９】
なお、図８に示す機能構成はあくまでも一例であり、実装時にはより適切なモジュール構成を採用してもよく、さらに、その機能の一部を表示器１００の外部に実装してもよい。典型的には、表示器１００とネットワーク接続されたサーバ装置（クラウドシステム）や任意のローカルサーバなどに図８に示す機能の一部を実装してもよい。
【００６０】
＜Ｈ．処理例＞
以下、本実施の形態の表示器１００が提供する処理例を説明する。以下では、簡素化のために、管理者権限を有しているユーザ（管理者）に対してのみ所定の認証処理が要求されており、管理者権限を有していないユーザ（一般ユーザ）に対しては、何らの認証処理も要求されないような実装例に基づいて処理例を説明する。この管理者のログインは、表示器１００自体に対する操作（コンソール操作）に加えて、クライエント装置３００を介した操作によっても可能になっているとする。
【００６１】
また、クライエント装置３００から表示器１００へのアクセスは、ＶＮＣによって実現されるので、以下の説明では、「ＶＮＣ接続」とも記す。
【００６２】
（ｈ１：第１の処理例）
第１の処理例として、ＨＭＩ画面の１ページを表示する場合について説明する。以下の説明においては、管理者が表示器１００に先にログインしている場合を想定する。図９〜図１２は、本実施の形態の表示器１００における第１の処理例を説明するための模式図である。
【００６３】
図９には、表示器１００に管理者がログインしている状態において、一般ユーザがクライエント装置３００を介して表示器１００にアクセスした場合の処理例を示す。
【００６４】
図９（Ａ）に示すように、あるユーザが管理者権限で表示器１００にログイン中に、一般ユーザがＶＮＣ接続を試みたとする。なお、図９（Ａ）に示す状態において、表示器１００には、管理者用のＨＭＩ画面１８０が表示されているとする。
【００６５】
表示器１００は、一般ユーザの権限でのＶＮＣ接続を検知すると、図９（Ｂ）に示すように、ＨＭＩ画面１８０上に、警告メッセージ１８２を表示する。警告メッセージ１８２には、一般ユーザからのＶＮＣ接続の要求があったことが通知されるとともに、一般ユーザからのＶＮＣ接続の要求に対する対処が選択可能に一覧表示される。すなわち、表示器１００は、そのユーザ管理機能として、管理者権限（第１の権限）が付与されている管理者（第１のユーザ）が表示器１００にアクセスしている状態で、管理者権限より低い一般権限（第２の権限）が付与されている一般ユーザ（第２のユーザ）が表示器１００にアクセスしようとすると、一般ユーザのアクセスの試みを管理者へ通知する。
【００６６】
図９（Ｂ）に示される警告メッセージ１８２に対して、管理者が［接続を拒否する］を選択すると、図９（Ｃ）に示すように、一般ユーザからのＶＮＣ接続の要求を拒否する。すなわち、表示器１００は、管理者による指示に応答して、一般ユーザの表示器１００へのアクセスを有効化しない。
【００６７】
このとき、表示器１００は、当該ＶＮＣ接続を要求したクライエント装置３００（一般ユーザ）に対して、警告メッセージ３１０を通知する。併せて、表示器１００は、自身のディスプレイ１２２に一般ユーザによるＶＮＣ接続を拒否した旨を示す警告メッセージ１８４を通知する。
【００６８】
一方で、図９（Ｄ）に示すように、管理者権限を有しているユーザによるＶＮＣ接続については、先にログインしているユーザが有している権限と同じであるので、許可される。すなわち、表示器１００に対しては、コンソールを介した管理者のログインと、クライエント装置３００を介して管理者のログインとは、同時に実施可能である。なお、管理者による新たにＶＮＣ接続が確立されると、表示器１００は、自身のディスプレイ１２２に管理者によるＶＮＣ接続を確立した旨を示すイベントメッセージ１８６を通知する。このＶＮＣ接続によって、当該ＶＮＣ接続を確立したクライエント装置３００（管理者）に対して、管理者用のＨＭＩ画面１８０が表示されることになる。
【００６９】
なお、管理者によるＶＮＣ接続が切断されると、そのＶＮＣ接続が切断された旨を示すイベントメッセージを通知するようにしてもよい。
【００７０】
以上の処理に対して、図１０には、図９（Ｂ）に示す警告メッセージ１８２に対して、管理者が［ログアウトして、接続を許可する］を選択した場合の処理例を示す。すなわち、表示器１００は、一般ユーザの権限でのＶＮＣ接続を検知すると、図１０（Ａ）に示すように、ＨＭＩ画面１８０上に、警告メッセージ１８２を表示する。図１０（Ａ）に示される警告メッセージ１８２に対して、管理者が［ログアウトして、接続を許可する］を選択すると、図１０（Ｂ）に示すように、管理者はログアウトされ、一般ユーザによるＶＮＣ接続が可能になる。すなわち、表示器１００は、管理者による指示に応答して、管理者としての表示器１００へのアクセスを無効化する。
【００７１】
このように、表示器１００は、そのユーザ管理機能として、管理者権限（第１の権限）が付与されている管理者（第１のユーザ）が表示器１００にアクセスしている状態で、管理者権限より低い一般権限（第２の権限）が付与されている一般ユーザ（第２のユーザ）が表示器１００にアクセスしようとすると、管理者としての表示器１００へのアクセスを無効化する。
【００７２】
このとき、管理者権限でログインしていたユーザは、一般ユーザとして表示器１００にアクセスすることになる。言い換えれば、表示器１００およびクライエント装置３００のいずれにも、一般ユーザがアクセスしている状態に変化する。このとき、表示器１００は、一般ユーザによるＶＮＣ接続を許可するために、管理者としてのログインしていたユーザがログアウトされた旨を示す警告メッセージ１８８を自身のディスプレイ１２２に表示する。
【００７３】
管理者のログアウトの後、表示器１００およびクライエント装置３００のそれぞれには、一般ユーザ用のＨＭＩ画面１８１が表示される。すなわち、図１０（Ｂ）に示す状態においては、閲覧および操作できる範囲は、一般ユーザに付与されている権限内に制限されることになる。図４に示すＨＭＩ画面の例においては、レシピの表示およびレシピのダウンロード／アップロードをすることができない状態に維持される。このように、表示されるＨＭＩ画面を制限することで、クライエント装置３００からのアクセスに対して、これらの情報をセキュアな状態に保つことができる。
【００７４】
図１０（Ｂ）に示す状態においては、表示器１００およびクライエント装置３００のそれぞれには、一般ユーザがアクセスしていることになるので、管理者権限を有しているユーザは、その管理者権限でログインすることができないようにしてもよい。すなわち、図１０（Ｃ）に示すように、一旦ログアウトした管理者が、一般ユーザがＶＮＣ接続中にその管理者権限でログインすることはできない。管理者がログインの手続きを行なっても、拒否される。この場合には、表示器１００は、ログインができない理由を含む警告メッセージ１９０をＨＭＩ画面１８１上に表示する。
【００７５】
但し、一般ユーザのアクセスに対して、管理者のログインを優先するようにしてもよい。すなわち、一般ユーザがＶＮＣ接続中に管理者のログイン手続きが成功すると、一般ユーザのアクセスを遮断するようにしてもよい。
【００７６】
一方で、図１１（Ａ）に示すように、一般ユーザのＶＮＣ接続が無効化される、または、接続が切断されると、管理者のログインが可能になる。すなわち、管理者は、一般ユーザのＶＮＣ接続が存在しない状態になれば、ログインが可能になる。図１１（Ｂ）には、管理者が再度ログインした状態を示し、この状態において、表示器１００には、管理者用のＨＭＩ画面１８０が表示される。
【００７７】
なお、図１１（Ｃ）に示すように、管理者がＶＮＣ接続している場合には、管理者は、表示器１００にログインすることができる。あるいは、管理者が表示器１００にログインしている状態で、管理者の権限を有しているユーザがＶＮＣ接続によって表示器１００にアクセスすることは許可される。この場合には、表示器１００およびクライエント装置３００のそれぞれに管理者用のＨＭＩ画面１８０が表示されることになる。
【００７８】
上述の図１０（Ａ）に示す状態においては、管理者が表示器１００にログインしており、この状態では、一般ユーザはＶＮＣ接続できる、リモートで閲覧や操作を行なうことができない。そのため、一般ユーザからのＶＮＣ接続の要求があると、ログイン中の管理者のユーザに対しては、警告メッセージ１８２を表示する。例えば、一般ユーザがリモートメンテナンスやリモートペレーションを行なう必要がある場合には、管理者は、自主的にログアウトする。警告メッセージ１８２が表示されないと、表示器１００にログインしている管理者は、一般ユーザからのＶＮＣ接続の要求の有無を知ることができず、一般ユーザはいつまでたっても表示器１００にアクセスできないという不具合が生じ得る。そのため、一般ユーザからのＶＮＣ接続の要求があると、警告メッセージ１８２を表示して、管理者に注意喚起することが好ましい。
【００７９】
さらに、図１２には、図９（Ｂ）に示す警告メッセージ１８２に対して、管理者が［接続を許可するが、閲覧のみ］を選択した場合の処理例を示す。すなわち、表示器１００は、一般ユーザの権限でのＶＮＣ接続を検知すると、図１２（Ａ）に示すように、ＨＭＩ画面１８０上に、警告メッセージ１８２を表示する。図１２（Ａ）に示される警告メッセージ１８２に対して、管理者が［接続を許可するが、閲覧のみ］を選択すると、図１２（Ｂ）に示すように、一般ユーザの表示器１００へのアクセスが許可され、表示器１００に表示されている管理者用のＨＭＩ画面１８０が、クライエント装置３００にも表示されるようになる。但し、この場合には、管理者用のＨＭＩ画面１８０の閲覧のみが可能であり、操作を行なうことは禁止されることが好ましい。すなわち、表示器１００は、管理者による指示に応答して、ＨＭＩ画面１８０（インターフェイス画面）への一般ユーザのアクセスを管理者より制限した状態で許容する。
【００８０】
図１２（Ｂ）に示す構成例では、一般ユーザに対して、ＨＭＩ画面１８０の閲覧という範囲までは許可するものの、実際の操作については禁止するので、制御装置２００に対するリモートメンテナンスは許容するが、リモートオペレーションについては禁止するような運用を行なう場合に好適である。
【００８１】
図１２（Ｂ）に示すように、一般ユーザのアクセスを許可した場合には、その旨を示す警告メッセージ１９２を自身のディスプレイ１２２に表示する。
【００８２】
上述のように、本実施の形態においては、表示器１００および１つ以上のクライエント装置３００をそれぞれ利用するユーザの権限に応じて、ログインの管理、および表示するＨＭＩ画面の内容などを制御することで、最適なセキュリティを実現する。上述した処理例を要約すると、管理者権限でログイン中に、一般ユーザからのＶＮＣ接続を制限するという方法、および、クライエント装置３００のＶＮＣ接続の状況に応じて、管理者をログアウトさせる方法などを、適宜組み合わせることで、必要なセキュリティレベルを実現する。
【００８３】
なお、上述の処理例では、警告メッセージ１８２（図９（Ｂ）、図１０（Ａ）、図１２（Ａ））において、管理者が３つのオプションを選択できるような実装例を示すが、すべてのオプションを実装する必要はなく、制御システム１の運用者の方針などに応じて、少なくとも１つのオプションを実行できるようにすればよい。
【００８４】
また、上述の処理例では、管理者が明示的に選択することで、管理者がログアウトする処理が実行されることを説明したが、このようなユーザが明示的に選択する処理を省略して、一般ユーザからのＶＮＣ接続が検知されると、管理者が自動的にログアウトするようにしてもよい。
【００８５】
図１０に示すように、より低い権限しか有していないユーザがリモートアクセス（ＶＮＣ接続）した場合に、管理者をログアウトさせて、セキュアな状態に戻すような方法を採用することで、知らない間に、ＶＮＣ接続したクライエント装置３００に対して情報が漏えいしたり、誤った操作による誤動作が生じたりすることを防止できる。
【００８６】
上述の第１の処理例として説明したように、本実施の形態の表示器１００は、そのユーザ管理機能として、管理者権限（第１の権限）が付与されている管理者（第１のユーザ）に向けて生成されたＨＭＩ画面（インターフェイス画面）に対する、管理者権限より低い一般権限（第２の権限）が付与されている一般ユーザ（第２のユーザ）によるアクセスを制限する。
【００８７】
次に、上述の第１の処理例を実現するための処理手順について説明する。図１３は、本実施の形態の表示器１００における第１の処理例の処理手順を示すフローチャートである。図１３に示す各ステップは、典型的には、表示器１００のプロセッサ１０２（図２）がプログラムを実行することで実現される。
【００８８】
表示器１００のプロセッサ１０２は、管理者のログイン要求を受けたか否かを判断する（ステップＳ１００）。管理者のログイン要求を受けた場合（ステップＳ１００においてＹＥＳの場合）には、プロセッサ１０２は、管理者に対する認証処理を実行する（ステップＳ１０２）。
【００８９】
管理者のログイン要求を受けていない場合（ステップＳ１００においてＮＯの場合）、または、ステップＳ１０２の実行後には、プロセッサ１０２は、制御装置２００との間で遣り取りされるフィールド信号を反映してＨＭＩ画面を動的に生成（または更新）する（ステップＳ１０４）。プロセッサ１０２は、表示器１００を利用しているユーザの権限（すなわち、管理者のログインの有無）に応じて、生成される内容を変更する。
【００９０】
プロセッサ１０２は、ＨＭＩ画面に対して何らかのユーザ操作がなされたか否かを判断する（ステップＳ１０６）。ＨＭＩ画面に対して何らかのユーザ操作がなされた場合（ステップＳ１０６においてＹＥＳの場合）には、プロセッサ１０２は、検知されたユーザ操作に対応する処理を実行する（ステップＳ１０８）。典型的には、制御装置２００に対する何らかの内部コマンドの出力といった処理が実行される。
【００９１】
その後、プロセッサ１０２は、いずれかのクライエント装置３００からＶＮＣ接続の要求を受けたか否かを判断する（ステップＳ１１０）。いずれかのクライエント装置３００からもＶＮＣ接続の要求を受けていない場合（ステップＳ１１０においてＮＯの場合）には、ステップＳ１００以下の処理が繰り返される。
【００９２】
これに対して、いずれかのクライエント装置３００からＶＮＣ接続の要求を受けている場合（ステップＳ１１０においてＹＥＳの場合）には、プロセッサ１０２は、管理者の権限を有しているユーザが表示器１００に現在ログインしているか否かを判断する（ステップＳ１１２）。管理者の権限を有しているユーザが表示器１００に現在ログインしていない場合（ステップＳ１１２においてＮＯの場合）には、プロセッサ１０２は、ＶＮＣ接続の要求元のクライエント装置３００との間で、ＶＮＣ接続を確立する（ステップＳ１１４）。そして、ステップＳ１００以下の処理が繰り返される。なお、ＶＮＣ接続が確立されると、生成された画面イメージは、表示器１００に加えて、ＶＮＣ接続されているクライエント装置３００において表示されることになる。
【００９３】
これに対して、管理者の権限を有しているユーザが表示器１００に現在ログインしている場合（ステップＳ１１２においてＹＥＳの場合）には、プロセッサ１０２は、ＶＮＣ接続の要求が管理者の権限を有しているユーザからのものであるか否かを判断する（ステップＳ１１６）。ＶＮＣ接続の要求が管理者の権限を有しているユーザからのものである場合（ステップＳ１１６においてＹＥＳの場合）には、プロセッサ１０２は、ＶＮＣ接続の要求を行なったユーザ（管理者）に対する認証処理を実行する（ステップＳ１１８）。認証処理が成功すると、プロセッサ１０２は、ＶＮＣ接続の要求元のクライエント装置３００との間で、ＶＮＣ接続を確立する（ステップＳ１２０）。そして、ステップＳ１００以下の処理が繰り返される。なお、ＶＮＣ接続が確立されると、生成された画面イメージは、表示器１００に加えて、ＶＮＣ接続されているクライエント装置３００において表示されることになる。
【００９４】
ＶＮＣ接続の要求が管理者の権限を有していないユーザ（すなわち、一般ユーザ）からのものである場合（ステップＳ１１６においてＮＯの場合）には、プロセッサ１０２は、その一般ユーザからのＶＮＣ接続の要求に対する対処を選択するための警告メッセージ１９２（図９（Ｂ）など）を表示する（ステップＳ１２２）。
【００９５】
警告メッセージ１９２に対して、ユーザが［接続を拒否する］を選択した場合（ステップＳ１２２において「接続を拒否」の場合）、プロセッサ１０２は、ＶＮＣ接続の要求を拒否し（ステップＳ１２４）、当該ＶＮＣ接続を要求したクライエント装置３００に対して警告メッセージを送信するとともに、ＶＮＣ接続を拒否した旨を示す警告メッセージをディスプレイ１２２に出力する（ステップＳ１２６）。そして、ステップＳ１００以下の処理が繰り返される。
【００９６】
これに対して、警告メッセージ１９２に対して、ユーザが［ログアウトして、接続を許可する］を選択した場合（ステップＳ１２２において「ログアウト」の場合）には、プロセッサ１０２は、現在ログイン中の管理者のユーザをログアウトし（ステップＳ１２８）、制御装置２００との間で遣り取りされるフィールド信号を反映してＨＭＩ画面を動的に再生成する（ステップＳ１３０）。そして、プロセッサ１０２は、ＶＮＣ接続の要求元のクライエント装置３００との間で、ＶＮＣ接続を確立する（ステップＳ１３２）。そして、ステップＳ１００以下の処理が繰り返される。ＶＮＣ接続が確立されると、生成された画面イメージは、表示器１００に加えて、ＶＮＣ接続されているクライエント装置３００において表示されることになる。
【００９７】
これに対して、警告メッセージ１９２に対して、ユーザが［接続を許可するが、閲覧のみ］を選択した場合（ステップＳ１２２において「閲覧のみ」の場合）には、プロセッサ１０２は、ＶＮＣ接続の要求元のクライエント装置３００との間で、一方向のＶＮＣ接続を確立する（ステップＳ１３４）。一方向のＶＮＣ接続とは、表示器１００から接続先のクライエント装置３００に対して、ＨＭＩ画面を提供するための画面イメージは送信されるが、クライエント装置３００が受付けたユーザからのユーザ操作は、表示器１００へ送信されない。そして、ステップＳ１００以下の処理が繰り返される。
【００９８】
（ｈ２：第２の処理例）
次に、複数ページのＨＭＩ画面を表示する場合の処理例について説明する。本実施の形態の表示器１００では、ユーザアカウント別にアクセス可能なページを設定することができる。このようなページ毎にアクセス可能なユーザが異なる場合にも、以下のような処理を採用することで、情報をセキュアな状態に保つことができる。
【００９９】
図１４は、本実施の形態の表示器１００に設定されるＨＭＩ画面のアクセスレベルの設定例を示す図である。図１４を参照して、２ページのＨＭＩ画面（ページＡおよびページＢ）を想定する。例えば、管理者は、ページＡおよびページＢについて、閲覧および操作が可能に設定されている。これに対して、一般ユーザは、ページＡについては、閲覧および操作のいずれもが不可能に設定されているが、ページＢについては、閲覧のみが可能に設定されているとする。
【０１００】
図１５は、本実施の形態の表示器１００における第２の処理例を説明するための模式図である。図１５には、表示器１００に管理者がログインしている状態において、一般ユーザがクライエント装置３００＿１を介して表示器１００にアクセスするとともに、管理者がクライエント装置３００＿２を介して表示器１００にアクセスする場合の処理例を示す。
【０１０１】
図１５（Ａ）に示すように、一般ユーザは、クライエント装置３００＿１上で一般ユーザ用のパスワードを入力し、表示器１００に対してＶＮＣ接続を試み、管理者は、クライエント装置３００＿２上で管理者用のパスワードを入力し、表示器１００に対してＶＮＣ接続を試みたとする。この例においては、いずれのＶＮＣ接続も許可されて、クライエント装置３００＿１および３００＿２の各々は、表示器１００にリモートアクセス（ＶＮＣ接続）する。但し、図１４に示すように、一般ユーザに対しては、ＨＭＩ画面の一部のページに対するアクセスレベルが制限されているので、表示器１００は、図１４に示すアクセスレベルの設定例に従って、一般ユーザに提供するＨＭＩ画面を制限する。
【０１０２】
図１５（Ｂ）に示すように、例えば、ＨＭＩ画面のページＡを表示するように指示されると、表示器１００は、自身のディスプレイ１２２にページＡに対応するＨＭＩ画面１８０Ａを表示するとともに、管理者としてログインしているユーザが使用しているクライエント装置３００＿２に対して、ＨＭＩ画面１８０Ａを提供する。一方、一般ユーザは、ＨＭＩ画面のページＡの閲覧および操作が制限されているので、表示器１００は、一般ユーザとしてログインしているユーザが使用しているクライエント装置３００＿１に対しては、ＨＭＩ画面１８０Ａを提供しない。このとき、クライエント装置３００＿１では、権限が付与されていないのでＨＭＩ画面を表示できない旨の警告メッセージ３１０が表示される。但し、表示器１００とクライエント装置３００＿１との間のＶＮＣ接続は維持されている。すなわち、表示器１００は、ＨＭＩ画面１８０Ａの画面イメージに代えて、警告メッセージ３１０を示す画面イメージをクライエント装置３００＿１に対して送出する。
【０１０３】
続いて、図１５（Ｃ）に示すように、ＨＭＩ画面のページＢを表示するように指示されると、表示器１００は、自身のディスプレイ１２２にページＢに対応するＨＭＩ画面１８０Ｂを表示するとともに、一般ユーザとしてログインしているユーザが使用しているクライエント装置３００＿１、および、管理者としてログインしているユーザが使用しているクライエント装置３００＿２に対して、ＨＭＩ画面１８０Ｂを提供する。但し、一般ユーザには操作の権限が与えられていないので、クライエント装置３００＿１に対してユーザが何らかの操作を行なっても、その操作は有効なものとはみなされない。すなわち、表示器１００は、クライエント装置３００＿１から与えられたユーザ操作は無効なものとみなす。
【０１０４】
図１５に示すように、より低い権限しか有していないユーザがリモートアクセス（ＶＮＣ接続）した場合に、予め定められた権限設定に従って、ＨＭＩ画面の閲覧や操作を制限できる。このような制限の方法を採用することで、知らない間に、ＶＮＣ接続したクライエント装置３００に対して情報が漏えいしたり、誤った操作による誤動作が生じたりすることを防止できる。また、上述の第２の処理例によれば、異なる権限が付与されている複数のユーザが同時に接続するようなテレビ会議や緊急対応時などであっても、セキュアな環境を維持できる。
【０１０５】
特に、本実施の形態の表示器１００は、ＨＭＩ画面のページ毎にセキュリティレベルを設定でき、さらに、閲覧および操作のそれぞれの項目についても独立にセキュリティレベルを設定できる。そのため、一般ユーザにＨＭＩ画面の特定のページを全く閲覧させないとか、特定のページの閲覧だけを許可するといった様々な運用に対応できる。
【０１０６】
なお、異なる権限が付与されている複数のユーザが同一のＨＭＩ画面を閲覧および操作する場合には、自身に許諾されたセキュリティレベルや他のユーザの状況などを把握できることが好ましい場合も多い。以下、いくつかの変形例について説明する。
【０１０７】
図１６は、本実施の形態の表示器１００における第２の処理例の変形例を説明するための模式図である。
【０１０８】
図１６（Ａ）は、クライエント装置３００（クライエント装置３００を使用するユーザ）に付与されている権限を一見して把握できるようにするための処理例を示す。具体的には、クライエント装置３００＿１および３００＿２のそれぞれに表示されるＨＭＩ画面１８０Ｂ上に各ユーザに付与されている権限を示すポップアップ１９４＿１および１９４＿２が表示される。図１６（Ａ）に示す例では、ポップアップ１９４＿１は、クライエント装置３００＿１を使用する一般ユーザに与えられた「閲覧のみ」というメッセージを含み、ポップアップ１９４＿２は、クライエント装置３００＿１を使用する管理者に与えられた「操作ＯＫ」というメッセージを含む。
【０１０９】
具体的な実装方法としては、表示器１００のプロキシ１７２がＨＭＩ画面を提供するための画面イメージの上に、ポップアップ１９４＿１および１９４＿２に相当するイメージを上書きした上で、クライエント装置３００＿１および３００＿２のそれぞれに送信するという方法を採用できる。
【０１１０】
図１６（Ｂ）は、ＨＭＩ画面を操作中の管理者が、ＶＮＣ接続しているクライエント装置３００（あるいは、ユーザの権限）の状態を確認できるようにするための処理例を示す。具体的には、表示器１００ならびにクライエント装置３００＿１および３００＿２に共通して表示されるＨＭＩ画面１８０Ｂ上に、表示器１００にＶＮＣ接続しているクライエント装置３００のユーザアカウント毎の人数を示すポップアップ１９６が表示される。図１６（Ｂ）に示す例では、ポップアップ１９６は、クライエント装置３００＿１を使用する一般ユーザが１名と、クライエント装置３００＿１を使用する管理者が１名いることを示すメッセージを含む。
【０１１１】
なお、ＶＮＣ接続しているクライエント装置３００（あるいは、ユーザの権限）の状態を表示する方法としては、図１６（Ｂ）に示す表示態様に代えて、特別なシステムページを用意してもよい。
【０１１２】
＜Ｉ．プロキシ＞
次に、表示器１００のプロキシ１７２（図８）の機能や処理などについて説明する。上述したように、プロキシ１７２は、ＶＮＣサーバ１７０と１または複数のクライエント装置３００とのデータの遣り取りを仲介する中継機能を提供する。
【０１１３】
（ｉ１：ユーザ認証処理）
プロキシ１７２と各クライエント装置３００との間は、所定の手順に従って、認証処理を行なう。この認証処理に係る手順としては、任意の公知の手法を採用することができるが、典型的には、チャレンジレスポンス方式が好適である。このチャレンジレスポンス方式は、クライエント装置３００から接続要求をプロキシ１７２へ送信すると、プロキシ１７２がクライエント装置３００に対してチャレンジを送信し、さらにクライエント装置３００がそのチャレンジに対するチャレンジレスポンスを返信する。プロキシ１７２は、受信したチャレンジレスポンスに基づいて認証処理を行ない、その認証処理が成功した場合には、認証ＯＫをクライエント装置３００に応答する。この一連の処理によって、クライエント装置３００が表示器１００にＶＮＣ接続される。
【０１１４】
なお、汎用的なＶＮＣ接続の認証処理においては、「ユーザアカウント」という概念が存在せず、「パスワード」のみで認証が行なわれる。すなわち、クライエント装置３００からプロキシ１７２へ送信されるチャレンジレスポンスには、「パスワード」のみが含まれることになる。このような場合、ユーザアカウントとパスワードとを、汎用的なＶＮＣ接続の認証処理で利用するためには、以下のような方法で実装することができる。図１７は、本発明の実施の形態の表示器１００におけるユーザ認証の実装例を説明するための図である。
【０１１５】
［実装例その１］
実装例その１としては、ユーザアカウント毎にユニークなポート番号を割り当てることで、ユーザアカウントを特定してもよい。例えば、図１７（Ａ）に示すように、プロキシ１７２にポート番号５９００および５９０１の２つのポートを予め用意しておき、それぞれのポート番号に対して、管理者および一般ユーザを関連付ける。さらに、プロキシ１７２は、ポート番号に対応付けて、管理者用パスワードおよび一般ユーザ用パスワードを利用可能に構成される。
【０１１６】
各ユーザは、クライエント装置３００を操作して、自己の権限に応じたポートを指定してＶＮＣ接続を要求する。このＶＮＣ接続において実行される認証処理において、各ユーザは、自己のパスワードを入力することになる。例えば、管理者は、ポート番号として「５９００」を指定するとともに、自己のパスワード「１２３４５」を入力する。プロキシ１７２は、クライエント装置３００が指定したポート番号に対応するパスワードを読み出して、クライエント装置３００からのパスワードとの一致を判断する。
【０１１７】
このような実装例を採用することで、公知のアプリケーションを利用して、ユーザアカウント毎にセキュリティレベルを設定できる。
【０１１８】
［実装例その２］
実装例その２としては、ユーザアカウントとパスワードとを結合したものをパスワードとして認証処理に用いるようにしてもよい。例えば、図１７（Ｂ）に示すように、管理者用パスワードおよび一般ユーザ用パスワードをそれぞれ利用可能に構成しておく、
各ユーザは、クライエント装置３００を操作して、自己の属性を示す情報とパスワードとを所定のセパレータを用いて結合したものをパスワードとして送信する。例えば、管理者は、自己の属性を示す「Ａｄｍｉｎｉｓｔｒａｔｏｒ」という文字列と、自己のパスワード「１２３４５」の文字列とを、指定されたセパレータ「￥」を用いて結合したものを入力する。プロキシ１７２は、クライエント装置３００から生のパスワードを受信する場合には、セパレータ「￥」を基準にして、２つの文字列を分離して、認証処理を実行する。なお、クライエント装置３００から暗号化されたパスワードを受信する場合には、２つの文字列の結合結果を暗号化して得られる文字列を用いて、認証処理を実行する。
【０１１９】
このような実装例を採用することで、公知のアプリケーションを利用して、ユーザアカウント毎にセキュリティレベルを設定できる。
【０１２０】
（ｉ２：ＶＮＣ接続の状態表示）
ＶＮＣサーバ１７０が保持する情報は、表示器１００に表示されるＨＭＩ画面に反映させることができる。
【０１２１】
例えば、ＶＮＣサーバ１７０によって管理されるＶＮＣ接続の状態を示すステータス画面をＨＭＩ画面として表示するようにしてもよい。このようなステータス画面では、ＶＮＣ接続しているユーザ名、各ユーザが利用しているクライエント装置３００のＩＰアドレス、ＶＮＣ接続の開始時間などが一覧表示される。
【０１２２】
ＶＮＣ接続の状態を示すステータス画面は、ユーザがシステムメニューから手動で起動するようにしてもよい。例えば、ＨＭＩ画面上のアイコンをユーザが選択することで、ステータス画面が起動する。あるいは、ＶＮＣサーバ１７０がＶＮＣ接続を検知されることをトリガーにして、ステータス画面を起動させてもよい。さらにあるいは、ＨＭＩ画面上にユーザが作成したボタンが選択されることに応答して、ステータス画面を起動させてもよい。
【０１２３】
さらに、ＶＮＣ接続の状態表示を、ＨＭＩ画面で使用されるコントロール部品として利用できるようにしてもよい。このようなコントロール部品が用意されることで、ユーザは、任意の位置およびページにＶＮＣ接続の状態を表示させることができる。また、ＶＮＣ接続が開始されたことなどに応じて、ＨＭＩ画面上にメッセージをイベント的に発生させるようにしてもよい。さらに、ＶＮＣ接続の状態を常に表示するステータスバーを用意してもよい。
【０１２４】
このように、表示器１００に表示されるＨＭＩ画面にＶＮＣ接続のステータスの情報を含ませることによって、知らない間にリモートアクセス（ＶＮＣ接続）の状態になっていたといった事態を避けることができる。
【０１２５】
（ｉ３：変形例）
上述の説明においては、ＶＮＣを用いて表示器１００とクライエント装置３００との接続を実現する構成例について説明したが、他の通信プロトコルを採用してもよい。これは、本実施の形態の表示器１００は、プロキシを実装しているため、特定の通信プロトコルに限定されることなく、任意の通信プロトコルをフレキシブルに採用できるからである。この通信プロトコルとしては、ＦＴＰ（File Transfer Protocol）やＨＴＴＰ（HyperText Transfer Protocol）などを用いることができる。
【０１２６】
通信プロトコルとしてＦＴＰを採用した場合には、例えば、管理者権限を有しているユーザがログインしている場合に限って（または、ＦＴＰを許可するフラグがＯＮの場合だけ）、通信ができるように実装することが好ましい。このようなＦＴＰを許可する期間を制限することで、生産データといった外部からアクセスしてほしくないデータを保護できる。すなわち、管理者が表示器１００にログインした場合に限って、外部からのＦＴＰ通信を許可するようにすればよい。
【０１２７】
また、表示器１００のステータスに応じて、ＦＴＰ接続を禁止するようにしてもよい。例えば、製造装置が稼働中はＦＴＰのファイル転送ができないようにしてもよい。すなわち、製造装置が停止中の場合に限って、ＦＴＰを可能にすることで、生産パラメータといった、稼働中に変更されたくないデータを保護できる。
【０１２８】
なお、ＦＴＰ接続中（ファイル取得中やファイル送信中など）には、その旨をユーザに警告してもよい。例えば、ＦＴＰ転送中であることをメッセージやランプで通知することで、ユーザに注意喚起することができる。このような注意喚起を行なうことで、ＦＴＰ転送中に表示器１００の電源を落とすといった、誤操作を防止できる。
【０１２９】
通常のＦＴＰサーバの設定を動的に変えることはないので、プロキシが、表示器１００の状況に応じて動的に振る舞いを変更することで、より柔軟な運用が可能になる。
【０１３０】
通信プロトコルとしてＨＴＴＰを採用した場合には、Ｗｅｂブラウザなどを使った、リモートメンテナンスを実装した場合であっても、ＶＮＣを用いた場合と同様の機能を実現できる。
【０１３１】
＜Ｊ．利点＞
上述したように、本実施の形態のプログラマブル表示器１００は、その表示内容をリモートで閲覧および操作するための機能を提供するが、このような機能を提供した場合であても、その表示内容に対するセキュリティレベルを適切に保つことができる。すなわち、本実施の形態のプログラマブル表示器１００は、従来技術に比較して、利便性を維持しつつ、セキュリティレベルを高めることができる。
【０１３２】
より具体的には、以下のような制御を適用することで、クライエント装置３００に対して、不必要な権限を付与してしまうことを防止する。
【０１３３】
例えば、各ユーザのログイン／ログオフをクライエント装置３００からのＶＮＣ接続の状況に応じて制御することができる。すなわち、ＨＭＩ画面に配置されるコントロール部品の表示／非表示、および／または、操作の有効／無効を、クライエント装置３００を操作するユーザに付与されている権限に応じて、動的に変更できる。また、ログインしているユーザに付与されている権限に応じて、ＶＮＣ接続およびクライエント装置３００での操作／閲覧を制御できる。また、ＨＭＩ画面に対する閲覧や操作の制限を、ページ単位で行なうことができ、このページ単位での閲覧および操作の制限を、クライエント装置３００を操作するユーザに付与されている権限に応じて、制御することができる。また、複数のユーザアカウントを用意し、それぞれのユーザアカウントに互いに異なるレベルの権限を設定できる。例えば、管理者、一般ユーザ、オペレータ、メンテナンス担当者といった、それぞれアクセスレベルの異なる複数のユーザアカウントを設定することで、複数のＨＭＩ画面に対するアクセス制限を細かく設定できる。
【０１３４】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１３５】
１  制御システム、２  製造現場、４  リモートサイト、６，８，１０  ネットワーク、１２，１４  フィールドバス、１００  プログラマブル表示器（表示器）、１０２  プロセッサ、１０４  主メモリ、１１０  フラッシュメモリ、１１２  ネットワークインターフェイス、１１４  Ｉ／Ｏインターフェイス、１１６  フィールドバスインターフェイス、１２０  タッチスクリーン、１２２  ディスプレイ、１２４  タッチパネル、１３０  内部バス、１５０  データ保持部、１５２  ＨＭＩ画面設定データ、１５４  ユーザ登録データ、１６０  レンダリング部、１６２  Ｉ／Ｏデータ管理部、１６４  ユーザ管理部、１６６  表示出力部、１６８  ユーザ操作受付部、１７０  ＶＮＣサーバ、１７２  プロキシ、２００  制御装置、２０２  リモートＩ／Ｏ装置、３００  クライエント装置。
【図１】
0006350302.tif 000002
【図２】
0006350302.tif 000003
【図３】
0006350302.tif 000004
【図４】
0006350302.tif 000005
【図５】
0006350302.tif 000006
【図６】
0006350302.tif 000007
【図７】
0006350302.tif 000008
【図８】
0006350302.tif 000009
【図９】
0006350302.tif 000010
【図１０】
0006350302.tif 000011
【図１１】
0006350302.tif 000012
【図１２】
0006350302.tif 000013
【図１３】
0006350302.tif 000014
【図１４】
0006350302.tif 000015
【図１５】
0006350302.tif 000016
【図１６】
0006350302.tif 000017
【図１７】
0006350302.tif 000018