以下に添付図面を参照して、この発明の実施の形態にかかる制御装置を詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、実施の形態1による制御装置の機能構成の一例を模式的に示すブロック図である。以下の実施の形態で説明される制御装置は、データを用いて演算を行い、この演算結果に基づいて制御対象を制御する装置であり、プログラマブルコントローラまたは数値制御装置などである。
制御装置10は、外部記憶媒体インタフェース11と、入力部12と、表示部13と、外部データ保存部14と、外部データ保存領域設定部15と、外部データ判定部16と、パスワード設定部17と、外部データ保存処理部18と、パスワード−外部データ対応情報記憶部19と、外部データ消去部20と、パスワード判定部21と、外部データ書戻し部22と、内部データ処理部23と、制御処理部24と、を備える。
外部記憶媒体インタフェース11は、制御装置10に装着された外部記憶媒体との間で通信を行うインタフェースである。外部記憶媒体は、着脱可能な記憶媒体であり、SDカード、microSDカード、コンパクトフラッシュ(登録商標)などのメモリカード、USB(Universal Serial Bus)メモリなどを例示することができる。外部記憶媒体には、制御装置10で実行させるためのプログラム、またはプログラムの実行で使用されるパラメータなどを格納することができる。なお、以下では、外部記憶媒体に格納されるプログラムまたはパラメータなどを外部データという。
入力部12は、ユーザが制御装置10に対して情報を入力する際のインタフェースであり、キーボード、ボタンまたはタッチパネルなどを例示することができる。入力部12を介して後述するパスワードなどが制御装置10に対して設定される。
表示部13は、制御装置10に関する情報、または制御装置10で実行している制御に関する情報などを表示する。表示部13は、液晶表示装置などによって構成される。
外部データ保存部14は、制御装置10が実行するプログラムまたはプログラムで使用されるパラメータなどを保存する。また、外部データ保存部14には、装着される外部記憶媒体ごとに外部データ保存領域が設けられる。
外部データ保存領域設定部15は、外部記憶媒体が制御装置10に装着されると、外部データ保存部14に外部データを保存することができる外部データ保存領域を設定する。
外部データ判定部16は、外部記憶媒体に外部データが保存されているかを判定し、外部データが保存されていない場合には何も処理を行わず、外部データが保存されている場合には外部データの外部データ保存部14への保存処理の実行指示をパスワード設定部17と外部データ保存処理部18に与える。
パスワード設定部17は、外部データを外部データ保存部14に保存する指示を外部データ判定部16から受けると、パスワードの設定処理を行う。たとえば、ユーザに対してパスワードの設定を指示する画面を表示部13に表示し、ユーザが入力部12を介して入力したパスワードをパスワード−外部データ対応情報に保存する。
外部データ保存処理部18は、パスワード設定部17によるパスワードの設定が終了すると、外部記憶媒体中の外部データを外部データ保存領域設定部15によって設定された外部データ保存領域にコピーする。また、外部データを外部データ保存領域にコピーした後、コピーしたコピー先の外部データと、外部記憶媒体中のコピー元の外部データとを照合し、両者が一致しているかを判定する。両者が一致しない場合には、たとえばもう一度外部記憶媒体中の外部データを外部データ保存領域にコピーする。また、両者が一致する場合には、パスワード−外部データ対応情報に外部データの保存場所を書き込み、パスワードと対応付けし、正常に外部記憶媒体中の外部データをコピーできたことを外部データ消去部20に通知する。
パスワード−外部データ対応情報記憶部19は、外部データ保存部14に保存された外部データとパスワードとの対応関係を示すパスワード−外部データ対応情報を記憶する。図2は、パスワード−外部データ対応情報の一例を示す図である。パスワード−外部データ対応情報は、パスワード設定部17で設定されるパスワードと、これに対応付けて外部データ保存処理部18で保存される外部データの外部データ保存領域、たとえば先頭アドレスとサイズと、を対応付けて管理している。
外部データ消去部20は、外部データ保存処理部18から外部記憶媒体中の外部データを正常に外部データ保存部14に保存できた旨の通知を受けた場合に、外部記憶媒体中の外部データを消去する。この外部データの消去として、単なる外部データの消去ではなく、たとえば外部記憶媒体が制御装置10から第三者に離脱された場合でも、外部記憶媒体中のデータを復元することができないように、初期化を実施したり、またはランダムデータの書き込みをしたりすることが望ましい。
パスワード判定部21は、空の外部記憶媒体が制御装置10に装着された状態で、ユーザによって外部データ保存部14から外部記憶媒体への外部データの保存が指示された場合に、表示部13にパスワードの入力画面を表示し、ユーザによって入力部12を介して入力されたパスワードがパスワード−外部データ対応情報に登録されたパスワードであるかを判定する。具体的には、入力されたパスワードがパスワード−外部データ対応情報中に存在するかを判定する。入力されたパスワードがパスワード−外部データ対応情報中に存在しない場合には、外部データの外部記憶媒体への保存処理は行われない。また入力されたパスワードがパスワード−外部データ対応情報中に存在する場合には、外部データの外部記憶媒体への保存処理を進めてもよい旨を外部データ書戻し部22に通知する。
外部データ書戻し部22は、パスワード判定部21から外部データの外部記憶媒体への保存処理を進めてもよい旨の通知を受けると、パスワード−外部データ対応情報中の入力されたパスワードに対応する外部データの保存位置から外部データを取得し、この外部データを外部記憶媒体に書き戻す処理を行う。また、外部データ書戻し部22は、外部データを外部記憶媒体にコピーした後、コピーした外部データと、外部データ保存部14中のコピー元の外部データとを照合し、両者が一致しているかを判定する。両者が一致しない場合には、たとえばもう一度外部データ保存部14中の外部データを外部記憶媒体にコピーする。また、両者が一致する場合には、正常に外部データ保存部14中の外部データをコピーできたことを内部データ処理部23に通知する。
内部データ処理部23は、ユーザによる外部データ書戻し処理時の設定に基づいて外部データ保存部14中の外部データに対する処理を行う。たとえば、外部データ保存部14中の外部データの消去が設定されていない場合には、外部データ書戻し部22によって外部記憶媒体へ外部データをコピーした後でも、外部データと対応するパスワードを外部データ保存部14から消去せずにそのままとして、外部記憶媒体が取り外し可能であることを示す情報をたとえば表示部13に表示する。また、外部データ保存部14中の外部データの消去が設定されている場合には、外部データ書戻し部22によって外部記憶媒体への外部データをコピーした後に、外部データ保存部14中の外部データと、対応するパスワードとを消去して、外部記憶媒体が取り外し可能であることを示す情報をたとえば表示部13に表示する。
制御処理部24は、たとえば外部データ保存部14に記憶されたプログラムを読み込み、図示しない制御対象に対する制御処理を行う。
図3は、実施の形態1による制御装置の構成の一例を模式的に示すブロック図である。上記したような制御装置10は、CPU(Central Processing Unit)101と、RAM(Random Access Memory)102と、ハードディスクまたはSSD(Solid State Drive)などの内部記憶部103と、外部記憶媒体50との間のインタフェースとなるメモリインタフェース104と、操作盤105と、がバス106を介して接続された情報処理装置によって構成される。
内部記憶部103は、CPU101で実行するプログラムまたはパラメータなどの外部データを不揮発に記憶する外部データ保存領域1031と、パスワード−外部データ対応情報1032と、を有する。RAM102は、内部記憶部103から読み出され、CPU101によって実行されるプログラムを記憶するワークメモリとして機能する。また、RAM102には、内部記憶部103に記憶されたパラメータが読み出される。
図1の外部データ保存部14とパスワード−外部データ対応情報記憶部19は、図3の内部記憶部103に対応している。また、図1の制御処理部24は、プログラムまたはこれにパラメータが読み出された図3のRAM102とCPU101に対応している。さらに、図1の入力部12と表示部13は、図3の操作盤105に対応している。また、図1の他の処理部は、図3のたとえば内部記憶部103に設けられた処理プログラムが実行する機能に対応している。
つぎに、このような構成の制御装置10における動作について説明する。図4は、実施の形態1による制御装置に外部記憶媒体が装着された場合の処理手順の一例を示すフローチャートである。
まず、メモリカードまたはUSBメモリなどの外部記憶媒体が制御装置10に装着または接続されると(ステップS11)、外部データ保存領域設定部15は、外部データ保存領域を設定する(ステップS12)。
ついで、外部データ判定部16は外部記憶媒体内にデータが存在するかを判定する(ステップS13)。判定の結果、外部記憶媒体内にデータが存在しない場合(ステップS13でNoの場合)には、退避するデータがないので、処理が終了する。また、外部記憶媒体内にデータが存在する場合(ステップS13でYesの場合)には、パスワード設定部17は、外部データ保存部14から外部記憶媒体にデータを書き戻すためのパスワード設定処理を行う(ステップS14)。たとえば、制御装置10に設けられる表示部13にパスワード設定画面を表示し、ユーザが入力部12を介してパスワードを入力したり、または制御装置10に接続されるエンジニアリングツールにパスワード設定画面を表示し、ユーザがエンジニアリングツールを介してパスワードを入力したりする。
パスワード設定部17は、ユーザによってパスワードが入力されると、このパスワードをパスワード−外部データ対応情報に保存する(ステップS15)。ついで、外部データ保存処理部18は、外部記憶媒体内のデータを外部データ保存部14に設定した外部データ保存領域にコピーする(ステップS16)。その後、外部データ保存処理部18は、外部記憶媒体中の外部データと外部データ保存領域中の外部データとが一致しているか、すなわちエラーなく保存されたか、を照合する(ステップS17)。
2つのデータが一致していない場合(ステップS17でNoの場合)には、表示部13または制御装置10に接続されるエンジニアリングツールにデータ異常を表示し(ステップS18)、ステップS16に処理が戻る。
また、2つのデータが一致している場合(ステップS17でYesの場合)には、外部データ保存処理部18は、パスワード−外部データ対応情報で、コピーした外部データと設定したパスワードとを対応付けする(ステップS19)。そして、外部データ消去部20は、外部記憶媒体内の外部データを消去する(ステップS20)。以上によって、外部記憶媒体が接続された場合の外部データの退避処理が終了する。
図5と図6は、実施の形態1による制御装置に外部記憶媒体が装着された場合の処理手順の具体例を示す図である。まず、図5(a)に示されるように、外部記憶媒体50が制御装置10のメモリインタフェース104に装着される。これによって、内部記憶部103には、外部データ保存領域1031が確保される。
ついで、図5(b)に示されるように、パスワードの設定処理が行われる。ここで、ユーザは、操作盤105からパスワードを入力し、このパスワードは、パスワード−外部データ対応情報1032に保存される。その後、外部記憶媒体50中の外部データ301が外部データ保存領域1031に外部データ351としてコピーされる。
ついで、図6(a)に示されるように、外部記憶媒体50中の外部データ301と内部記憶部103の外部データ351との照合が行われ、両者が同一である場合には、外部データ351の保存位置がパスワード−外部データ対応情報にパスワードと対応付けされて保存される。そして、外部記憶媒体50中の外部データ301は消去される。
その後、図6(b)に示されるように、外部記憶媒体50が不正に抜き取られても、外部記憶媒体50には外部データとパスワードがともに保存されていないので、これらの情報が流出してしまうことを防ぐことができる。
つぎに、外部記憶媒体の制御装置10からの取り外しおよび外部データの書戻し処理について説明する。図7は、実施の形態1による外部データの書戻し処理を伴う制御装置からの外部記憶媒体の抜き取り処理の一例を示すフローチャートである。
ここでは、データを有さない外部記憶媒体が制御装置10に接続されている状態にあるものとする。まず、ユーザが入力部12を介して外部記憶媒体取り外しコマンドを制御装置10に指示する(ステップS31)。これによって、たとえば表示部13には取り外しコマンドに関する表示画面が表示される。ついで、ユーザによって入力部12を介してパスワードが入力される(ステップS32)。パスワード判定部21は、入力されたパスワードがパスワード−外部データ対応情報に保存されているパスワードと一致するかを判定する(ステップS33)。
入力されたパスワードがパスワード−外部データ対応情報内のパスワードと一致しない場合(ステップS33でNoの場合)には、パスワードが一致しないことを表示部13に表示し(ステップS34)、ステップS32に戻る。また、入力されたパスワードがパスワード−外部データ対応情報内のパスワードと一致する場合(ステップS33でYesの場合)には、外部データ書戻し部22は、入力されたパスワードに対応する外部データ保存領域内の外部データを外部記憶媒体に書き戻す処理を行う(ステップS35)。
また、外部データ書戻し部22は、外部記憶媒体に書き戻された外部データと外部データ保存部14の外部データ保存領域内の外部データとを照合し、両者が一致するかを判定する(ステップS36)。両者が一致しない場合(ステップS36でNoの場合)には、外部記憶媒体に書き戻したデータが異常である旨を表示部13に表示し(ステップS37)、ステップS35に戻る。
一方、両者が一致する場合(ステップS36でYesの場合)には、制御装置10の外部データ保存部14にコピーされたデータを消去するかを判定する(ステップS38)。外部記憶媒体にデータが書戻され、外部記憶媒体は接続前の状態に戻り、取外し可能の状態となり、このときに内部データ処理部23は、制御装置10の外部データ保存部14にコピーされたデータを消去するか否かを選択する選択画面を表示部13またはエンジニアリングツールに表示し、これに対するユーザの入力結果に基づいて判定を行う。
外部データ保存部14内のデータを消去する場合(ステップS38でYesの場合)には、内部データ処理部23は、外部データ保存部14の外部データ保存領域中の外部データを消去し(ステップS39)、パスワード−外部データ対応情報を更新する(ステップS40)。具体的には、パスワード−外部データ対応情報中の対応するレコードを消去する。
その後、または外部データ保存部14内のデータを消去しない場合(ステップS38でNoの場合)には、内部データ処理部23は外部記憶媒体を取り外し可能であることを表示部13に表示し(ステップS41)、処理が終了する。
なお、ステップS38で外部データ保存部14内のデータを消去しない場合(ステップS38でNoの場合)で、同じ外部データを有する外部記憶媒体が装着された場合には、同じパスワードが継続して使用されることになる。また、前回保存されていたものとは異なる新しい外部データを有する外部記憶媒体が装着された場合には、新たな外部データに対して新たなパスワードが設定される。そのため、外部記憶媒体が装着された際に、外部記憶媒体中の外部データと同じ外部データが既に外部データ保存部14に保存されているかを判定する機能をたとえば外部データ判定部16に持たせてもよい。
また、ステップS38で外部データ保存部14内のデータを消去する場合(ステップS38でYesの場合)で、再び同じ外部データを有する外部記憶媒体が装着された場合には、パスワードは再設定されることになる。
図8と図9は、実施の形態1による制御装置から外部データの書戻し処理を伴う制御装置からの外部記憶媒体の抜き取り処理の具体例を示す図である。まず、図8(a)に示されるように、空の外部記憶媒体50が制御装置10に装着された状態で、外部記憶媒体50の取り外しの指示が出される。
ついで、図8(b)に示されるように、パスワードの入力がユーザに対して求められる。これに対して、ユーザは、操作盤105を介してパスワードの入力を行う。そして、入力されたパスワードとパスワード−外部データ対応情報に含まれるパスワードとの照合が行われる。
その後、図9(a)に示されるように、パスワードが一致した場合には、内部記憶部103の外部データ保存領域1031の外部データ351が外部記憶媒体50に外部データ301としてコピーされる。そして、外部データ保存領域1031の外部データ351と外部記憶媒体50の外部データ301とが照合される。
そして、図9(b)に示されるように、照合の結果、両者が一致する場合には、外部記憶媒体50は制御装置10への装着前の状態と同じ状態、すなわち図5(a)の状態、に戻ることになり、ユーザによって取り外される。
実施の形態1では、外部記憶媒体が装着されると、外部記憶媒体中の外部データを書き戻す際に必要なパスワードを外部データ保存部14内のパスワード−外部データ対応情報に保存し、外部記憶媒体中の外部データを外部データ保存領域に保存し、外部記憶媒体中の外部データを削除するようにした。これによって、外部記憶媒体が制御装置10から抜き取られてしまった場合でも、外部記憶媒体中には外部データが保存されていないので、データが第三者に流出する虞がないという効果を有する。また、外部記憶媒体中にはパスワードも保存されていないので、パスワードの流出を防ぐことができるという効果も有する。
さらに、外部データに紐付けられたパスワードが入力された場合にのみ外部データを外部記憶媒体に書き戻すようにした。これによって、外部データの暗号化を使用せずに外部データの保護を実現することができるという効果を有する。
実施の形態2.
実施の形態1では、外部記憶媒体中の外部データを外部データ保存部内に保存する場合に、外部データ保存部の空き容量が外部記憶媒体中の外部データのサイズよりも大きいことを前提としていた。実施の形態2では、外部データ保存部の空き容量が外部記憶媒体中の外部データのサイズよりも小さい場合について説明する。
実施の形態2の制御装置の構成は、実施の形態1の図1に示したものと基本的に同じ構成であるが、外部データ判定部16と外部データ消去部20の機能が実施の形態1のものとは異なる。
外部データ判定部16は、外部データ保存部14の空き容量を確認し、また外部記憶媒体中の外部データのサイズを確認し、外部データの合計サイズが外部データ保存部14の空き容量よりも大きい場合に、ユーザによって選択される外部データを外部データ保存部14に保存する機能を有する。具体的には、外部データ保存部14に退避する外部データである退避外部データと、外部記憶媒体に残存させる外部データである残存外部データに分ける処理を行う。このときに、外部データ判定部16は、外部データ保存部14に保存する外部データを選択する選択画面を表示部13に表示する。また、選択された外部データの合計サイズが外部データ保存部14の空き容量よりも大きい場合に、外部データ保存部14に保存できない旨の通知または表示を行うようにしてもよい。また、ここではユーザによって退避外部データと残存外部データとを分ける場合を示しているが、予め外部データに優先順位情報を設け、優先順位情報と外部データ保存部14の空き容量とに基づいて、退避外部データと残存外部データとを選択するようにしてもよい。
外部データ消去部20は、外部データ保存領域の大きさが外部データの合計サイズよりも小さい場合に、外部データ保存部14に退避するように指定された退避外部データ以外は保護されないので、使用中に外部記憶媒体が第三者に取り外されないように注意を喚起する表示を表示部13にする機能をさらに有する。
つぎに、実施の形態2による制御装置10の動作について説明する。図10は、実施の形態2による制御装置に外部記憶媒体が装着された場合の処理手順の一例を示すフローチャートである。
まず、実施の形態1の図4のステップS11からS13と同様に、外部記憶媒体が制御装置10に装着されると、外部データ保存領域設定部15が内部記憶部に外部データ保存領域を設定し、外部記憶媒体中に外部データが存在するかを判定する(ステップS51からS53)。外部記憶媒体中にデータが存在しない場合(ステップS53でNoの場合)には、退避するデータがないので、処理が終了する。
また、外部記憶媒体内にデータが存在する場合(ステップS53でYesの場合)には、外部データ判定部16は、設定された外部データ保存領域が外部記憶媒体の外部データの合計サイズ以上であるかを判定する(ステップS54)。外部データ保存領域が外部データの合計サイズよりも小さい場合(ステップS54でNoの場合)には、外部データ判定部16は、外部データ振り分け設定処理を行う(ステップS55)。外部データ振り分け設定処理は、たとえば、容量不足で外部データのすべてを保護できないことを表示部13に表示し、外部データ保存部14に退避させる退避外部データと、外部記憶媒体に残存させる残存外部データと、を振り分ける振り分け画面を表示部13に表示する。ユーザは退避可能データ容量を基に、入力部12を介して退避外部データと、残存外部データとに振り分け、外部データ判定部16は、この結果を外部データ振り分け設定として記憶する。なお、この外部データ振り分け設定処理後に、外部データ判定部16は、退避外部データ以外は保護されないことを表示部13に表示してもよい。
図11は、実施の形態2による外部データの選択処理の様子を示す図である。ここでは、図11(a)に示されるように、制御装置10に装着時の外部記憶媒体50には、4つの外部データ301から304が保存されており、外部データ301,302,303,304の順で優先度が低くなるものとする。
図11(b)に示されるように、内部記憶部103は使用領域1031Aと空き領域1031Bとを有し、空き領域1031Bにはすべての外部データ301から304を保存することができないものとする。
そこで、ユーザによって、優先度の高い外部データ301,302が内部記憶部103への退避外部データとして指定され、外部データ303,304が外部記憶媒体50に残存する残存外部データとして指定されたものとする。その結果、図11(b)に示されるように、内部記憶部103の空き領域1031Bには外部データ301,302が保存され、図11(c)に示されるように、外部記憶媒体50には外部データ303,304が残される。
その後またはステップS54で外部データ保存領域が外部データの合計サイズ以上の場合(ステップS54でYesの場合)には、パスワード設定部17は、データ書戻し時のパスワードの設定を行い(ステップS56)、パスワードをパスワード−外部データ対応情報に保存する(ステップS57)。ついで、外部データ保存処理部18は、外部記憶媒体内の退避外部データを外部データ保存領域にコピーする(ステップS58)。その後、外部データ保存処理部18は、外部記憶媒体内の退避外部データと外部データ保存領域の退避外部データとが一致するか判定を行う(ステップS59)。両者が一致しない場合(ステップS59でNoの場合)には、データ異常を表示部13に表示し(ステップS60)、ステップS58に戻る。また、両者が一致する場合(ステップS59でYesの場合)には、退避外部データの保存位置をパスワード−外部データ対応情報に、パスワードに対応づけて保存する(ステップS61)。
その後、内部データ処理部23は、外部記憶媒体内の退避外部データのみを消去する(ステップS62)。そして、内部データ処理部23は、指定された退避外部データ以外は保護されないので、使用後は外部記憶媒体を離脱するように注意喚起するメッセージを表示部13に表示して(ステップS63)、処理が終了する。
なお、データ書戻し処理を伴う外部記憶媒体の取り外し処理は、実施の形態1で説明したものとほぼ同様であるので、その説明を省略する。
実施の形態2では、外部記憶媒体中の外部データの合計サイズが外部データ保存部14の空き容量よりも大きい場合に、ユーザによって選択された外部データを外部データ保存部14の外部データ保存領域に保存し、これ以外のデータを外部記憶媒体に残し、外部記憶媒体の管理に注意を促すメッセージを表示するようにした。そのため、外部記憶媒体の制御装置10への装着状態が継続してしまうことの注意喚起をユーザに対して促すことができるという効果を実施の形態1の効果に加えて得ることができる。
実施の形態3.
実施の形態3では、実施の形態2と同様に、外部データ保存部の空き容量が外部記憶媒体中の外部データのサイズよりも小さい場合について説明する。
図12は、実施の形態3による制御装置の機能構成を模式的に示すブロック図である。制御装置10は、実施の形態1の構成に、データ分割部25と、データ結合部26と、をさらに備える。
データ分割部25は、外部記憶媒体中の外部データの合計サイズが外部データ保存部14の空き容量よりも大きいと外部データ判定部16に判定された場合に、外部記憶媒体中で外部データを複数に分割する。外部データの分割として、分割された一方のデータだけでは意味がなくなるようにするランダム分割、または1行おきの分割などの方法が使用される。また、外部データの分割は、各外部データの分割された一部が外部データ保存部14の外部データ保存領域に保存されるように、分割されるサイズが計算される。
データ結合部26は、外部データ保存部14中の分割された外部データを外部記憶媒体に書き戻す場合あるいは制御処理部24で外部データであるプログラムを実行する際にワークメモリであるRAMに展開するこの外部データが外部データ保存部14と外部記憶媒体に分割された状態で存在する場合に、分割されたデータをそれぞれ外部データ保存部14と外部記憶媒体からワークメモリに読み出し、結合して展開する。なお、実施の形態1,2と同一の構成要素には同一の符号を付してその説明を省略する。
つぎに、実施の形態3による制御装置10の動作について説明する。図13は、実施の形態3による制御装置に外部記憶媒体が装着された場合の処理手順の一例を示すフローチャートである。
まず、実施の形態2の図10のステップS51からS54と同様に、外部記憶媒体が制御装置10に装着されると、外部データ保存領域設定部15が外部データ保存部14に外部データ保存領域を設定し、外部記憶媒体中に外部データが存在するかを判定する。外部記憶媒体中にデータが存在しない場合には、退避するデータがないので、処理が終了し、外部記憶媒体中にデータが存在する場合には、外部データ判定部16は、設定された外部データ保存領域が外部記憶媒体の外部データの合計サイズ以上であるかを判定する(ステップS71からS74)。
ついで、外部データ保存領域が外部記憶媒体の外部データの合計サイズよりも小さい場合(ステップS74でNoの場合)には、データ分割部25は、外部データ保存部14の空き容量を基に、外部データを外部データ保存部14へ退避する退避データと、外部記憶媒体に残存させる残存データと、に分割する(ステップS75)。なお、このとき、容量不足で外部データのすべてを保護できないことを表示部13に表示してもよい。
その後またはステップS74で外部データ保存領域が外部記憶媒体の外部データの合計サイズ以上である場合(ステップS74でYesの場合)には、パスワード設定部17は、外部データ保存部14から外部記憶媒体にデータを書き戻すためのパスワード設定処理を行う(ステップS76)。ついで、パスワード設定部17は、ユーザによってパスワードが入力されると、このパスワードをパスワード−外部データ対応情報に保存する(ステップS77)。その後、外部データ保存処理部18は、外部データを分割して保存することを表示部13に表示する(ステップS78)。
ついで、外部データ保存処理部18は、外部記憶媒体内の退避データを外部データ保存部14に設定した外部データ保存領域にコピーする(ステップS79)。その後、外部データ保存処理部18は、外部記憶媒体中の退避データと外部データ保存領域中の退避データとが一致しているか、すなわちエラーなく保存されたか、を照合する(ステップS80)。
2つのデータが一致していない場合(ステップS80でNoの場合)には、表示部13または制御装置10に接続されるエンジニアリングツールにデータ異常を表示し(ステップS81)、ステップS79に処理が戻る。
また、2つのデータが一致している場合(ステップS80でYesの場合)には、外部データ保存処理部18は、パスワード−外部データ対応情報で、外部データ保存部14にコピーした退避データと、設定したパスワードとを対応付けする(ステップS82)。そして、外部データ消去部20は、外部記憶媒体内の退避データのみを消去し、残存データをそのまま残存させる(ステップS83)。以上によって、外部記憶媒体が接続された場合の外部データの退避処理が終了する。
図14と図15は、実施の形態3による制御装置に外部記憶媒体が装着された場合の処理手順の具体例を示す図である。図14(a)に示されるように、外部記憶媒体50が制御装置10に装着されると、外部記憶媒体50に保存されている外部データ301の合計サイズと、内部記憶部103の空き容量とを取得し、両者が比較される。
ついで、図14(b)に示されるように、内部記憶部103の空き容量が外部記憶媒体50の合計サイズに比して小さい場合には、外部記憶媒体50内の外部データ301が分割される。ここでは、外部データ301は、データ301Aから301Cに三分割される。三分割されたそれぞれのデータ301Aから301Cは、それ自体では意味を有さないデータとなっている。その後、パスワードの設定処理が行われ、パスワード−外部データ対応情報1032にパスワードが保存される。
ついで、図15(a)に示されるように、外部記憶媒体50中の分割したデータ301Aから301Cの内の一部のデータ301Bが内部記憶部103の外部データ保存領域1031にデータ351Bとしてコピーされる。その後、外部記憶媒体50中のデータ301Bと内部記憶部103内のデータ351Bとが一致するか照合され、一致すると外部記憶媒体50中のデータ301Bが消去される。また、コピーされたデータ301Bの保存位置は、パスワード−外部データ対応情報にパスワードと対応付けされて保存される。
その後、図15(b)に示されるように、外部記憶媒体50が不正に抜き取られた場合に、外部記憶媒体50にはデータ301A,301Cが存在するのみである。このデータ301A,301Cは、外部データ301を分割したものであり、しかも一部のデータ301Bが抜けたデータであり、意味がなくなっている。そのため、不正に抜き取った第三者によって、外部記憶媒体50内の外部データ301が不正に利用されてしまうことなどを防ぐことができる。
なお、図14と図15では、外部記憶媒体50に1つの外部データ301が含まれる場合であったが、複数の外部データが含まれる場合でも、同様である。図16は、外部記憶媒体に複数の外部データがある場合の分割の方法を模式的に示す図である。
図16(a)に示されるように、外部データ保存部14内の内部記憶部103は、既にデータまたはプログラムが格納されている使用領域1031Aと、使用されていない空き領域1031Bと、を有する状態となっている。
外部記憶媒体50が装着されると、空き領域1031Bの容量と外部記憶媒体50中の外部データ301から303の合計サイズとが比較される。外部記憶媒体50中の外部データ301から303の合計サイズが内部記憶部103の空き領域1031Bの容量よりも大きい場合には、図16(b)に示されるように、データ分割部25によって各外部データ301から303が、データ301Aから301C,302Aから302C,303Aから303Cに分割される。ここでは、1つの外部データが3つのデータに分割される場合が示されている。また、ここでは図示していないが外部データ301A,301C,302A,302C,303A,303Cが残存データとされ、外部データ301B,302B,303Bが退避データとされる。
ついで、図16(c)に示されるように、分割されたデータのうち退避データ301B,302B,303Bのみが内部記憶部103の外部データ保存領域である空き領域1031Bにコピーされ、残存データ301A,301C,302A,302C,303A,303Cはそのまま外部記憶媒体50に残されたままとなる。このとき、分割された退避データ301B,302B,303Bの合計サイズは、空き領域1031Bの容量以下となっている。その後、コピーされた退避データ301B,302B,303Bと外部記憶媒体50中の退避データ301B,302B,303Bとが一致すると外部記憶媒体50から退避データ301B,302B,303Bが削除される。
つぎに、外部記憶媒体の制御装置10からの取り外しおよび外部データの書戻し処理について説明する。図17は、実施の形態3による外部データの書戻し処理を伴う制御装置からの外部記憶媒体の抜き取り処理の一例を示すフローチャートである。
まず、実施の形態1の図7のステップS31からS34と同様に、外部記憶媒体取り外しコマンドが実行されると、パスワードが入力され、入力されたパスワードがパスワード−外部データ対応情報中のパスワードと一致するかが判定される(ステップS91からS94)。
入力されたパスワードとパスワード−外部データ対応情報中のパスワードとが一致した場合(ステップS93でYesの場合)には、データ結合部26は、パスワードに対応付けられた外部データ保存部14の外部データ保存領域から退避データを読み込み、また対応する残存データを外部記憶媒体50から読み込み、これらの退避データと残存データとを結合して外部データを復元する(ステップS95)。また、復元した外部データを外部記憶媒体50に書き戻す(ステップS96)。その後、生成した外部データと外部記憶媒体50に書き戻した外部データとが一致するかを照合する(ステップS97)。両者が一致しない場合(ステップS97でNoの場合)には、外部記憶媒体に書き戻した外部データが異常である旨を表示部13に表示し(ステップS98)、ステップS96に戻る。
一方、両者が一致する場合(ステップS97でYesの場合)には、制御装置10の外部データ保存部14にコピーされた退避データを消去するかを判定する(ステップS99)。以上の処理では、外部記憶媒体50に外部データが書戻され、取外し可能の状態となっている。このときに内部データ処理部23は、制御装置10の外部データ保存部14にコピーされた退避データを消去するか否かを選択する選択画面を表示部13またはエンジニアリングツールに表示し、これに対するユーザの入力結果に基づいて判定を行う。
外部データ保存部14内の退避データを消去する場合(ステップS99でYesの場合)には、内部データ処理部23は、外部データ保存部14の外部データ保存領域中の退避データを消去し(ステップS100)、パスワード−外部データ対応情報中の対応するレコードを消去し、更新する(ステップS101)。
その後、または外部データ保存部14内の退避データを消去しない場合(ステップS99でNoの場合)には、内部データ処理部23は外部記憶媒体を取り外し可能であることを表示部13に表示し(ステップS102)、処理が終了する。
図18は、実施の形態3による分割されたデータの実行処理の手順の一例を示すフローチャートである。まず、外部データ保存部14中のプログラムまたはパラメータなどのデータの実行コマンドが指示されると(ステップS111)、制御処理部24は指示されたコマンドに対応するデータであるプログラムが分割されているかを確認する(ステップS112)。データであるプログラムが分割されていない場合(ステップS112でNoの場合)には、制御処理部24はデータであるプログラムをメインメモリであるワークメモリに読み出す(ステップS113)。そして、読み出したデータを実行し(ステップS117)、処理が終了する。
一方、データであるプログラムが分割されている場合(ステップS112でYesの場合)には、データ結合部26は、指示されたコマンドに対応する残存データを外部記憶媒体50からメインメモリであるワークメモリに読み出し(ステップS114)、また指示されたコマンドに対応する退避データを外部データ保存部14からメインメモリであるワークメモリに読み出す(ステップS115)。その後、データ結合部26は、読み出した残存データと退避データとを結合し、外部データを復元する(ステップS116)。そして、制御処理部24は、メインメモリであるワークメモリに復元された外部データを実行し(ステップS117)、処理が終了する。
実施の形態3では、外部データ保存部14に外部記憶媒体50中の外部データをすべて保存することができない場合に、すべての外部データを分割し、各外部データから一部の分割データを退避データとして外部データ保存部14の外部データ保存領域に保存し、退避データ以外のデータを残存データとして外部記憶媒体50中に残すようにした。これによって、外部記憶媒体50が抜き取られてしまった場合でも、外部記憶媒体50には完全なデータが含まれていないので、データの流出を防ぐことができるという効果を有する。
実施の形態4.
実施の形態4では、外部データ保存領域に保存された外部データを更新した場合の処理について説明する。
実施の形態4による制御装置10は、実施の形態1の図1に示されたものとほぼ同様の構成を有するが、外部データ保存処理部18、外部データ書戻し部22および内部データ処理部23の機能が実施の形態1のものとは異なる。外部データ保存処理部18は、ユーザによって入力部12を介して外部データが更新された場合には、外部データ保存領域に更新された外部データである更新外部データを保存し、元の外部データのパスワードに対応付けてパスワード−外部データ対応情報に、更新外部データの格納位置を記憶する機能を有する。
図19は、実施の形態4によるパスワード−外部データ対応情報の一例を示す図である。この図に示されるように、パスワード−外部データ対応情報は、外部データを識別するデータ名などの情報と、外部データの先頭アドレスおよびサイズと、外部データに対して設定されたパスワードと、更新外部データを識別する更新データ名などの情報と、更新外部データの先頭アドレスおよびサイズと、を有する。更新外部データの更新データ名と先頭アドレスおよびサイズは、元の外部データから派生した更新外部データを複数格納することができるように対応付けがなされている。また、データ名とパスワードの組み合わせに対して関連付けられる更新外部データの数に制限はない。
外部データ保存処理部18は、外部データが更新されると、パスワード−外部データ対応情報の外部データまたはパスワードに対応するレコードに更新外部データのアドレスとサイズを追記していく。パスワード−外部データ対応情報の更新は、外部データが更新されるタイミングであってもよいし、ユーザによって更新外部データを登録する指示が出されたタイミングであってもよいし、その他のタイミングであってもよい。
外部データ書戻し部22は、外部記憶媒体にデータを書き戻す際に、外部データ保存領域中の外部データと更新外部データのいずれを書き戻すかを設定する書戻し処理設定画面を表示部13に表示し、この内容に基づいて外部データの書戻し処理を行う。すなわち、外部データ書戻し部22は、書戻し処理設定画面での設定内容に基づいて、元の外部データのみを書き戻す処理、更新外部データのみを書き戻す処理、または元の外部データと更新外部データの両方を書き戻す処理、を実行する。
内部データ処理部23は、外部記憶媒体50にデータを書き戻した後に、外部データ保存部14の外部データ保存領域に保存されている外部データと更新外部データの消去の有無を設定する消去処理設定画面を表示部13に表示し、この内容に基づいて外部データ保存領域に保存されている外部データまたは更新外部データの消去処理を行う。すなわち消去処理設定画面での設定内容に基づいて、外部データと更新外部データの消去処理、または外部データと更新外部データを消去せずにそのままとする処理、を実行する。
図20は、実施の形態4による外部データの書戻し処理を伴う制御装置からの外部記憶媒体の抜き取り処理の一例を示すフローチャートである。まず、実施の形態1の図7のステップS31からS34と同様に、外部記憶媒体50の取り外しコマンドが実行されると、パスワードが入力され、入力されたパスワードがパスワード−外部データ対応情報中のパスワードと一致するかが判定される(ステップS131からS134)。
入力されたパスワードとパスワード−外部データ対応情報中のパスワードとが一致した場合(ステップS133でYesの場合)には、外部データ書戻し部22は、外部データ保存部14内のデータ更新履歴をチェックする。すなわち、パスワード−外部データ対応情報を参照して入力されたパスワードに対応する外部データに更新外部データが存在するかを判定する(ステップS135)。
パスワードに対応する外部データに更新外部データが存在する場合(ステップS135でYesの場合)には、外部データと更新外部データの中から書き戻す対象を選択する書戻しデータ選択処理を行う(ステップS136)。書戻しデータ選択処理は、入力されたパスワードに対応する外部データと更新外部データをパスワード−外部データ対応情報に基づいて取得し、書戻し処理設定画面を表示部13に表示する。この書戻し処理設定画面でユーザは書戻すデータの選択を行い、この選択内容を書戻しデータ指定情報として外部データ書戻し部22は記憶する。書戻すデータとして、外部データのみなのか、更新データのみなのかまたは外部データと外部更新データの両方なのかが選択される。
その後またはパスワードに対応する外部データに更新外部データが存在しない場合(ステップS135でNoの場合)には、外部データ書戻し部22は、外部データ保存部14内の外部データまたは更新外部データを外部記憶媒体50に書戻す(ステップS137)。ここでは、更新外部データがない場合には、外部データのみが書戻され、更新外部データがある場合にはステップS136で記憶した書戻しデータ指定情報に基づいたデータ、すなわち外部データと更新外部データのうち少なくとも一方、が書戻されることになる。
その後は、実施の形態1の図7のステップS36からS41と同様に、外部記憶媒体50に書戻されたデータと外部データ保存領域の元のデータとが一致するかを照合し、一致する場合には、ユーザからの指示に従って外部データ保存部14内の外部データと更新外部データの消去または非消去を行い、外部記憶媒体50の取り外しが可能になるとこの旨を表示部13に表示して処理が終了する(ステップS138からS143)。
図21と図22は、実施の形態4による書戻し処理の一例を模式的に示す図である。まず、図21(a)に示されるように、空の外部記憶媒体が装着された状態で、ユーザが操作盤105から外部記憶媒体50の取り外しコマンドの実行を指示すると、パスワードの入力が求められ、ユーザは操作盤105を介してパスワードの入力を行う。パスワード−外部データ対応情報からパスワードに対応するレコードを確認し、更新外部データが存在する場合には書戻しデータを指定する処理を行う。ユーザは、たとえば更新外部データを書戻し、元の外部データは書戻さないように操作盤105を介して指定する。
ついで、図21(b)に示されるように、書戻しデータ指定に基づいて外部記憶媒体50に更新外部データがコピーされる。外部記憶媒体50にコピーされた更新外部データと外部データ保存領域1031の更新外部データとが一致すると、図22に示されるように、外部記憶媒体50の取り外しが可能な状態をユーザに通知し、ユーザによって外部記憶媒体50が制御装置10から取り外される。
なお、実施の形態4におけるデータ退避処理を伴う外部記憶媒体50の接続時の処理は、実施の形態1で説明したものと同様であるので、その説明を省略する。
実施の形態4では、外部データ保存部14に保存された外部データが更新された場合に、この更新外部データを外部データに設定したパスワードに対応付けて保存し、書戻し処理を行う場合にどのデータを書戻すかを選択するようにした。これによって、外部記憶媒体50に書戻す処理を、元の外部データとするか、更新外部データとするか、それとも両方にするかをユーザが選択することができるという効果を有する。
実施の形態5.
実施の形態1から4では、制御装置に装着される外部記憶媒体とパスワードとの間の関係について特に限定していなかった。たとえば、ある外部記憶媒体を制御装置に装着し、外部データを外部データ保存部に退避させた後にこの外部記憶媒体を離脱し、他の外部記憶媒体を制御装置に装着しても書戻し処理を行うことができた。実施の形態5では、書戻し処理ができる外部記憶媒体の種類または個体を指定することができる場合について説明する。
図23は、実施の形態5による制御装置の機能構成を模式的に示すブロック図である。制御装置10は、実施の形態1の構成に外部記憶媒体情報取得部27と、設定情報処理部28と、設定情報記憶部29と、をさらに備える。なお、制御装置10の外部記憶媒体50の接続スロットとして、SDカード、USBメモリ、コンパクトフラッシュ(登録商標)の3種類が設けられる場合を以下では説明する。
外部記憶媒体情報取得部27は、制御装置10に外部記憶媒体50が装着されることを検知すると、外部記憶媒体50についての固有情報である種別情報を取得する。この種別情報は、外部記憶媒体50に設定された特定のエリアに格納されており、この特定のエリアの情報を読み込むことで取得することができる。
設定情報処理部28は、制御装置10に装着した外部記憶媒体50の種類について、データ保護の有無、データの書戻し先の指定、データ書戻し先情報、内部記憶部内データ消去などを含む設定情報を設定するための設定情報設定画面を表示部13に表示し、設定情報設定画面に入力された内容を設定情報として設定情報記憶部29に記憶する。設定情報記憶部29は、設定情報処理部28で生成された設定情報を記憶する。
図24は、設定情報の一例を示す図である。この例では、設定情報は、外部記憶媒体の種別情報、データ保護機能、データ書戻し先の指定、データ書戻し先情報、書戻し処理後の外部データ保存部14である内部記憶部内の外部データの消去実行の有無を含む。
外部記憶媒体の種別情報は、SDカード、microSDカード、コンパクトフラッシュ(登録商標)、USBメモリなどの種別を示すものである。データ保護機能は、外部記憶媒体50が制御装置10に装着された場合に外部記憶媒体50に保存されたデータを外部データ保存部14に退避するか否かを示すものである。
データ書戻し先の指定は、書戻し処理時のデータの書戻しの可否を指定するものである。データ書戻し先の指定がある場合には、つぎのデータ書戻し先情報で指定された種別の外部記憶媒体50以外には書戻しされない。またデータ書戻し先の指定がない場合には、どの種別の外部記憶媒体50にも書戻し処理が行われる。
データ書戻し先情報は、外部データ保存部14に記憶された外部データについての書戻しを実行することができる外部記憶媒体50の種別を設定するものである。内部記憶部内データ消去は、書戻し処理後に外部データ保存部14である内部記憶部に保存した外部データを消去するかそのまま残すかを指定するものである。
また、外部記憶媒体50には、書戻し処理について許可されているか否かを示す許可情報が保存される。この許可情報は、設定情報処理部28で設定した内容に基づいて、外部記憶媒体50に対して書き込まれる。なお、実施の形態1と同一の構成要素には同一の符号を付してその説明を省略している。
図24の例では、設定情報には、SDカード、USBメモリ、コンパクトフラッシュ(登録商標)の各種類についてのレコードが登録されている。SDカード、USBメモリおよびコンパクトフラッシュ(登録商標)のそれぞれは、データ保護機能、データ書戻し先指定、および内部記憶部内データ消去が設定され、データ書戻し先情報としては、同種の外部記憶媒体のみ許可された場合が示されている。
つぎに、このような構成の制御装置10での動作について説明する。図25は、実施の形態5による外部記憶媒体装着時の動作処理手順の一例を示すフローチャートである。まず、外部記憶媒体50が制御装置10に装着されると(ステップS151)、外部記憶媒体情報取得部27は外部記憶媒体50から種別情報を取得する(ステップS152)。ついで、外部記憶媒体情報取得部27は、取得した種別情報に対応するレコードが設定情報中に存在するかを判定する(ステップS153)。
種別情報に対応するレコードがない場合(ステップS153でNoの場合)には、設定情報処理部28は、設定情報設定処理を行う(ステップS154)。設定情報設定処理は、たとえば、データ保護が必要か否か、データ書戻し先の指定をするか否か、データを外部記憶媒体50に書戻した後に、制御装置10内に残った外部データを消去するか否かなどを設定するための設定画面を表示部13に表示し、設定画面に入力された内容を設定情報の1つのレコードとして種別情報に関連付けして保存することによって行われる。ついで、設定情報処理部28は、設定処理で設定された情報のうちデータ書戻し先の指定に関する書戻し許可情報を外部記憶媒体50に保存する(ステップS155)。
また、ステップS153で種別情報が設定情報内にある場合(ステップS153でYesの場合)には、設定情報中の種別情報に対応するレコードに、データ保護機能が設定されているかを判定する(ステップS156)。データ保護機能が設定されていない場合(ステップS156でNoの場合)には、外部記憶媒体50内の外部データの制御装置10への退避処理は行われず、処理が終了する。
データ保護機能が設定されている場合(ステップS156でYesの場合)には、外部データ保存領域設定部15は、外部データ保存部14に外部データ保存領域を設定する(ステップS157)。ついで、外部データ判定部16は、外部記憶媒体50内に外部データが存在するかを判定する(ステップS158)。外部記憶媒体50内に外部データが存在しない場合(ステップS158でNoの場合)には、処理が終了する。
また、外部記憶媒体50内に外部データが存在する場合(ステップS158でYesの場合)には、パスワード設定部17は、データ書戻しの際のパスワードを設定する(ステップS159)。パスワード設定部17は、設定されたパスワードをパスワード−外部データ対応情報に保存する(ステップS160)。
ついで、外部データ保存処理部18は、外部記憶媒体50内の外部データを外部データ保存部14の外部データ保存領域にコピーし(ステップS161)、外部記憶媒体50と外部データ保存領域の外部データが一致するかを判定する(ステップS162)。両者が一致しない場合(ステップS162でNoの場合)にはデータ異常を表示し(ステップS163)、ステップS161に処理が戻る。
両者が一致する場合(ステップS162でYesの場合)には、外部データ保存処理部18は、外部データ保存部14にコピーした外部データとパスワードとを対応付けし、パスワード−外部データ対応情報に保存する(ステップS164)。そして、外部記憶媒体50内の外部データを消去し(ステップS165)、処理が終了する。
なお、上記した説明では、外部記憶媒体50の接続スロットとして、SDカード、USBメモリ、コンパクトフラッシュ(登録商標)の3種類を例に挙げているが、これに限定されるものではなく、他の種類の外部記憶媒体50であってもよく、また接続スロットもそれぞれの種類に対して任意の数を設けることができる。
図26は、実施の形態5による外部記憶媒体の取り外し処理手順の一例を示すフローチャートである。まず、ユーザによって書戻し先の外部記憶媒体50または接続スロットが入力部12を介して選択されると(ステップS171)、外部データ書戻し部22は、書戻し先の外部記憶媒体50が接続されているかチェックする(ステップS172)。書戻し先の外部記憶媒体50が接続されていない場合(ステップS172でNoの場合)には、外部記憶媒体50が接続されていないことを示すエラーメッセージを表示部13に表示し(ステップS173)、ステップS171に処理が戻る。
書戻し先の外部記憶媒体50が接続されている場合(ステップS172でYesの場合)には、ユーザによって入力部12を介してパスワードが入力される(ステップS174)。パスワード判定部21は、入力されたパスワードがパスワード−外部データ対応情報に保存されているパスワードと一致するかを判定する(ステップS175)。
入力されたパスワードがパスワード−外部データ対応情報内のパスワードと一致しない場合(ステップS175でNoの場合)には、パスワードが一致しないことを表示部13に表示し(ステップS176)、ステップS174に戻る。また、入力されたパスワードがパスワード−外部データ対応情報内のパスワードと一致する場合(ステップS175でYesの場合)には、外部データ書戻し部22は、外部記憶媒体50の書戻し許可情報を読み出し(ステップS177)、外部データの書戻しが許可されているか否かを判定する(ステップS178)。外部データの書戻しが許可されていない場合(ステップS178でNoの場合)には、外部記憶媒体50には外部データの書戻しができない旨の表示を行い(ステップS179)、処理が終了する。
一方、外部データの書戻しが許可されている場合(ステップS178でYesの場合)には、外部データ書戻し部22は、外部データ保存部14内の入力されたパスワードに対応する外部データを外部記憶媒体50に書戻す(ステップS180)。その後、外部データ書戻し部22は、外部記憶媒体50と外部データ保存部14内の2つの外部データが一致しているかを照合し(ステップS181)、一致していない場合(ステップS181でNoの場合)にはデータ異常である旨を表示部13に表示して(ステップS182)、ステップS180に処理が戻る。
また、両者が一致している場合(ステップS181でYesの場合)には、設定情報を参照し、外部データ保存部14内の外部データを消去するか否かを判定する(ステップS183)。外部データ保存部14内のデータを消去する場合(ステップS183でYesの場合)には、外部データ保存部14内の外部データを消去し(ステップS184)、パスワード−外部データ対応情報の対応するレコードのパスワードを消去する(ステップS185)。
その後またはステップS183で外部データ保存部14内の外部データを消去しない場合(ステップS183でNoの場合)には、外部記憶媒体50が取り外し可能な状態となり(ステップS186)、処理が終了する。
図27は、実施の形態5によるデータの書戻し処理の手順の概要を模式的に示す図である。図27(a)に示されるように、制御装置10の内部記憶部103の外部データ保存領域1031には、外部データS1が保存され、パスワード−外部データ対応情報1032には外部データS1に対応するパスワードS1が記憶され、設定情報1033には外部記憶媒体50に対応する設定情報S1が記憶されている状態にある。
書戻し処理の実行では、外部記憶媒体50が装着されているかが確認され、その後入力されたパスワードがパスワード−外部データ対応情報に記憶されているパスワードS1と一致するかの判定が行われ、さらに外部記憶媒体50の書戻し許可情報S1には外部データS1の書戻しが許可されているかが判定される。
その後、外部記憶媒体50の書戻し許可情報S1に外部データS1の書戻しが許可されている場合には、図27(b)に示されるように、外部データ保存領域1032の外部データS1が外部記憶媒体50にコピーされ、書戻される。
なお、上記した説明では、外部記憶媒体50の種類ごとに設定を行っていたが、種類ではなく、個体ごとに識別して設定を行うようにしてもよい。この場合には、設定情報とパスワード−外部データ対応情報とを個体ごとに管理すればよい。また、外部記憶媒体50を個体ごとに識別する方法としては、たとえば製品個々の情報を示す個体識別情報などを用いることができる。
図28は、外部記憶媒体を個体ごとに管理する場合のパスワード−外部データ対応情報の一例を示す図である。この図に示されるように、図24の設定情報に外部記憶媒体についての固有情報である個体識別情報がさらに追加された構造となっている。
たとえば個体識別情報が「SDカード1」の場合には、種別情報は「SDカード」であり、データ保護機能は有りで、データ書戻し先も指定されており、データ書戻し先情報として、SDカード、USBメモリ、コンパクトフラッシュ(登録商標)の種別が登録され、内部記憶部内データ消去は有りに設定されている。
また、たとえば個体識別情報が「USBメモリ1」の場合には、種別情報は「USBメモリ」であり、データ保護機能は有りで、データ書戻し先とデータ書戻し先情報は指定されておらず、内部記憶部内データ消去は有りに設定されている。
さらに、個体識別情報が「コンパクトフラッシュ(登録商標)1」の場合には、種別情報は「コンパクトフラッシュ(登録商標)」であり、データ保護機能は有りで、データ書戻し先、データ書戻し先情報および内部記憶部内データ消去はともに設定されていない。また、個体識別情報が「SDカード2」、「USBメモリ2」、「コンパクトフラッシュ(登録商標)2」は、それぞれ制御装置10に未接続で、設定前の状態であり、何も設定されていない。
図29は、複数種類の外部記憶媒体と着脱可能な制御装置でのパスワード−外部データ対応情報と設定情報の関係を模式的に示す図である。図29(a)に示されるように、制御装置10には、SDカード用のメモリインタフェース104Aと、USBメモリ用のメモリインタフェース104Bと、コンパクトフラッシュ(登録商標)用のメモリインタフェース104Cと、が設けられている。外部記憶媒体として、SDカード51A,51B、USBメモリ52A,52B、コンパクトフラッシュ(登録商標)53A,53Bなどがある。また、ここでは設定情報1033は、外部記憶媒体の種類ではなく、個体ごとに設けられるものとする。
図29(b)は、制御装置10のメモリインタフェース104AにSDカード51Aが接続され、メモリインタフェース104BにUSBメモリ52Aが接続され、メモリインタフェース104Cにコンパクトフラッシュ(登録商標)53Aが接続されている状態が示されている。また、内部記憶部103の設定情報1033には、SDカード51A、USBメモリ52Aおよびコンパクトフラッシュ(登録商標)53Aのそれぞれのレコードが登録されている。内部記憶部103の外部データ保存領域1031には、SDカード51AとUSBメモリ52Aの外部データS1,U1が退避され、これに対応してパスワード−外部データ対応情報1032には、SDカード51AとUSBメモリ52AのパスワードS1,U1が格納される。しかし、コンパクトフラッシュ(登録商標)53Aの外部データC1は内部記憶部103の外部データ保存領域1031には保存されない。また、SDカード51Aには、許可情報S1が保存されている。
また、上記した説明では、設定情報をパスワード−外部データ対応情報とは別個に管理する場合を示したが、パスワード−外部データ対応情報に設定情報を含ませるようにしてもよい。図30は、設定情報の内容を含むパスワード−外部データ対応情報の一例を示す図である。この図に示されるように、外部データとパスワードの組み合わせに対して、データ書戻し先媒体情報などの設定情報が関連付けされ、レコードとして保存される。
実施の形態5では、外部記憶媒体50が制御装置10に接続されると、データ保護機能の有無、データ書戻し先の指定の有無、書戻し後の外部データ保存部14内の外部データの消去の有無を含む設定情報を設定し、この内容に基づいて処理を行うことにした。そのため、外部記憶媒体50の種類ごとまたは個体ごとに、外部データの書戻しの可否を設定することができ、不正な外部データの持ち去りを防ぐことができるという効果を有する。
実施の形態6.
実施の形態6では、外部記憶媒体にキー、すなわち鍵の役目を持たせる場合について説明する。
図31は、実施の形態6による制御装置の機能構成を模式的に示すブロック図である。この制御装置10は、実施の形態5の制御装置に、外部記憶媒体50の制御装置10への着脱状態を検知する外部記憶媒体着脱検知部30をさらに備える。外部記憶媒体着脱検知部30は、外部記憶媒体50内の外部データが外部データ保存部14へ退避された後、退避された外部データを実行する際に、実行する外部データを格納していた外部記憶媒体50が制御装置10に装着されているか否かを判定し、この結果を制御処理部24に通知する。つまり、実行する外部データを格納していた外部記憶媒体50が装着されている場合には、制御処理部24はプログラムまたはパラメータなどのデータである外部データを実行することができ、実行する外部データを格納していた外部記憶媒体50が離脱されている場合または実行する外部データを格納していた外部記憶媒体50とは異なる外部記憶媒体50が装着されている場合には、制御処理部24は外部データを実行することができない。
図32は、実施の形態6による設定情報の構成の一例を示す図である。設定情報には、外部記憶媒体50をコピーした外部データの実行キーとして利用するか否かを示す項目がさらに付加されている。実行キーとして利用すると設定されている場合には、外部記憶媒体50が装着されていなければ、外部記憶媒体50に元々保存されていた外部データを実行することができない。一方、実行キーとして利用しないと設定されている場合には、外部記憶媒体50の装着の有無にかかわらず外部データを実行することができる。なお、その他の構成は、実施の形態5で説明したものと同様であるのでその説明を省略する。
外部記憶媒体着脱検知部30は、たとえば、装着されている外部記憶媒体50の種別情報または個体識別情報を取得し、制御処理部24で実行しようとしている外部データに設定情報で対応付けられた種別情報または個体識別情報が取得した種別情報または個体識別情報を有しているか否かを判定することによって、制御処理部24に外部データを実行可能であるか否かを通知することができる。
図33は、実施の形態6による外部データの実行処理の手順の一例を示すフローチャートである。まず、制御処理部24によって実行する外部データが選択されると(ステップS191)、外部記憶媒体着脱検知部30は、設定情報を用いて、実行する外部データを保存していた外部記憶媒体50の種別情報または個体識別情報を取得する(ステップS192)。また、外部記憶媒体着脱検知部30は、外部記憶媒体インタフェース11に外部記憶媒体50が装着されているかを判定する(ステップS193)。外部記憶媒体50が装着されている場合(ステップS193でYesの場合)には、さらにこの外部記憶媒体50の種別情報または個体識別情報を取得する(ステップS194)。その後、外部記憶媒体着脱検知部30は、取得した2つの種別情報または個体識別情報が一致するかを判定する(ステップS195)。
両者が一致する場合(ステップS195でYesの場合)には、外部記憶媒体着脱検知部30は、制御処理部24に2つの種別情報または個体識別情報が一致する旨を通知する。これによって、制御処理部24は選択した外部データを実行し(ステップS197)、処理が終了する。
一方、両者が一致しない場合(ステップS195でNoの場合)には、外部記憶媒体着脱検知部30は、制御処理部24に2つの種別情報または個体識別情報が一致しない旨を通知する。その後、制御処理部24は、選択した外部データを実行することができず(ステップS197)、外部記憶媒体着脱検知部30は、正しい外部記憶媒体50を装着することを促すメッセージを表示部13に表示し(ステップS198)、処理が終了する。
また、ステップS193で外部記憶媒体インタフェース11に外部記憶媒体50が装着されていない場合(ステップS193でNoの場合)には、外部記憶媒体着脱検知部30は、制御処理部24に外部記憶媒体50が装着されていない旨を通知する。その後、制御処理部24は、選択した外部データを実行することができず(ステップS199)、外部記憶媒体着脱検知部30は、外部記憶媒体50を装着することを促すメッセージを表示部13に表示し(ステップS200)、処理が終了する。
図34と図35は、実施の形態6による外部データの実行処理の状態の一例を模式的に示す図である。図34(a)に示されるように、外部記憶媒体50から内部記憶部103の外部データ保存領域1031に外部データ351が退避され、空の外部記憶媒体50が制御装置10に装着された状態にある。この状態で、外部データ保存領域1031の外部データ351の実行が指示されると、CPU101は、外部データ351に対応付けられた種別情報または個体識別情報を有する外部記憶媒体50が接続されているかを確認する。
ついで、図34(b)に示されるように、外部記憶媒体50の接続が確認され、かつ外部記憶媒体50が制御装置10に装着されている状態では、CPU101は外部データ保存領域1031の外部データ351を実行することができる。
一方、図35(a)に示されるように、外部記憶媒体50が制御装置10から取り外されてしまった場合には、CPU101は外部記憶媒体50が制御装置10に接続されているかの確認を行う。このとき、CPU101は、外部記憶媒体50が制御装置10に接続されていないことを確認する。外部記憶媒体50が制御装置10に接続されていないと、図35(b)に示されるように、CPU101は、外部データ351を実行することができない状態となる。
なお、外部記憶媒体50が装着された場合の処理と、外部記憶媒体50が離脱される場合の処理とは、実施の形態5で説明したものとほぼ同様であるので、その説明を省略する。
実施の形態6では、外部記憶媒体50から外部データ保存部14に外部データを退避した後、この外部データを保存していた外部記憶媒体50が制御装置10に装着されている状態でなければ、外部データを実行することができないようにした。これによって、ユーザが制御装置10の近くに存在する場合でなければ、外部記憶媒体50に保存された外部データを実行することができない。その結果、たとえばユーザが外部記憶媒体50を抜き取って制御装置10の近傍から離れたときに、第三者が制御装置10に他の外部記憶媒体50を装着しても、制御装置10がユーザに不測の動作をすることがない。
実施の形態7.
上記した実施の形態では、外部データ保存部の外部データを外部記憶媒体に書戻す場合には、平文の形で書戻していた。実施の形態7では、暗号文の形で書戻す場合を説明する。
実施の形態7における制御装置10は、上記してきた実施の形態の制御装置10と構成は同一であるが、外部データ書戻し部22の機能が異なる。外部データ書戻し部22は、書戻し処理のコマンドが実行され、パスワードが入力されると、外部データ保存部14内の対象となる外部データを入力されたパスワード、すなわち対象となる外部データに対応付けられたパスワードを用いて暗号化し、暗号化した外部データを外部記憶媒体50にコピーする。また、コピー後のデータの照合は、外部記憶媒体50にコピーされた暗号化した外部データと、コピー元の暗号化した外部データとで行われる。
つぎに、このような外部データの書戻し処理について説明する。なお、実施の形態7における外部記憶媒体50が装着された場合の処理については、上記した実施の形態と同様であるので、説明を省略する。図36と図37は、実施の形態7による外部データの書戻し処理の手順の一例を模式的に示す図である。なお、ここでは書戻し処理の要部のみを説明する。
まず、図36(a)に示されるように、制御装置10には外部記憶媒体50が装着され、外部記憶媒体50に保存されていたデータは外部データ保存部14に退避された状態にある。この状態で、操作盤105を介してユーザが外部記憶媒体50の取り外しコマンドの実行を指示する。
外部記憶媒体50の取り外しコマンドが実行されると、図36(b)に示されるように、パスワードの入力画面が表示部13に表示され、ユーザによって操作盤105を介してパスワードが入力される。入力されたパスワードは、パスワード−外部データ対応情報1032中のパスワードと一致するか照合される。
ついで、図37(a)に示されるように、外部データ書戻し部22は、入力されたパスワードに対応付けられた外部データ保存領域1031内の外部データ351を、入力されたパスワードで暗号化し、図示しない暗号化外部データを生成する。その後、外部データ書戻し部22は、暗号化外部データを外部記憶媒体50にコピーし、コピーした暗号化外部データ301Aがコピー元の暗号化外部データと一致するかを照合する。
そして、両者が一致する場合には、図37(b)に示されるように、暗号化外部データ301Aがコピーされた外部記憶媒体50が制御装置10から取り外し可能な状態となる。なお、暗号化外部データ301Aの基となる外部データ351については、上記した実施の形態で説明したように処理される。また、制御装置10内で生成された暗号化外部データは、照合後に削除されてもよいし、そのままデータ保存領域に残してもよい。また、このように、制御装置10内の外部データ351を暗号化外部データ301Aとして外部記憶媒体50に書戻す処理は、上記した各実施の形態に対して適用することができる。
実施の形態7では、外部記憶媒体50に外部データ保存部14内の外部データを書戻す処理を行う場合に、この外部データに対して設定されたパスワードを用いて暗号化した暗号化外部データを外部記憶媒体50に書戻した。これによって、外部記憶媒体50に外部データを書戻した状態で外部記憶媒体50が盗難された場合でも、外部記憶媒体50内の外部データが閲覧されてしまう確率を低減することができるという効果を有する。
実施の形態8.
実施の形態2では、外部データ保存部の空き容量が外部記憶媒体に保存されている外部データの合計サイズよりも小さい場合に、優先度の高い外部データを外部データ保存部に保存し、優先度の低い外部データは外部記憶媒体に残存させたままとした。実施の形態8では、外部記憶媒体に残存させるデータを暗号化する場合について説明する。
実施の形態8による制御装置10は、実施の形態2の制御装置10において、外部データ保存処理部18の機能が異なる。すなわち、外部データ保存処理部18は、外部記憶媒体50の外部データを外部データ保存部14に退避する際、外部データ保存部14の空き容量が外部記憶媒体50の外部データの合計サイズよりも小さい場合に、退避外部データを外部データ保存部14にコピーするとともに、外部記憶媒体50に残る残存外部データを設定されたパスワードで暗号化して暗号化外部データを生成し、外部記憶媒体50に保存し、残存外部データを削除する機能をさらに備える。
図38は、実施の形態8による制御装置に外部記憶媒体が装着された場合の処理手順の一例を示すフローチャートである。まず、実施の形態2の図10のステップS51からS57と同様に、外部記憶媒体50が制御装置10に装着されると、外部データ保存領域設定部15が内部記憶部に外部データ保存領域を設定し、外部データ保存領域の容量が外部記憶媒体50の外部データの合計サイズよりも小さい場合に、退避可能データ容量を基に、外部データ保存部14に退避する退避外部データと外部記憶媒体50に残存させる残存外部データとに振り分ける。そして、データ書戻し時のパスワードを設定し、設定したパスワードをパスワード−外部データ対応情報に保存する(ステップS211からS217)。
ついで、外部記憶媒体50中の残存外部データを、ステップS216で設定されたパスワードを用いて暗号化して暗号化残存外部データを生成し(ステップS218)、暗号化残存外部データを外部記憶媒体50に保存し、外部記憶媒体50中の残存外部データを消去する(ステップS219)。このとき、外部データ保存処理部18は、退避外部データ以外の残存外部データは暗号化して外部記憶媒体50に保存する旨の表示を表示部13に出力してもよい。
その後、外部記憶媒体50中の退避外部データを外部データ保存部14の外部データ保存領域にコピーする(ステップS220)。そして、実施の形態2の図10のステップS59からS63と同様に、外部記憶媒体50と外部データ保存部14の退避外部データとの照合を行い、外部データ保存部14に保存した退避外部データの保存位置をパスワード−外部データ対応情報に登録し、外部記憶媒体50内の退避外部データを消去する(ステップS221からS225)。以上で、処理が終了する。
図39は、実施の形態8による外部データが処理される様子を模式的に示す図である。図39(a)で、外部記憶媒体50中の外部データ301,302が退避外部データであり、外部データ303,304が残存外部データに指定されたものとする。パスワードが設定されると、図39(b)に示されるように、残存外部データ303,304が設定されたパスワードによって暗号化され、暗号化外部データ303X,304Xとして外部記憶媒体50に保存される。そして、外部データ303,304は外部記憶媒体50から消去される。一方、退避外部データ301,302は、実施の形態2と同様に内部記憶部103の空き領域1031Bにコピーされる。
外部記憶媒体50を制御装置10から離脱する場合には、図39(c)に示されるように、外部データ書戻し部22が、外部データ保存部14中の退避外部データ301,302を外部記憶媒体50にコピーするとともに、入力されたパスワードを用いて外部記憶媒体50中の暗号化外部データ303X,304Xを復号化して平文の残存外部データ303,304を外部記憶媒体50に保存し、暗号化外部データ303X,304Xを消去するようにしてもよい。この場合には、外部データ書戻し部22は、パスワードを用いて外部記憶媒体50中の暗号化データを復号化する機能を有することになる。
あるいは、図39(d)に示されるように、外部データ書戻し部22が、入力されたパスワードを用いて外部データ保存部14中の退避外部データ301,302を暗号化して暗号化外部データ301X,302Xを生成し、この暗号化外部データ301X,302Xを外部記憶媒体50にコピーしてもよい。この場合には、外部データ書戻し部22は、パスワードを用いて外部データ保存部14中の外部データを暗号化して外部記憶媒体50に保存する機能を有することになる。
実施の形態8では、外部データ保存領域の容量が外部記憶媒体50の外部データの合計サイズよりも小さく、外部データの一部のみが外部データ保存部14に退避され、他が外部記憶媒体50に残される場合に、残される外部データを暗号化するようにした。これによって、外部記憶媒体50が作業中に抜き取られてしまった場合でも、外部記憶媒体50内の外部データの内容が見られてしまう確率を低減させることができるという効果を有する。
実施の形態9.
上記した実施の形態では、外部記憶媒体を制御装置に装着し、外部データを外部データ保存部に退避した後の制御装置の動作と装着状態の関係については、実施の形態7以外では特に言及しなかった。実施の形態9では、制御装置を実行する場合に外部記憶媒体を離脱させることについて説明する。
図40は、実施の形態9による制御装置の機能構成を模式的に示すブロック図である。この制御装置10は、外部記憶媒体インタフェース11と、入力部12と、表示部13と、外部データ保存部14と、外部データ保存処理部18と、制御処理部24と、外部記憶媒体着脱検知部30と、を備える。
外部記憶媒体着脱検知部30は、外部記憶媒体50が制御装置10に装着されているか否かを検知する。たとえば、制御処理部24がプログラムを実行する際に、外部記憶媒体着脱検知部30に問い合わせを行い、外部記憶媒体50の装着状態を制御処理部24に通知する。
外部データ保存処理部18は、ユーザから外部記憶媒体50の外部データを制御装置10内にコピーする指示を受けると、外部記憶媒体50の外部データを外部データ保存部14にコピーする。
制御処理部24は、外部データ保存部14に保存された外部データにアクセスする場合に、外部記憶媒体着脱検知部30に外部記憶媒体50が制御装置10に装着された状態にあるのか否かを問い合わせる。外部記憶媒体50が装着された状態にある場合には、外部データ保存部14の外部データへのアクセスが禁止され、外部記憶媒体50が離脱された状態にある場合には、外部データへのアクセスが可能となる。これは、外部データの制御装置10へのコピー後の外部記憶媒体50の装着状態の継続を防止するためである。なお、上記した実施の形態で説明したものと同一の構成要素には同一の符号を付してその説明を省略している。
つぎに、実施の形態9による処理について説明する。図41は、実施の形態9による外部記憶媒体が装着された場合の処理手順の一例を示すフローチャートである。まず、外部記憶媒体50が装着される(ステップS231)。その後、ユーザから外部記憶媒体50の外部データの外部データ保存部14へのコピーの指示があると(ステップS232)、外部データ保存処理部18は、外部記憶媒体50中の外部データを外部データ保存部14にコピーする(ステップS233)。なお、実施の形態9では、上記したように外部記憶媒体50中の外部データを消去しなくてもよい。
ついで、外部記憶媒体着脱検知部30は、外部記憶媒体50の接続状況を確認し、外部記憶媒体50が離脱されたかを判定する(ステップS234)。外部記憶媒体50が装着されている場合(ステップS234でNoの場合)には、コピーした外部データ保存部14内の外部データへのアクセスが禁止され(ステップS235)、ステップS234に戻る。
一方、外部記憶媒体50が離脱された場合(ステップS234でYesの場合)には、制御処理部24は、コピーした外部データ保存部14内の外部データへのアクセスが初めて可能となる(ステップS236)。そして、制御処理部24は、外部データへのアクセスを行い(ステップS237)、処理が終了する。
図42は、実施の形態9による外部記憶媒体が装着された場合の制御装置の処理状態を模式的に示す図である。図42(a)に示されるように、外部記憶媒体50が制御装置10に装着され、外部記憶媒体50中の外部データ301のコピーが指示されると、外部データ301が内部記憶部103に外部データ351としてコピーされる。
ついで、CPU101は外部記憶媒体50が制御装置10に接続されているかを確認する。ここでは、外部記憶媒体50が制御装置10に接続されているので、CPU101は内部記憶部103内の外部データ351へのアクセスができない。
その後、図42(b)に示されるように、外部記憶媒体50が制御装置10から抜き取られると、CPU101が外部記憶媒体50が制御装置10から離脱したことを検出し、内部記憶部103内の外部データ351へのアクセスが可能になる。そして、外部データ351を用いた処理を実行することができる。
実施の形態9では、外部記憶媒体50が装着されると、外部記憶媒体50内の外部データを外部データ保存部14にコピーし、その後外部記憶媒体50が接続されている間はコピーした外部データへのアクセスを禁止し、外部記憶媒体50が離脱した後にコピーした外部データへのアクセスを可能となるようにした。これによって、外部記憶媒体50が制御装置10に装着され続けてしまう状態を防ぐことができ、第三者による外部記憶媒体50の持ち去りを防止することができるという効果を有する。
実施の形態10.
実施の形態10では、実施の形態9で外部記憶媒体が制御装置に装着されてから所定時間経過した後に、外部記憶媒体内の外部データを暗号化する場合について説明する。
図43は、実施の形態10による制御装置の機能構成を模式的に示すブロック図である。制御装置10は、外部記憶媒体インタフェース11と、入力部12と、表示部13と、外部データ保存部14と、ユーザ認証情報記憶部31と、ユーザ認証部32と、外部データ保存処理部18と、外部データ保護部33と、外部データ復号部34と、制御処理部24と、外部記憶媒体着脱検知部30と、を備える。
ユーザ認証情報記憶部31は、制御装置10を使用するユーザの認証を行うためのユーザ認証情報を記憶する。ユーザ認証情報は、たとえばユーザを識別するユーザID、ユーザIDに対応付けられたパスワードなどを含む。
ユーザ認証部32は、外部記憶媒体50が接続されると、ユーザ認証を行う。具体的には、表示部13にユーザ認証画面を表示し、ユーザ認証画面に入力される内容がユーザ認証情報と一致するかを判定する。入力内容がユーザ認証情報と一致する場合には、以後の操作を認め、入力内容がユーザ認証情報と一致しない場合には、以後の操作を認めない。
外部データ保護部33は、外部記憶媒体50が装着された後、予め定められた外部データ保護期間が過ぎても外部記憶媒体50が取り外されない場合に、外部記憶媒体50に保存されている外部データをパスワードなどのユーザ認証情報を暗号鍵として暗号化し、外部記憶媒体50に保存し、元となった平文の外部データを消去する。
外部データ復号部34は、外部記憶媒体50中の暗号化外部データを復号化する指示を受けると、ユーザ認証画面を表示してユーザ認証を行い、ユーザ認証が正常に終了すると、外部記憶媒体50に保存されている暗号化外部データを復号化し、暗号化外部データを消去する。また、ユーザ認証ができない場合には、暗号化外部データを復号化せずにそのままの状態とする。
なお、上記した実施の形態で使用された構成要素と同一の構成要素には、同一の符号を付してその説明を省略している。
つぎに、実施の形態10による制御装置10の動作処理について説明する。図44は、実施の形態10による制御装置の処理手順の一例を示すフローチャートである。まず、外部記憶媒体50が制御装置10に接続または装着されると(ステップS251)、計時を開始し(ステップS252)、ユーザ認証部32はユーザ認証を行う(ステップS253)。ユーザ認証として、ユーザIDとパスワードの入力を例示することができる。ユーザ認証部32は、ユーザ認証が成功したかを判定する(ステップS254)。ユーザ認証が成功しなかった場合(ステップS254でNoの場合)、すなわちユーザ認証が失敗した場合には、処理が終了する。
また、ユーザ認証が成功した場合(ステップS254でYesの場合)には、外部データ保存処理部18は、外部記憶媒体50内の外部データを外部データ保存部14にコピーする(ステップS255)。外部記憶媒体着脱検知部30は、外部記憶媒体50の接続状況を確認し、外部記憶媒体50が制御装置10から離脱したかを判定する(ステップS256)。外部記憶媒体50が離脱した場合(ステップS256でYesの場合)には、外部データ保存部14にコピーされた外部データへのアクセスが可能となる(ステップS257)。そして、制御処理部24は、外部データへのアクセスを行い(ステップS258)、処理が終了する。
外部記憶媒体50が離脱していない場合(ステップS256でNoの場合)には、外部データ保存部14にコピーされた外部データへのアクセスを禁止する(ステップS259)。その後、計時してから所定の外部データ保護期間が経過したかを判定する(ステップS260)。所定の外部データ保護期間が経過していない場合(ステップS260でNoの場合)には、ステップS256に戻る。また、計時してから所定の外部データ保護期間が経過した場合(ステップS260でYesの場合)には、パスワードなどのユーザ認証情報を暗号鍵として、外部記憶媒体50内の外部データを暗号化して外部記憶媒体50に保存する(ステップS261)。また、暗号化の元となった平文の外部データを削除する(ステップS262)。
その後、ユーザから外部記憶媒体50内の暗号化された外部データの復号化などの指示があると(ステップS263)、再度ユーザ認証を行う(ステップS264)。ユーザ認証が成功しなかった場合(ステップS265でNoの場合)、すなわちユーザ認証が失敗した場合には、処理が終了する。
また、ユーザ認証が成功した場合(ステップS265でYesの場合)には、ユーザ認証情報を用いて暗号化された外部データを復号化し、外部記憶媒体50に記憶する(ステップS266)。また外部記憶媒体50内の暗号化された外部データを削除する(ステップS267)。以上によって、処理が終了する。
図45は、実施の形態10による外部記憶媒体の暗号化の様子を模式的に示す図である。図45(a)に示されるように、外部記憶媒体50が制御装置10に装着されると、操作盤105を介してユーザによって入力されるユーザIDとパスワードを用いてユーザ認証が行われる。ユーザ認証が成功すると、外部記憶媒体50内の外部データ301が内部記憶部103にコピーされる。CPU101は外部記憶媒体50が接続されているか確認し、接続されている間は内部記憶部103にコピーされた外部データ351へのアクセスが禁止される。
外部記憶媒体50が制御装置10に接続された状態で所定の時間放置されていると、外部記憶媒体50内の外部データ301が暗号化される。そして、図45(b)に示されるように、外部記憶媒体50には暗号化外部データ301Xが保存され、外部データ301は削除される。なお、この状態で再度ユーザ認証を行うことで外部記憶媒体50内の暗号化外部データ301Xを復号化することができる。
実施の形態10では、外部記憶媒体50中の外部データが外部データ保存部14にコピーされた後、外部記憶媒体50が装着されてから所定時間経過しても外部記憶媒体50が離脱されない場合に、外部記憶媒体50内の外部データを暗号化して保存するようにした。これによって、外部記憶媒体50が長期間にわたって制御装置10に接続される状態となり、外部記憶媒体50が第三者に抜き取られてしまっても、外部データが暗号化されているので、外部記憶媒体50の中身が流出する虞が少ないという効果を有する。
なお、パスワードや各種の入力は、操作盤105などの入力部12に限らず、コンピュータを使用してもよいし、あるいはネットワーク経由でエンジニアリングツールなどを使用してもよい。