(57)【要約】【課題】記憶装置に対するアクセス制限に伴う不都合がより生じにくい記憶装置、電子機器、および記憶装置のアクセス制御方法を得る。【解決手段】ホストに電気的に接続された記憶装置は、データを記憶する記憶部と、前記記憶装置の電源が投入された後の前記記憶部に対する前記ホストからのアクセスを制限するアクセス制限部と、前記ホストからのアクセス制限の解除を指示する第一のコマンドに基づいて、前記記憶部に対する前記ホストからのアクセス制限を解除する第一のアクセス制限解除部と、前記ホストから送信されるアクセス制限の解除とは異なる動作を指示する第二のコマンドに基づいて、前記記憶部に対する前記ホストからのアクセス制限を解除する第二のアクセス制限解除部と、を備えた。【選択図】図６
2012113656.tif 000002
【特許請求の範囲】
【請求項１】
ホストに電気的に接続された記憶装置であって、
データを記憶する記憶部と、
前記記憶装置の電源が投入された後の前記記憶部に対する前記ホストからのアクセスを制限するアクセス制限部と、
前記ホストからのアクセス制限の解除を指示する第一のコマンドに基づいて、前記記憶部に対する前記ホストからのアクセス制限を解除する第一のアクセス制限解除部と、
前記ホストから送信されるアクセス制限の解除とは異なる動作を指示する第二のコマンドに基づいて、前記記憶部に対する前記ホストからのアクセス制限を解除する第二のアクセス制限解除部と、
を備えたことを特徴とする記憶装置。
【請求項２】
前記第二のアクセス制限解除部は、前記第二のコマンドとして、前記ホストの電源が投入された状態が維持されつつ前記記憶装置の電源が遮断されたスタンバイ状態から前記記憶装置の電源が投入された際に前記ホストから送信される所定のコマンドを受信した場合に、前記記憶部に対する前記ホストからのアクセス制限を解除することを特徴とする請求項１に記載の記憶装置。
【請求項３】
前記第二のアクセス制限解除部は、前記第二のコマンドとして、アクセス先が所定のアドレスであるコマンドを受信した場合に、前記記憶部に対する前記ホストからのアクセス制限を解除することを特徴とする請求項１または２に記載の記憶装置。
【請求項４】
前記ホストの電源が投入された際に、前記記憶部の所定領域に対する前記ホストからのアクセスを前記記憶部の別の領域に対するアクセスに変更するマッピング部と、
前記第一のコマンドに基づいて前記マッピング部によるマッピングを解除する第一のマッピング解除部と、
前記第二のコマンドに基づいて前記マッピング部によるマッピングを解除する第二のマッピング解除部と、
をさらに備えたことを特徴とする請求項１〜３のうちいずれか一つに記載の記憶装置。
【請求項５】
前記記憶部に対するアクセスの許可または禁止のステータスを示すデータを記憶したステータス記憶部と、
前記ステータス記憶部に記憶されたステータスを示すデータに基づいて、前記ホストからの前記記憶部に対するアクセスを制御するアクセス制御部と、
をさらに備え、
前記アクセス制限部、前記第一のアクセス制限解除部、および前記第二のアクセス制限解除部は、前記ステータス記憶部の前記ステータスを示すデータを書き換えることを特徴とする請求項１〜４のうちいずれか一つに記載の記憶装置。
【請求項６】
前記記憶装置の電源が投入された際に、前記ステータスを示すデータを第二のステータス記憶部に保持させるステータス保持部を備え、
前記アクセス制限部は、前記記憶装置の電源が投入された際に、前記ステータス保持部が前記ステータスを示すデータを前記第二のステータス記憶部に保持させた後に、前記ステータス記憶部の前記ステータスを示すデータを書き換えることを特徴とする請求項５に記載の記憶装置。
【請求項７】
筐体内に、請求項１〜６のうちいずれか一つに記載の記憶装置が収容され、前記ホストとして機能することを特徴とする電子機器。
【請求項８】
ホストに電気的に接続されて記憶部を備えた記憶装置のアクセス制御方法であって、
前記記憶装置が、当該記憶装置の電源が投入された後の前記記憶部に対する前記ホストからのアクセスを制限するアクセス制限ステップと、
前記記憶装置が、前記ホストが送信するアクセス制限の解除とは異なる動作を指示する所定のコマンドに基づいて、前記ホストからのアクセス制限を解除するアクセス制限解除ステップと、
を備えたことを特徴とする記憶装置のアクセス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、記憶装置、電子機器、および記憶装置のアクセス制御方法に関する。
【背景技術】
【０００２】
従来、電子機器の筐体内に収容された記憶装置が知られている。この種の記憶装置では、ホストとしての電子機器等からのアクセス制限が設定され、パスワード等によってアクセス権限の確認ができた場合に、電子機器からの指示にしたがって、アクセス制限が解除される場合がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１０７８８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、このような従来の設定では、電子機器や記憶装置の状態によっては、不本意にアクセス制限が設定された状態となって、動作に支障を来す等の不都合が生じる場合があった。
【０００５】
そこで、本発明の実施形態は、アクセス制限に伴う不都合がより生じにくい記憶装置、電子機器、および記憶装置のアクセス制御方法を得ることを目的の一つとする。
【課題を解決するための手段】
【０００６】
本発明の実施形態にかかる記憶装置は、ホストに電気的に接続された記憶装置であって、データを記憶する記憶部と、前記記憶装置の電源が投入された後の前記記憶部に対する前記ホストからのアクセスを制限するアクセス制限部と、前記ホストからのアクセス制限の解除を指示する第一のコマンドに基づいて、前記記憶部に対する前記ホストからのアクセス制限を解除する第一のアクセス制限解除部と、前記ホストから送信されるアクセス制限の解除とは異なる動作を指示する第二のコマンドに基づいて、前記記憶部に対する前記ホストからのアクセス制限を解除する第二のアクセス制限解除部と、を備えたことを、特徴の一つとする。
【図面の簡単な説明】
【０００７】
【図１】図１は、実施形態にかかる電子機器の一例を示す模式的なブロック図である。
【図２】図２は、実施形態にかかる記憶装置の一例を示す模式的なブロック図である。
【図３】図３は、実施形態にかかる記憶装置のＣＰＵの一例を示す模式的なブロック図である。
【図４】図４は、実施形態にかかる記憶装置のレンジおよびロッキングテーブルの一例を示す模式図である。
【図５】図５は、実施形態にかかる記憶装置のＭＢＲシャドウイングおよびＭＢＲコントロールテーブルの一例を示す模式図である。
【図６】図６は、実施形態にかかる記憶装置がリセットされた状態での記憶装置および電子機器の動作の一例を示すフローチャートである。
【図７】図７は、実施形態にかかる記憶装置がリセットされた状態での記憶装置の動作の一部の一例を示すフローチャートである。
【図８】図８は、実施形態にかかる記憶装置で保持されるステータスを示すデータの一例を示す模式図である。
【図９】図９は、実施形態にかかる記憶装置のＭＢＲコントロールテーブルの一例を示す模式図であって、（ａ）は、ＭＢＲシャドウイングが無効な状態、（ｂ）は、ＭＢＲシャドウイングが有効な状態を示す図である。
【図１０】図１０は、実施形態にかかる記憶装置のロッキングテーブルの一例を示す模式図であって、（ａ）は、アクセス制限が無効な状態、（ｂ）は、アクセス制限が有効な状態を示す図である。
【図１１】図１１は、実施形態にかかる記憶装置および電子機器のコマンドシーケンスの一例を示す模式図であって、（ａ）はホストリセット時、（ｂ）はスタンバイ復帰時を示す図である。
【図１２】図１２は、第２実施形態にかかる記憶装置がリセットされた状態での記憶装置および電子機器の動作の一例を示すフローチャートである。
【図１３】図１３は、第３実施形態にかかる記憶装置がリセットされた状態での記憶装置および電子機器の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下に例示される非限定的な複数の実施形態には、同様の構成要素が含まれている。以下では、それら同様の構成要素には共通の符号が付与され、重複する説明が省略される。
【０００９】
＜第１実施形態＞
ホストとして動作するパーソナルコンピュータ等の電子機器１は、図１に示すように、ＣＰＵ（Central Processing Unit）１１や、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、表示部１５、操作入力部１６、通信部１７、磁気ディスク装置２０等を備えている。
【００１０】
ＣＰＵ１１は、ＲＯＭ１２や磁気ディスク装置２０等に予めインストールされ記憶された各種プログラムを実行し、電子機器１を構成する各部の動作を制御する。
【００１１】
ＲＯＭ１２は、不揮発性の記憶デバイスであって、電子機器１の制御にかかるプログラムや各種設定情報等を書き換え不可能に記憶する。ＲＡＭ１３は、揮発性の記憶デバイスであって、ＣＰＵ１１の作業領域等として機能し、各種の処理時において、スタックやバッファ等としての役割を果たす。
【００１２】
表示部１５は、例えば、ＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro- Luminescence）ディスプレイ等の表示デバイスとして構成される。表示部１５は、ＣＰＵ１１からの信号に基づいて、各種情報を表示する。
【００１３】
操作入力部１６は、例えばキーボードや、タッチパネル等として構成される。操作入力部１６は、オペレータ等の操作入力に基づく指示信号をＣＰＵ１１に送る。
【００１４】
通信部１７は、図示しない通信ネットワークを介して外部装置との間で通信を行うインタフェースである。通信部１７は、外部装置から受信した各種の情報をＣＰＵ１１に送るとともに、ＣＰＵ１１から出力された各種の情報を外部装置へ送る。
【００１５】
磁気ディスク装置２０は、電子機器１の制御にかかるプログラムや各種データ等を、書き換え可能に記憶する。なお、電子機器１が備える記憶装置は、磁気ディスク装置（ＨＤＤ : Hard Disk Drive）２０には限定されず、例えば、ＳＳＤ（Solid State Drive）や、半導体メモリ（例えばフラッシュメモリ）等であってもよい。
【００１６】
図２に示すように、磁気ディスク装置２０は、記憶部２１や、ヘッド２２、ＳＰＭ（Spindle Motor、スピンドルモータ）２３、ＶＣＭ（Voice-Coil Motor、ボイスコイルモータ）２４、サーボ制御部２５、ヘッドＩＣ（Integrated Circuit）２６、リードチャネル２７、暗号回路２８、暗号回路制御部２９、バッファメモリ３１、ホストＩＦ制御部３３、フラッシュメモリ３４、ＭＰＵ（Micro Processing Unit）３５等を、備えている。
【００１７】
記憶部２１は、データを磁気的に記録するディスク状の記録媒体である。ヘッド２２は、記憶部２１にデータを書き込むとともに、記憶部２１に書き込まれているデータを読み出す。ＳＰＭ２３は、記憶部２１を回転駆動する。ＶＣＭ２４は、図示しないマグネットや駆動コイル等を有し、ヘッド２２を駆動する。サーボ制御部２５は、ＳＰＭ２３およびＶＣＭ２４を制御する。ヘッドＩＣ２６は、ヘッド２２により記憶部２１に書き込まれるデータの信号、ならびに記憶部２１から読み出されたデータの信号を増幅する。リードチャネル２７は、例えば、フィルタや、ＡＧＣ、ＡＤＣ、ビタビ復号器等を含む回路である。暗号回路２８は、記憶部２１に書き込まれるデータを、所定の暗号鍵を用いてＡＥＳ等の所定の暗号化方式で暗号化する。また、暗号回路２８は、記憶部２１より読み出されたデータを所定の暗号鍵を用いて復号化する。暗号回路制御部２９は、暗号回路２８の動作を制御する。
【００１８】
バッファメモリ３１は、記憶部２１に書き込まれるデータや記憶部２１より読み出されたデータ等を一時的に記憶する。ホストＩＦ制御部３３は、ホストＩＦ３２を介した電子機器１と磁気ディスク装置２０との間でのデータおよびコマンドの送信および受信を制御する。
【００１９】
フラッシュメモリ３４は、ＭＰＵ３５により実行されるプログラムや、磁気ディスク装置２０の動作に係る各種の設定情報等を記憶する不揮発性メモリである。
【００２０】
ＭＰＵ３５は、フラッシュメモリ３４に記憶されたプログラムを実行することで、後述する機能部（例えば、アクセス制御部３５ａ、アクセス制限部３５ｂ、第一のアクセス制限解除部３５ｃ、第二のアクセス制限解除部３５ｄ、マッピング実行部３５ｅ、第一のマッピング解除部３５ｆ、第二のマッピング解除部３５ｇ、第一の判断部３５ｈ、第二の判断部３５ｉ、ステータス保持部３５ｊ等、図３参照）として動作する。すなわち、プログラムには、アクセス制御部３５ａ、アクセス制限部３５ｂ、第一のアクセス制限解除部３５ｃ、第二のアクセス制限解除部３５ｄ、マッピング実行部３５ｅ、第一のマッピング解除部３５ｆ、第二のマッピング解除部３５ｇ、第一の判断部３５ｈ、第二の判断部３５ｉ、ステータス保持部３５ｊ等として動作するモジュールが含まれている。上記各機能部の動作については後述する。
【００２１】
図４に例示するように、記憶部２１は、ユーザ領域とシステム領域とを有する。ユーザ領域は、図４に示すように、複数の領域（レンジ，Range）に区分することができる。図４の例では、ユーザ領域は、レンジ１、レンジ２、レンジ３、およびグローバルレンジ（Global Range）の四つのレンジに区分されている。グローバルレンジは、レンジ１〜３以外の領域である。
【００２２】
本実施形態では、レンジ毎に、読み出し（Read）および書き込み（Write）の禁止および許可を設定することができる。この設定は、ロッキング（Locking）テーブル２１ｂに記憶される。ロッキングテーブル２１ｂは、システム領域のＳＰ（Security Provider）領域２１ａ内に格納されている。ロッキングテーブル２１ｂでは、各レンジについて、開始アドレス（RangeStart）、長さ（RangeLength）、読み出し禁止可否フラグ（ReadLockEnabled）、書き込み禁止可否フラグ（WriteLockEnabled）、読み出し禁止ステータス（ReadLocked）、書き込み禁止ステータス（WriteEnabled）、リセット時制限フラグ（LockOnReset）の値が、格納されている。本実施形態では、ＳＰ領域２１ａが、ステータス記憶部に相当する。
【００２３】
開始アドレスは、各レンジが始まるアドレス（ＬＢＡ：Logical Block Addressing）を示す。また、長さは、各レンジの長さ（セクタ数）を示す。
【００２４】
読み出し禁止可否フラグ（ReadLockEnabled）は、読み出し禁止の実行の可否（読み出し禁止にできるか否か）を示すフラグである。この値が「ＴＲＵＥ」（例えば「１」）の場合は、対応するレンジを読み出し禁止に設定することができ、この値が「ＦＡＬＳＥ」（例えば「０」）の場合は、対応するレンジを読み出し禁止に設定することができない。
【００２５】
書き込み禁止可否フラグ（WriteLockEnabled）は、書き込み禁止の実行の可否（書き込み禁止にできるか否か）を示すフラグである。この値が「ＴＲＵＥ」（例えば「１」）の場合は、対応するレンジを書き込み禁止に設定することができ、この値が「ＦＡＬＳＥ」（例えば「０」）の場合は、対応するレンジを書き込み禁止に設定することができない。
【００２６】
読み出し禁止ステータス（ReadLocked）は、読み出しの可否状態（読み出しできる状態か否か）を示すフラグである。この値が「ＴＲＵＥ」（例えば「１」）の場合は、対応するレンジについて、読み出しが禁止され、この値が「ＦＡＬＳＥ」（例えば「０」）の場合は、読み出しが許可される。ただし、読み出し禁止可否フラグ（ReadLockEnabled）が「ＦＡＬＳＥ」の場合、すなわち、読み出し禁止に設定できない場合には、読み出し禁止ステータス（ReadLocked）の値によらず、読み出しが許可される。すなわち、読み出し禁止可否フラグ（ReadLockEnabled）の値が「ＴＲＵＥ」であり、かつ、読み出し禁止ステータス（ReadLocked）の値が「ＴＲＵＥ」の場合に、対応するレンジが、読み出し禁止に設定される。それ以外の値の組み合わせでは、読み出し禁止に設定されない。
【００２７】
書き込み禁止ステータス（WriteLocked）は、書き込みの可否状態（書き込みできる状態か否か）を示すフラグである。この値が「ＴＲＵＥ」（例えば「１」）の場合は、対応するレンジについて、書き込みが禁止され、この値が「ＦＡＬＳＥ」（例えば「０」）の場合は、書き込みが許可される。ただし、書き込み禁止可否フラグ（WriteLockEnabled）が「ＦＡＬＳＥ」の場合、すなわち、書き込み禁止に設定できない場合には、書き込み禁止ステータス（WriteLocked）の値によらず、書き込みが許可される。すなわち、書き込み禁止可否フラグ（WriteLockEnabled）の値が「ＴＲＵＥ」であり、かつ、書き込み禁止ステータス（WriteLocked）の値が「ＴＲＵＥ」の場合に、対応するレンジが、書き込み禁止に設定される。それ以外の値の組み合わせでは、書き込み禁止に設定されない。
【００２８】
読み出し禁止ステータスおよび書き込み禁止ステータスは、アクセス制限部３５ｂ、第一のアクセス制限解除部３５ｃ、または第二のアクセス制限解除部３５ｄ（図３参照）が書き換える。アクセス制限部３５ｂは、読み出し禁止ステータスおよび書き込み禁止ステータスの値を、「ＦＡＬＳＥ」から「ＴＲＵＥ」に書き換えることができる。また、第一のアクセス制限解除部３５ｃあるいは第二のアクセス制限解除部３５ｄは、読み出し禁止ステータスおよび書き込み禁止ステータスの値を、「ＴＲＵＥ」から「ＦＡＬＳＥ」に書き換えることができる。第一のアクセス制限解除部３５ｃおよび第二のアクセス制限解除部３５ｄは、動作する状況が異なるものの、ステータスの値を書き換える動作は同じである。
【００２９】
リセット時制限フラグ（LockOnReset）は、記憶装置としての磁気ディスク装置２０のリセット時（すなわち、電源遮断状態から電源投入状態へ遷移したとき）に、各レンジを読み出し禁止または書き込み禁止に設定するか否かを示すフラグである。アクセス制限部３５ｂは、リセット時制限フラグの値が「Power Cycle」であるレンジについて、読み出し禁止ステータスおよび書き込み禁止ステータスの値を「ＦＡＬＳＥ」から「ＴＲＵＥ」に書き換える。なお、読み出し禁止ステータスおよび書き込み禁止ステータスの値が「ＴＲＵＥ」である場合は、「ＴＲＵＥ」のまま維持する。
【００３０】
アクセス制御部３５ａは、読み出し禁止ステータスおよび書き込み禁止ステータスの値にしたがって動作する。すなわち、読み出し禁止可否フラグの値が「ＴＲＵＥ」であり、かつ、読み出し禁止ステータスの値が「ＴＲＵＥ」であるレンジについては、アクセス制御部３５ａは、そのレンジからはデータを読み出さない。また、アクセス制御部３５ａは、読み出し禁止可否フラグの値が「ＴＲＵＥ」であり、かつ、読み出し禁止ステータスの値が「ＴＲＵＥ」であるレンジ以外のレンジからは、データを読み出す。そして、書き込み禁止可否フラグの値が「ＴＲＵＥ」であり、かつ、書き込み禁止ステータスの値が「ＴＲＵＥ」であるレンジについては、アクセス制御部３５ａは、そのレンジにはデータを書き込まない。また、アクセス制御部３５ａは、書き込み禁止可否フラグの値が「ＴＲＵＥ」であり、かつ、書き込み禁止ステータスの値が「ＴＲＵＥ」であるレンジ以外のレンジには、データを書き込む。
【００３１】
また、図５に例示するように、本実施形態では、記憶部２１の所定領域に対するアクセスを別の領域に対するアクセスに変更するマッピングの一例として、ＭＢＲ（Master Boot Record）シャドウイング（Shadowing）が実行される。ＭＢＲシャドウイングとは、ホストとしての電子機器１からのＭＢＲシャドウイング領域（記憶部２１のＬＢＡ：０〜Ｘ−１）２１ｄに対するアクセスの、ＳＰ領域２１ａ内でＰＢＡ（Pre-boot authentication）アプリが格納された領域（ＰＢＡアプリ領域２１ｅ、記憶部２１のＬＢＡ：Ｙ〜Ｙ＋Ｘ−１）に対するアクセスへの、マッピングである。
【００３２】
ＰＢＡアプリは、電子機器１のリセット時（すなわち、電源遮断状態から電源投入状態へ遷移したとき）に、電子機器１のＣＰＵ１１（ＢＩＯＳ（Basic Input Output System））上で動作するプログラムであって、アカウントＩＤとパスワードとに基づいて本人確認を行うためのものである。すなわち、ＰＢＡアプリにしたがって動作するＣＰＵ１１は、まず、電子機器１の表示部１５にアカウントＩＤとパスワードの入力を促す画像（図示せず）を表示させる。次いで、ＰＢＡアプリにしたがって動作するＣＰＵ１１は、オペレータ（ユーザ）が操作入力部１６を操作して入力したアカウントＩＤおよびパスワードに基づいて認証情報を作成し、磁気ディスク装置２０に照会する。そして、ＰＢＡアプリにしたがって動作するＣＰＵ１１は、入力されたアカウントＩＤおよびパスワードが正しいことが確認できた場合に、記憶装置としての磁気ディスク装置２０に、許可コマンドを送信する。
【００３３】
すなわち、本実施形態では、ＭＢＲシャドウイングによって、電子機器１のＣＰＵ１１は、ＯＳを起動する前に、ＰＢＡアプリによって、オペレータのログインあるいは操作の権限があるいか否かを確認する。そして、権限があることが確認された場合に、電子機器１のＣＰＵ１１は、ＭＢＲシャドウイングを解除して、ＯＳを記憶部２１からロードして起動する。記憶装置としての磁気ディスク装置２０は、ＰＢＡアプリの動作によって、ホストとしての電子機器１から許可コマンドを受信すると、ＭＢＲシャドウイングの解除とともに、上述したアクセス制限の解除を実行する。
【００３４】
図５に示すように、システム領域のＳＰ領域２１ａ内には、ＭＢＲコントロール（Control）テーブル２１ｃが格納されている。ＭＢＲコントロールテーブル２１ｃでは、ＭＢＲシャドウイングの実行可否フラグ（Enabled）、実行ステータス（Done）、およびリセット時実行フラグ（DoneOnReset）の値が、格納されている。
【００３５】
ＭＢＲシャドウイングの実行可否フラグ（Enabled）は、ＭＢＲシャドウイングの実行の可否（ＭＢＲシャドウイングを実行できるか否か）を示すフラグである。この値が「ＴＲＵＥ」（例えば「１」）の場合は、ＭＢＲシャドウイングを実行（設定）することができ、この値が「ＦＡＬＳＥ」（例えば「０」）の場合は、ＭＢＲシャドウイングを実行（設定）することができない。
【００３６】
実行ステータス（Done）は、ＭＢＲシャドウイング（マッピング）が実行中（有効）であるか否かの状態を示すフラグである。この値が「ＴＲＵＥ」（例えば「１」）の場合は、ＭＢＲシャドウイングが終了した状態、すなわち、ＭＢＲシャドウイングが解除された（無効な）状態であり、この値が「ＦＡＬＳＥ」（例えば「０」）の場合は、ＭＢＲシャドウイングが終了していない状態、すなわち、ＭＢＲシャドウイングが実行できる（有効な）状態である。
【００３７】
実行ステータスは、マッピング実行部３５ｅ、第一のマッピング解除部３５ｆ、または第二のマッピング解除部３５ｇが書き換える。マッピング実行部３５ｅは、実行ステータスの値を、「ＴＲＵＥ」から「ＦＡＬＳＥ」に書き換えることができる。また、第一のマッピング解除部３５ｆあるいは第二のマッピング解除部３５ｇは、実行ステータスの値を、「ＦＡＬＳＥ」から「ＴＲＵＥ」に書き換えることができる。第一のマッピング解除部３５ｆおよび第二のマッピング解除部３５ｇは、動作する状況が異なるものの、ステータスの値を書き換える動作は同じである。
【００３８】
リセット時実行フラグ（DoneOnReset）は、記憶装置としての磁気ディスク装置２０のリセット時（すなわち、電源遮断状態から電源投入状態へ遷移したとき）に、ＭＢＲシャドウイングを実行するか否かを示すフラグである。マッピング実行部３５ｅは、リセット時実行フラグの値が「Power Cycle」である場合、実行ステータスの値を「ＴＲＵＥ」から「ＦＡＬＳＥ」に書き換える。なお、実行ステータスの値が「ＦＡＬＳＥ」である場合は、「ＦＡＬＳＥ」のまま維持する。
【００３９】
アクセス制御部３５ａは、実行ステータスの値にしたがって動作する。すなわち、実行可否フラグの値が「ＴＲＵＥ」であり、かつ、実行ステータスの値が「ＦＡＬＳＥ」である場合、アクセス制御部３５ａは、上述したＭＢＲシャドウイング（マッピング）を実行する。また、アクセス制御部３５ａは、実行可否フラグの値が「ＴＲＵＥ」であり、かつ、実行ステータスの値が「ＦＡＬＳＥ」である場合以外の場合には、ＭＢＲシャドウイング（マッピング）を実行しない。
【００４０】
次に、図６〜１０を参照して、本実施形態にかかる記憶装置としての磁気ディスク装置２０のリセット時（すなわち、電源遮断状態から電源投入状態へ遷移したとき）における、磁気ディスク装置２０および電子機器１の動作について説明する。
【００４１】
まず、磁気ディスク装置２０のＭＰＵ３５は、パワーオン（Power On）処理を実行する（ステップＳ１）。パワーオン処理では、図７に示すように、ＭＰＵ３５は、まず、ステータス保持部３５ｊ（図３参照）として動作し、記憶部２１のＳＰ領域２１ａのロッキングテーブル２１ｂを参照して（ステップＳ１１）、各レンジのステータスとしての読み出し禁止ステータスおよび書き込み禁止ステータスの値を示すデータを、フラッシュメモリ３４等の記憶部に記憶する（ステップＳ１２）。ステップＳ１２では、図８に例示するように、各レンジの読み出し禁止ステータスおよび書き込み禁止ステータスの値が格納される。図８の例では、読み出し禁止ステータスの値が「ＴＲＵＥ」の場合、図８に示す値の左側の桁の値が「１」であり、「ＦＡＬＳＥ」の場合、図８に示す値の左側の桁の値が「０」である。また、書き込み禁止ステータスの値が「ＴＲＵＥ」の場合、図８に示す値の右側の桁の値が「１」であり、「ＦＡＬＳＥ」の場合、図８に示す値の右側の桁の値が「０」である。なお、このステップＳ１２では、全てのレンジについてのステータスを記憶する必要はなく、少なくとも、読み出し禁止可否フラグまたは書き込み禁止可否フラグが「ＴＲＵＥ」であるレンジについてのステータスを記憶すればよい。本実施形態では、フラッシュメモリ３４が、第二のステータス記憶部に相当する。また、図８は、あくまで一例であって、他の値として記憶することも可能である。
【００４２】
次に、ＭＰＵ３５は、マッピング実行部３５ｅ（図３参照）として動作し、ＭＢＲコントロールテーブル２１ｃのリセット時実行フラグ（DoneOnReset）が「Power Cycle」であった場合に、実行ステータス（Done）の値を「ＦＡＬＳＥ」にする（ステップＳ１３）。このステップＳ１３によって、実行可否フラグ（Enabled）が「ＴＲＵＥ」である場合には、ＭＢＲシャドウイングが有効となる（設定される）。このステップＳ１３により、ＭＢＲコントロールテーブル２１ｃは、例えば、図９の（ａ）に示す状態から、図９の（ｂ）に示す状態に変化する。図９の（ａ）は、ＭＢＲシャドウイングが解除されている（無効な）状態、図９の（ｂ）は、ＭＢＲシャドウイングが設定されている（有効な）状態を示している。
【００４３】
次に、ＭＰＵ３５は、アクセス制限部３５ｂ（図３参照）として動作し、ロッキングテーブル２１ｂのリセット時制限フラグ（LockOnReset）が「Power Cycle」であり、かつ、読み出し禁止可否フラグ（ReadLockEnabled）の値が「ＴＲＵＥ」であるレンジの、読み出し禁止ステータス（ReadLocked）の値を、「ＴＲＵＥ」にするとともに、リセット時制限フラグ（LockOnReset）が「Power Cycle」であり、かつ、書き込み禁止可否フラグ（WriteLockEnabled）の値が「ＴＲＵＥ」であるレンジの、書き込み禁止ステータス（WriteLocked）の値を、「ＴＲＵＥ」にする（ステップＳ１４）。このステップＳ１４によって、読み出し禁止が設定可能なレンジに読み出し禁止が実行（設定）されるとともに、書き込み禁止が設定可能なレンジに書き込み禁止が実行（設定）される。このステップＳ１４により、ロッキングテーブル２１ｂは、例えば、図１０の（ａ）に示す状態から、図１０の（ｂ）に示す状態に変化する。図１０の（ａ）は、アクセス制限が解除されている（無効な）状態、図１０の（ｂ）は、アクセス制限が実行されている（有効な）状態を示している。
【００４４】
すなわち、本実施形態では、ステップＳ１（ステップＳ１１〜Ｓ１４）のパワーオン処理で、記憶装置としての磁気ディスク装置２０のリセット時に、ＭＢＲシャドウイングによってＰＢＡアプリが起動されて本人確認（権限確認）の作業が求められる状態になるとともに、記憶部２１の所定領域に対するアクセス制限が実行される状態になる。したがって、磁気ディスク装置２０の記憶部２１に記憶されたデータのセキュリティをより強化することができる。
【００４５】
しかし、記憶装置としての磁気ディスク装置２０のリセットには、ホストとしての電子機器１の電源が投入された場合のリセット（以降、ホストリセットと記す）と、電子機器１の電源が投入された状態で維持されつつ記憶装置としての磁気ディスク装置２０の電源が遮断されたスタンバイ状態から磁気ディスク装置２０の電源が投入される（復帰する）際のリセット（以降、スタンバイ復帰と記す）と、がある。電子機器１のＣＰＵ１１は、ホストリセット時には、ＯＳのロード等のため、ＬＢＡ＝０のアドレスにアクセスするが、スタンバイ復帰時には、ＯＳのロード等は不要であるため、ＬＢＡ＝０以外のアドレスにアクセスする。ここで、記憶装置としての磁気ディスク装置２０が、ホストリセット時とスタンバイ復帰時とで同じ動作を行うと、所望の動作が得られなくなる虞がある。具体的には、例えば、磁気ディスク装置２０のＭＰＵ３５が、スタンバイ復帰時においても、ホストリセット時と同様にＭＢＲシャドウイングを実行すると、ホストとしての電子機器１に要求されたデータを返すことができず、電子機器１や磁気ディスク装置２０等の動作に支障を来す虞がある。
【００４６】
この点、本実施形態では、後述するステップＳ３の結果に応じて記憶装置としての磁気ディスク装置２０の動作を異ならせることにより、上述したような不都合な事態が生じるのを抑制しやすくなる。
【００４７】
すなわち、図６に戻り、ＭＰＵ３５は、ホストとしての電子機器１からRead（読み出し）コマンドまたはWrite（書き込み）コマンドを受信すると（ステップＳ２）、ＭＰＵ３５は、第一の判断部３５ｈ（図３参照）として動作し、受信したReadコマンドまたはWriteコマンドのアクセス先のアドレス（ＬＢＡ）が「０」であるか否かを判断する（ステップＳ３）。
【００４８】
ステップＳ３でホストとしての電子機器１から受信したコマンドが、ＬＢＡ＝０のReadコマンドまたはWriteコマンドである場合は、ホストリセットの状態であると考えることができる。そこで、本実施形態では、第一の判断部３５ｈが、ホストとしての電子機器１から受信したコマンドが、ＬＢＡ＝０のReadコマンドまたはWriteコマンドであると判断した場合（ステップＳ３でＹｅｓ）、ホストとしての電子機器１のＣＰＵ１１は、ＭＰＵ３５のＭＢＲシャドウイング（マッピング）によってＰＢＡアプリを読み込み、ＰＢＡアプリを実行する（ステップＳ６）。次いで、ＰＢＡアプリにしたがって動作するＣＰＵ１１は、入力されたアカウントＩＤについて入力されたパスワードと記憶部２１に格納されたパスワードとが照合された結果（ステップＳ７）、入力されたパスワードが正しいパスワードでなかった場合（ステップＳ７でＮｏ）、例えば、表示部１５にアカウントＩＤおよびパスワードの再入力を促す画像を表示したり、あるいは電子機器１の電源を遮断したりする。
【００４９】
一方、ホストとしての電子機器１のＣＰＵ１１は、入力されたパスワードが正しいパスワードであることが確認されると（ステップＳ７でＹｅｓ）、記憶装置としての磁気ディスク装置２０に向けて、アクセス制限を解除する許可コマンド（TrustedSendコマンドおよびTrustedRecvコマンド（TrustedSend/Recvコマンド））を送信する。第二の判断部３５ｉ（図３参照）として動作するＭＰＵ３５は、受信したコマンドが所定の許可コマンド（TrustedSend/Recvコマンド）であると判断すると、すなわち、所定の許可コマンドを受信すると（ステップＳ８）、ＭＰＵ３５は、第一のマッピング解除部３５ｆ（図３参照）として動作し、ＭＢＲコントロールテーブル２１ｃの実行ステータス（Done）の値を「ＴＲＵＥ」にする。これにより、ＭＢＲシャドウイングが解除される（ステップＳ４）。このステップＳ４で、ＭＢＲコントロールテーブル２１ｃは、図９の（ｂ）に示す状態から、図９の（ａ）に示す状態に変化する。
【００５０】
そして、ステップＳ８で許可コマンドを受信したＭＰＵ３５は、第一のアクセス制限解除部３５ｃ（図３参照）として動作し、ステータス記憶部としての例えばフラッシュメモリ３４に記憶した、図８に例示したような各レンジの読み出し禁止ステータスおよび書き込み禁止ステータスの値を参照して、アクセス制限について、ステップＳ１２以前の状態に戻す。これにより、アクセス制限が解除される（ステップＳ５）。このステップＳ５で、ロッキングテーブル２１ｂは、図１０の（ｂ）に示す状態から、図１０の（ａ）に示す状態に変化する。本実施形態では、許可コマンドとしてのTrustedSend/Recvコマンドが、第一のコマンドに相当する。
【００５１】
一方、ステップＳ２でホストとしての電子機器１から受信したReadコマンドまたはWriteコマンドのアクセス先（ＬＢＡ）が０でない場合は、スタンバイ復帰の状態であると考えることができる。そこで、本実施形態では、第一の判断部３５ｈが、ホストとしての電子機器１から受信したReadコマンドまたはWriteコマンドのアクセス先（ＬＢＡ）が０でないと判断した場合（ステップＳ３でＮｏ）、ＭＰＵ３５は、第二のマッピング解除部３５ｇ（図３参照）として動作し、ＭＢＲコントロールテーブル２１ｃの実行ステータス（Done）の値を「ＴＲＵＥ」にする。これにより、ＭＢＲシャドウイングが解除される（ステップＳ４）。このステップＳ４により、ＭＢＲコントロールテーブル２１ｃは、図９の（ｂ）に示す状態から、図９の（ａ）に示す状態に変化する。
【００５２】
また、ステップＳ３でＮｏの場合、ＭＰＵ３５は、第二のアクセス制限解除部３５ｄ（図３参照）として動作し、ステータス記憶部としての例えばフラッシュメモリ３４に記憶した、図８に例示したような各レンジの読み出し禁止ステータスおよび書き込み禁止ステータスの値を参照して、アクセス制限について、ステップＳ１２以前の状態に戻す。これにより、アクセス制限が解除される（ステップＳ５）。このステップＳ５により、ロッキングテーブル２１ｂは、図１０の（ｂ）に示す状態から、図１０の（ａ）に示す状態に変化する。本実施形態では、ＬＢＡ＝０ではないReadコマンドまたはWriteコマンドが、第二のコマンドに相当する。
【００５３】
＜第２実施形態＞
図１１の（ａ）は、ホストリセット時のコマンドシーケンスの一例を示し、図１１の（ｂ）は、スタンバイ復帰時のコマンドシーケンスの一例を示す。
【００５４】
図１２は、本実施形態にかかる記憶装置としての磁気ディスク装置２０のリセット時（すなわち、電源遮断状態から電源投入状態へ遷移したとき）における、磁気ディスク装置２０および電子機器１の動作を示すフローチャートである。第１実施形態との相違点は、ステップＳ２の後でありかつステップＳ３の前に、ステップＳ２１が追加されている点である。ステップＳ２１が実行される点以外、ホストとしての電子機器１および記憶装置としての磁気ディスク装置２０は、上記第１実施形態と同様の構成であり、同様に動作する。
【００５５】
本実施形態では、ステップＳ２の後に、ＭＰＵ３５が、第三の判断部として動作し、ステップＳ２でReadコマンドまたはWriteコマンドを受信した際、その前に、Security Unlockコマンドを受信したか否かを確認する（ステップＳ２１）。図１１の（ａ）および（ｂ）に示されるように、ホストリセット時およびスタンバイ復帰時の双方とも、ＭＰＵ３５は、ReadコマンドまたはWriteコマンドの前に、Security Unlockコマンドを受信する。すなわち、本実施形態では、ステップＳ２１を追加することで、ＭＰＵ３５は、ホストリセット時またはスタンバイ復帰時であるか、あるいは他の状態であるかを、識別することができる。これにより、ＭＰＵ３５の不本意な誤動作等を抑制して、セキュリティをより強化することができる。なお、ＭＰＵ３５は、コマンドシーケンスの少なくともSecurity Unlockコマンドが受信したこと示すデータ（例えばフラグ等）を、所定の記憶部に記憶する。
【００５６】
＜第３実施形態＞
図１３は、本実施形態にかかる記憶装置としての磁気ディスク装置２０のリセット時（すなわち、電源遮断状態から電源投入状態へ遷移したとき）における、磁気ディスク装置２０および電子機器１の動作を示すフローチャートである。第１実施形態との相違点は、ステップＳ３がステップＳ３１に替わっている点である。ステップＳ３に替えてステップＳ３１が実行される点以外、ホストとしての電子機器１および記憶装置としての磁気ディスク装置２０は、上記第１実施形態と同様の構成であり、同様に動作する。なお、本実施形態でも、図１１に例示されるコマンドシーケンスが実行される。
【００５７】
本実施形態では、ステップＳ２の後に、ＭＰＵ３５は、第１実施形態とは異なる第一の判断部として動作し、ReadコマンドまたはWriteコマンドの前に、Identify Deviceコマンド（図１１参照）を受信したか否かを確認する（ステップＳ３１）。Identify Deviceコマンドは、ホストリセット時に、ホストとしての電子機器１が、記憶装置としての磁気ディスク装置２０に対して、識別情報（ＩＤ等）や属性等の送信（応答）を指示するコマンドであって、スタンバイ状態ではＭＰＵ３５は受信しない（ホストとしての電子機器１が送信しない）コマンドである。図１１の（ａ）に示されるように、ホストリセット時には、ステップＳ２で受信したReadコマンドまたはWriteコマンドの前に、Identify Deviceコマンドを受信するが、図１１の（ｂ）に示されるように、スタンバイ復帰時には、Identify Deviceコマンドを受信しない。したがって、本実施形態では、ステップＳ３１でIdentify Deviceコマンドを受信した場合には（ステップＳ３１でＹｅｓ）、スタンバイ復帰時に相当するため、ステップＳ４を実行し、ステップＳ３１でIdentify Deviceコマンドを受信しなかった場合には（ステップＳ３１でＮｏ）、ホストリセット時に相当するため、ステップＳ６を実行することで、上記第１実施形態と同様の結果を得ることができる。本実施形態では、ReadコマンドまたはWriteコマンドおよびIdentify Deviceコマンドが、第二のコマンドに相当する。なお、本実施形態では、ステップＳ２で受信するReadコマンドまたはWriteコマンドは、ステップＳ３１を実行するトリガとしての役割を有している。
【００５８】
以上、本発明の好適な実施形態について説明したが、本発明は上記実施形態には限定されず、種々の変形が可能である。例えば、上記複数の実施形態の構成要素やステップを適宜に組み合わせて実施することが可能である。また、マッピングは、別のアドレスに対するマッピングであってもよいし、マッピングが実行されないシステムとして実施することもできる。また、各状態を区別できる上述した以外のコマンドを利用して、本発明を実施することもできる。また、電子機器に外付けされた記憶装置として、本発明を実施することもできる。
【００５９】
本発明の実施形態によれば、記憶装置に対するアクセス制限に伴う不都合がより生じにくい記憶装置、電子機器、および記憶装置のアクセス制御方法を得ることができる。
【符号の説明】
【００６０】
１…電子機器、２０…磁気ディスク装置（記憶装置）、２１…記憶部、２１ａ…ＳＰ領域（ステータス記憶部）、２１ｂ…ロッキングテーブル（ステータス記憶部）、２１ｄ…ＭＢＲシャドウイング領域（所定領域）、２１ｅ…ＰＢＡアプリ領域（別の領域）、３４…フラッシュメモリ（第二のステータス記憶部）、３５ａ…アクセス制御部、３５ｂ…アクセス制限部、３５ｃ…第一のアクセス制限解除部、３５ｄ…第二のアクセス制限解除部、３５ｅ…マッピング実行部、３５ｆ…第一のマッピング解除部、３５ｇ…第二のマッピング解除部、３５ｊ…ステータス保持部。
【図１】
2012113656.tif 000003
【図２】
2012113656.tif 000004
【図３】
2012113656.tif 000005
【図４】
2012113656.tif 000006
【図５】
2012113656.tif 000007
【図６】
2012113656.tif 000008
【図７】
2012113656.tif 000009
【図８】
2012113656.tif 000010
【図９】
2012113656.tif 000011
【図１０】
2012113656.tif 000012
【図１１】
2012113656.tif 000013
【図１２】
2012113656.tif 000014
【図１３】
2012113656.tif 000015