JP2002202914A - 大容量記憶装置により提供される、制御装置lunを介したlunへのアクセスを安全にする方法およびシステム - Google Patents

大容量記憶装置により提供される、制御装置lunを介したlunへのアクセスを安全にする方法およびシステム

Info

Publication number
JP2002202914A
JP2002202914A JP2001344970A JP2001344970A JP2002202914A JP 2002202914 A JP2002202914 A JP 2002202914A JP 2001344970 A JP2001344970 A JP 2001344970A JP 2001344970 A JP2001344970 A JP 2001344970A JP 2002202914 A JP2002202914 A JP 2002202914A
Authority
JP
Japan
Prior art keywords
lun
access
disk array
request
remote computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001344970A
Other languages
English (en)
Other versions
JP2002202914A5 (ja
JP3992479B2 (ja
Inventor
Robert A Cochran
ロバート・エー・コクラン
Gregory D Dolkas
グレゴリー・ディー・ドルカス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HP Inc
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JP2002202914A publication Critical patent/JP2002202914A/ja
Publication of JP2002202914A5 publication Critical patent/JP2002202914A5/ja
Application granted granted Critical
Publication of JP3992479B2 publication Critical patent/JP3992479B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 通信媒体を介して1つまたは複数のリモート
・コンピュータに結合された大容量記憶装置(202)
内の、制御装置LUNを介した動作要求を安全にする方
法およびシステムを提供すること。 【解決手段】 制御装置を介した動作は、前記動作を求
める要求の一部として指定されたいくつかの異なるLU
N(208〜215)を操作またはアクセスする可能性
のあるクラスの動作を意味する。本発明は、具体的ター
ゲットCDLUNを対象とする動作を求める要求を許可
するために、大容量記憶装置(202)内のコントロー
ラ(206)が調べることのできるアクセス・テーブル
を用い、ターゲットCDLUNが、要求の一部として指
定された他の任意のLUNにアクセスまたは操作するこ
とを許可されていることをチェックするために、追加ア
クセス・テーブルを用いる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、大容量記憶装置内
に用いられるセキュリティ機構に関し、特に制御装置論
理ユニットを介してリモート・コンピュータから論理ユ
ニットに間接アクセスする間に、大容量記憶装置によっ
てリモート・コンピュータに提供された論理ユニットへ
のアクセスを確保する方法およびシステムに関する。
【0002】本発明は、リモート・コンピュータがアク
セス特権を有する大容量記憶装置内に格納されたデータ
に限って、リモート・コンピュータがアクセスを得るこ
とができるように保証することに関する。本発明を、い
くつかのリモート・コンピュータからのI/O要求に対
して機能するディスク・アレイ・コントローラ内に含ま
れる一実施形態を参照しながら述べ、例示する。しか
し、他の多数のタイプの記憶装置のコントローラおよび
一般的電子サーバ・アプリケーションにおいて、本発明
の代替実施形態を用いることができる。
【0003】
【従来の技術】図1は標準ディスク・ドライブのブロッ
ク図である。ディスク・ドライブ101は、コンピュー
タ・バス、ファイバ・チャネル、または他の類似の電子
通信媒体などの通信媒体102を介して、リモート・コ
ンピュータからI/O要求を受け取る。図1に示すディ
スク・ドライブ101を含む多数のタイプの記憶装置に
とって、大部分のI/O要求はREADまたはWRIT
E要求のいずれかである。READ要求は、記憶装置内
に格納された電子データのうち、いくらかの要求された
量を記憶装置が要求元リモート・コンピュータに返すこ
とを要求する。WRITE要求は、リモート・コンピュ
ータから供給された電子データを記憶装置が格納するこ
とを要求する。したがって、記憶装置により実行された
READ動作の結果として、データは通信媒体102を
介してリモート・コンピュータに返され、WRITE動
作の結果として、データは、通信媒体102を介してリ
モート・コンピュータから記憶装置に受け取られ、記憶
装置内に格納される。
【0004】図1に示されるディスク・ドライブ記憶装
置は、電子メモリ、1つまたは複数のプロセッサまたは
処理回路、およびコントローラ・ファームウェアを含む
コントローラ・ハードウェアおよび論理103を含み、
電子データを格納するために磁気媒体が塗布されたいく
つかのディスク・プラッタ104もまた含む。ディスク
・ドライブは、読取り/書込みヘッド、高速電子モー
タ、ドライブ・シャフト、ならびに他の電子的、機械
的、および電子機械的コンポーネントを含む、図1に示
されていない他の多数のコンポーネントを含む。ディス
ク・ドライブ内のメモリは、リモート・コンピュータか
ら受け取ったI/O要求を格納する要求/応答バッファ
105、および要求/応答バッファ105内に格納され
たI/O要求に対応する内部I/Oコマンドを格納する
I/Oキュー106を含む。中でも、リモート・コンピ
ュータとディスク・ドライブの間の通信、I/O要求か
ら内部I/Oコマンドへの変換、そしてI/Oキューの
管理は、ディスク・ドライブI/Oコントローラによ
り、ディスク・ドライブI/Oコントローラ・ファーム
ウェア107によって指定されたとおりに実行される。
内部I/Oコマンドを、データがディスク・プラッタ1
04上に格納またはそこから取得される電子機械的ディ
スク動作に変換することは、ディスク・ドライブI/O
コントローラにより、ディスク媒体読取り/書込み管理
ファームウェア108によって指定されたとおりに実行
される。したがってディスク・ドライブI/O制御ファ
ームウェア107およびディスク媒体読取り/書込み管
理ファームウェア108、ならびにファームウェアの実
行を可能にするプロセッサおよびメモリが、ディスク・
ドライブ・コントローラを構成する。
【0005】2つのリモート・コンピュータにより使用
されるデュアル・ポート・ディスク・ドライブ、および
ファイバ・チャネルなどの通信媒体を介して多数のリモ
ート・コンピュータからアクセスできるマルチ・ポート
・ディスク・ドライブを提供することが一般的であった
が、図1に示されるディスク・ドライブなどの個々のデ
ィスク・ドライブは通常、単一のリモート・コンピュー
タに接続され、かつそれに使用される。しかし単一ディ
スク・ドライブ内に格納できる電子データ量は限られて
いる。多数のリモート・コンピュータから効率的にアク
セスできるはるかに大容量の電子データ記憶装置を提供
するために、ディスク製造業者は通常、図1に示される
ディスク・ドライブなどの多数の異なる個別ディスク・
ドライブをディスク・アレイ装置に組合わせ、記憶容量
を増加させ、ならびにディスク・アレイ内に含まれる複
数のディスク・ドライブの同時動作により機能する並列
I/O要求に対する容量を増加させる。
【0006】図2は、ディスク・アレイの単純なブロッ
ク図である。ディスク・アレイ202は、いくつかのデ
ィスク・ドライブ装置203、204、205を含む。
図2では、例示を単純化するために、ディスク・アレイ
の中に3つの個別ディスク・ドライブしか示されていな
いが、ディスク・アレイは、数十または数百の個別ディ
スク・ドライブを含むことができる。ディスク・アレイ
は、ディスク・アレイ・コントローラ206およびキャ
ッシュ・メモリ207を含む。一般に、はるかに遅い電
子機械的ディスク・ドライブからではなく迅速にアクセ
ス可能なキャッシュ・メモリからデータを読取ることに
より、同じデータに対するその後の要求をより迅速に満
足させることができるように、READ要求に応答して
ディスク・ドライブから取り出されたデータを、キャッ
シュ・メモリ207内に格納することができる。その後
合理的な時間内に再要求される可能性が非常に大きいデ
ータをキャッシュ・メモリ207内に維持するために、
様々な精巧な機構が用いられる。データがその後REA
D要求を介して要求される可能性がある場合、または物
理記憶媒体への遅いデータ書込みを先送りするために、
ディスク・アレイ・コントローラ206は、WRITE
要求を介してリモート・コンピュータから受け取ったデ
ータをキャッシュ・メモリ207内に格納することもま
た選択することができる。
【0007】電子データは、ディスク・アレイ内で具体
的なアドレス可能な位置に格納される。ディスク・アレ
イは、多数の異なる個別ディスク・ドライブを含む可能
性があるので、ディスク・アレイにより表されるアドレ
ス・スペースは巨大であり、一般に数千ギガバイトであ
る。全アドレス・スペースは通常、論理ユニット(「LU
N」)と呼ばれるいくつかの抽象的データ記憶リソース
に分割される。LUNは、ディスク・アレイ内の1つま
たは複数のディスク・ドライブのデータ記憶スペースに
マッピングされた、所定量の電子データ記憶スペースを
含み、アクセス特権、バックアップ頻度、および1つま
たは複数のLUNとのミラーリング調整を含む様々な論
理パラメータに関連付けることができる。LUNは、ラ
ンダム・アクセス・メモリ(「RAM」)、ハード・デ
ィスク以外の大容量記憶装置、あるいはメモリ、ハード
・ディスク、および/または他のタイプの大容量記憶装
置の組合わせに基づくこともまたできる。リモート・コ
ンピュータは一般に、内部ディスク・ドライブ203〜
205およびディスク・アレイ・コントローラ206を
介してディスク・アレイにより提供される多数の抽象的
LUN208〜215の1つを介してディスク・アレイ
内のデータにアクセスする。したがってリモート・コン
ピュータは、ディスク・アレイに対応するバス通信媒体
アドレスを用いて、バイト、ワード、ブロックなど特定
の単位データ量、通常は64ビットの整数であるLUN
識別子およびLUNを指定する32ビット、64ビッ
ト、または128ビットのデータ・アドレス、ならびに
LUNに割り振られた論理データ・アドレス・パーティ
ション内のデータ・アドレスを指定することができる。
ディスク・アレイ・コントローラは、そのようなデータ
の指定をディスク・アレイ内の特定のディスク・ドライ
ブおよびディスク・ドライブ内の論理データ・アドレス
の標示に変換する。ディスク・ドライブ内のディスク・
ドライブ・コントローラは最後に、論理アドレスを物理
媒体アドレスに変換する。通常、電子データは、連続し
た32ビットまたは64ビットのコンピュータ・ワード
の1つまたは複数のブロックとして読取り/書込みさ
れ、アクセスの細分性(granularity)の正確な詳細は、
ディスク・アレイおよび個別ディスク・ドライブ内のハ
ードウェアおよびファームウェア機能ならびにI/O要
求を生成するリモート・コンピュータのオペレーティン
グ・システムおよびディスク・アレイとリモート・コン
ピュータを相互接続する通信媒体の特性に依存する。
【0008】ディスク・アレイ内のディスク・アレイ・
コントローラは、ディスク・アレイ・コントローラ内に
実施されたインタフェースを介してリモート・コンピュ
ータと対話する。このインタフェースは、コンピュータ
・ネットワーキング・システムの高級プロトコルと、あ
るいはオペレーティング・システムからアプリケーショ
ン・プログラムおよび人間のユーザに提供される関数呼
出しインタフェースと似ている。ディスク・アレイ・コ
ントローラにより提供されるインタフェースは、通信媒
体を介してディスク・アレイにアクセスするリモート・
コンピュータから要求することができる1組の動作を論
理的に含む。動作を要求するためにリモート・コンピュ
ータは、リモート・コンピュータの通信媒体アドレス、
リモート・コンピュータから要求されている動作タイプ
の標示、データ・アドレスなど要求された動作に特有の
パラメータ、およびディスク・アレイ・コントローラが
その動作を実行すべきターゲットLUNを通常含むいく
つかの異なるタイプの情報を提供する。したがって例え
ば、ディスク書込み動作を実行するために、リモート・
コンピュータは、書込むデータの位置、データが書込ま
れるアドレス、およびデータを書込むべきアドレスを含
むアドレス・スペースを提供するLUNの識別子を指定
する必要がある。
【0009】しかし、リモート・コンピュータがディス
ク・アレイ・コントローラに要求できる動作にはいくつ
かの異なるタイプがあり、非LUNベースの動作でも複
数のLUNにまたがる動作でもある。一例として、リモ
ート・コンピュータは、ディスク・アレイ・コントロー
ラが第1LUNを第2LUNにミラーリングするように
要求することができる。第1LUNが第2LUNにミラ
ーリングされるとき、第2LUNが第1LUNの忠実な
ミラー・コピーとなるように、ディスク・アレイ・コン
トローラは、第1LUNを対象とするすべての書込みを
第1および第2LUNの両方に自動的に実行する。した
がってリモート・コンピュータは、ディスク・アレイ・
コントローラが第1LUNを第2LUNにミラーリング
するように要求するために、ミラーリング動作の実行を
要求する際に両方のLUNを指定する必要がある。最初
のミラーリング接続が確立された後で、リモート・コン
ピュータは、第1のプライマリLUNに単純に書込み、
データがセカンダリのミラーLUNに内部的にコピーさ
れるものと保証される。他の例として、リモート・コン
ピュータは、1組のLUNを指定された時間間隔で指定
されたバックアップ装置に自動的にバックアップするよ
うに、ディスク・アレイ・コントローラに命じることを
望むことができる。
【0010】ディスク・アレイ・コントローラから要求
元リモート・コンピュータに提供されるいくつかの動作
が、複数のLUNを含むことがあるという事実と、一般
に、現在の多数のディスク・アレイ・コントローラ・イ
ンタフェースを介して任意の特定の動作を呼び出す際
に、リモート・コンピュータが単一のターゲットLUN
を指定しなければならないという事実を調和させるため
に、制御装置LUN(「CDLUN」)として知られて
いるある種の仮想LUNが、リモート・コンピュータが
動作を呼び出すインタフェースの一部としてディスク・
アレイ・コントローラにより提供される。CDLUNは
本質的には、ディスク・アレイ・コントローラにより提
供され実行される様々な動作に対するアクセスのポイン
トである。したがって第1LUNが第2LUNにミラー
リングされるべきであると指定するために、リモート・
コンピュータは、ミラーリング動作を呼び出し、動作の
ターゲットとして特定のCDLUNを指定する。CDL
UNは、アレイ内のLUN対の制御動作に対する間接メ
モリ・マッピングされたアクセスを提供する。CDLU
N内の具体的論理アドレス・オフセットを対象とする制
御動作は、定義により、そのオフセットに関連付けられ
たアレイ内のLUNを対象とする。
【0011】ディスク・アレイ・コントローラはさら
に、リモート・コンピュータに提供されるインタフェー
スの一部として、特定のリモート・コンピュータまたは
リモート・コンピュータのグループが、1つまたは複数
のLUNに対する独占的アクセスを獲得かつ維持できる
ようにする様々なセキュリティ機構を提供することがで
きる。そうすることにより、リモート・コンピュータま
たはリモート・コンピュータのグループは、許可されな
いエンティティによるアクセスおよび破損の可能性から
プライベート・データを保護することができる。ディス
ク・アレイは最初、単一の組織内の使用のために開発さ
れ、ディスク・アレイ内に格納されたデータに対するセ
キュリティは、コンピュータ・ルーム内のディスク・ア
レイの物理的分離および組織内の信用あるコンピュータ
にしかディスク・アレイを接続しないことにより一般に
得られていた。しかしディスク・アレイのサイズおよび
複雑性が増し、ファイバ・チャネルなどの通信媒体の機
能が非常に向上したことに伴い、ファイバ・チャネルな
どの通信媒体を介してディスク・アレイ内に格納された
データにアクセスするいくつかの異なる遠隔組織間でデ
ィスク・アレイが分割されることがますます一般的にな
っている。
【0012】第1レベルのセキュリティとして、ディス
ク・アレイは通常、ディスク・アレイ・コントローラに
より管理される中央に格納されたアクセス・テーブルを
介してLUNに対するアクセスを分割する。アクセス・
テーブルは通常、それぞれがLUN標示、ポート標示、
およびリモート・コンピュータの一意な識別子を含むエ
ントリを格納する。ディスク・アレイ・コントローラ
が、特定の通信ポートを介して指定されたターゲットL
UNを有する動作を実行する要求をリモート・コンピュ
ータから受け取るとき、ディスク・アレイ・コントロー
ラは、ターゲットLUN、要求を受け取ったポート、要
求を受け取ったリモート・コンピュータの一意な識別子
に一致する識別子の標示を含むエントリを求めてアクセ
ス・テーブル内を見る。そのようなエントリが見つかれ
ば、ディスク・アレイ・コントローラはその動作が進行
するのを許可する。他方、そのようなエントリが見つか
らなければ、ディスク・アレイ・コントローラは、その
ような記憶LUNが存在しないという標示を要求元リモ
ート・コンピュータに返す。アクセス・テーブルは通
常、システム管理者またはネットワーク管理者によるコ
ンソール・インタフェースを介したエントリで取り込ま
れる。したがってシステム管理者またはネットワーク管
理者は、動作の実行を求めて入って来るそれぞれの要求
をディスク・アレイ・コントローラによりチェックして
適切に許可するために、ディスク・アレイ・コントロー
ラにより使用されるディスク・アレイ内のアクセス・テ
ーブルをセットアップしメンテナンスすることにより、
リモート・コンピュータ間のLUNに対するアクセスを
分割する。
【0013】残念ながら、複数のLUNにまたがり、上
述のようにターゲットCDLUNの指定を必要とする動
作クラスは現在、上述のアクセス・テーブル法により充
分に安全にはされない。現在、ディスク・アレイ・コン
トローラは、アクセス・テーブル内のエントリが、要求
元リモート・コンピュータの一意な識別子、CDLUN
標示、および要求を受け取ったポート標示を含むかどう
かをチェックすることにより、ターゲットCDLUNを
指定する要求された動作をチェックする。しかしディス
ク・アレイ・コントローラはその後、要求元リモート・
コンピュータが、その動作の実行を求める要求の一部と
して指定された他のLUNのいずれかにアクセスするこ
とを許可されているかどうかをチェックしない。例えば
リモート・コンピュータが特定のターゲットCDLUN
を介して第1LUNが第2LUNにミラーリングされる
ように要求する場合、ディスク・アレイ・コントローラ
は、リモート・コンピュータがそのターゲットCDLU
Nにアクセスすることを許可されているかどうかを見る
ためにチェックするだけであり、その後リモート・コン
ピュータが、さらに指定された第1および第2LUNに
アクセスすることを許可されているかどうかを見るため
にはチェックしない。
【0014】CDLUNを介して間接的にアクセスさ
れ、ターゲットCDLUNに対する動作の実行を求める
要求の一部としてさらに指定されるLUNに対する、デ
ィスク・アレイ・コントローラによる許可チェックがな
いことは、ディスク・アレイ大容量記憶装置内の、ディ
スク・アレイのデータを格納し取り出すリモート・コン
ピュータに対するかなり大きなセキュリティ侵害の可能
性を意味する。第1の組織に属するリモート・コンピュ
ータが、第1の組織により要求されたミラーリング動作
の一部として、第2の組織に属するLUNを誤ってまた
は悪意をもって指定する可能性がある。同様に、第1の
組織のリモート・コンピュータが、自動バックアップを
求める要求の一部として指定された1組のLUNに、第
2の組織に属するLUNを誤ってまたは悪意をもって組
込む可能性がある。そのような場合、第2の組織に属す
るディスク・アレイ内に格納されたデータの破損または
第2の組織に属するデータの不正コピーのいずれかをも
たらす動作を求める要求を、第1の組織が誤ってまたは
悪意をもってディスク・アレイに命ずる可能性がある。
【0015】
【発明が解決しようとする課題】ディスク・アレイ・コ
ントローラは通常ファームウェアと共に論理回路内に実
施される。これらの実施例は、ソフトウェア・プログラ
ムの実施例のようには容易に変更されない。さらに、ハ
ードウェアおよび内部メモリ制約のため、汎用オペレー
ティング・システムおよびネットワーク・プロトコル内
に通常ある精巧なセキュリティ方法論およびプロトコル
は法外に高価であり、ファームウェア・ディスク・アレ
イ・コントローラの実施例の一部として実施するには困
難であろう。これらの理由により、ディスク・アレイの
設計者、製造者、およびユーザは、ターゲットCDLU
Nに対して実行される動作を介して許可されないリモー
ト・コンピュータがLUNにアクセスすることを防止す
る比較的容易に実施される他のセキュリティ機構に対す
る必要性を認識して来た。
【0016】
【課題を解決するための手段】本発明の一実施形態にお
いてディスク・アレイ・コントローラは、他のLUNの
指定を含むターゲットCDLUNを対象とする、リモー
ト・コンピュータから要求された動作の許可をチェック
するために、2つのアクセス・テーブルを使用する。最
初にディスク・アレイ・コントローラは、その要求の指
定されたターゲットCDLUN、その要求を受け取った
ポート、その要求を受け取ったリモート・コンピュータ
の一意な識別子、に等しいLUN、ポート、およびリモ
ート・コンピュータ識別子の標示、を有するエントリが
第1アクセス・テーブル内にあるかどうかを判定する。
第1アクセス・テーブル内にそのようなエントリが存在
するとき、ディスク・アレイ・コントローラは、要求元
リモート・コンピュータがそのターゲットCDLUNに
アクセスすることを許可されていると仮定する。次にデ
ィスク・アレイ・コントローラは、第2の、追加アクセ
ス・テーブルをチェックして、その動作の実行を求める
要求の一部として指定された他のそれぞれのLUNに対
してその動作のために指定されたターゲットCDLUN
の標示と対になった他のLUNの標示を含むエントリが
存在するかどうかを判定する。ディスク・アレイ・コン
トローラが、その動作の実行を求める要求内で指定され
た他の各LUNのためのそのようなエントリを追加アク
セス・テーブル内に見つけるときに限って、ディスク・
アレイ・コントローラはその動作の実行を許可する。
【0017】一般的な読取りおよび書込み動作など、多
数の非CDLUN介在動作にとって、ディスク・アレイ
・コントローラによる許可チェックは変わらない。その
ような動作が進行するためには、ディスク・アレイ・コ
ントローラがアクセス・テーブル内に対応するエントリ
を見つけなければならない。ディスク・アレイ・コント
ローラは、LUNミラーリングを求める要求など、ター
ゲットCDLUNを指定する要求であって、他のLUN
の指定を含む動作を求める要求のためだけに、2つのレ
ベルのアクセス・テーブルおよび追加アクセス・テーブ
ル許可チェックを用いる。
【0018】したがって、ターゲットCDLUNを指定
し他のLUNの指定を含む動作を正常に要求するため
に、要求元リモート・コンピュータは、指定されたター
ゲットCDLUNにアクセスすることを許可されなけれ
ばならず、ターゲットCDLUNは、さらに指定された
それぞれのLUNにアクセスすることを許可されなけれ
ばならない。アクセス・テーブルおよび追加アクセス・
テーブルの両方は、コンソールを介して、または安全な
相互接続を介してリモートでディスク・アレイ・コント
ローラと対話するシステム管理者またはネットワーク管
理者により取り込まれ、編成、維持される。ターゲット
CDLUNではなくターゲットLUNを指定する多数の
動作の許可チェックが変わらないので、かつ追加アクセ
ス・テーブルおよび追加アクセス・テーブルを用いる許
可チェックの実施が、アクセス・テーブルおよびアクセ
ス・テーブルを用いる許可チェックの現在の実施とほと
んど同一であるので、本発明に述べた実施形態は、ディ
スク・アレイ・コントローラのファームウェア実施例の
一部として、経済的かつ比較的容易に実施される。
【0019】
【発明の実施の形態】本発明は、要求された動作を求め
る要求元リモート・コンピュータの許可をチェックす
る、ディスク・アレイ・コントローラが引受けるセキュ
リティ対策に関する。前述のように、ディスク・アレイ
・コントローラの現在の特定のファームウェア実施例に
おいて、ディスク・アレイ・コントローラは、要求の一
部として指定されたターゲットLUNの標示、要求を受
け取ったポートの標示、および要求元リモート・コンピ
ュータの一意な識別子を含むエントリを求めてアクセス
・テーブルを検索する。アクセス・テーブル内にそのよ
うなエントリが見つかると、ディスク・アレイ・コント
ローラは、要求された動作の実行を続けるが、そのよう
なエントリが見つからないとき、ディスク・アレイ・コ
ントローラは、そのような記憶LUNが存在しないとい
う標示を要求元リモート・コンピュータに返す。前記議
論のように、この許可方法は、ディスク・アレイ・コン
トローラにより提供される動作クラスであって、指定さ
れたターゲットCDLUNを対象とし他の指定されたL
UNを含む動作クラスには不充分である。前記議論のよ
うに、第1LUNを第2LUNに、または第1グループ
の諸LUNを第2グループの諸LUNにミラーリングす
ることを要求する動作、あるいは1グループのLUNを
指定されたバックアップ装置に自動的にバックアップす
ることを要求する動作は、ターゲットCDLUNならび
に他のLUNの指定を含む動作の例である。現在このク
ラスの動作は、要求元リモート・コンピュータが追加指
定されたLUNにアクセスすることを許可されているか
どうかに関わらず、要求元リモート・コンピュータがタ
ーゲットCDLUNにアクセスすることを許可されてい
るときにディスク・アレイ・コントローラにより許可さ
れる。誤ったまたは悪意のあるリモート・コンピュータ
がアクセス特権を有するターゲットCDLUNを介し
て、その誤ったまたは悪意のあるリモート・コンピュー
タがアクセス特権を有しないLUNに、その誤ったまた
は悪意のあるリモート・コンピュータが容易にアクセス
を得ることができる。
【0020】現在のディスク・アレイ・コントローラ実
施例内のこの潜在的に大きなセキュリティ・ホールを閉
じるために、本発明の一実施形態は、他のLUNととも
にターゲットCDLUNを指定することにより要求され
たそれらの動作のために第2の、追加アクセス・テーブ
ルを用いる。追加アクセス・テーブルは、それぞれがC
DLUNの標示および非CDLUNの標示を含むエント
リを有する。追加アクセス・テーブル内のCDLUN/
LUN対の存在は、そのCDLUNがLUNにアクセス
することができることを示す。リモート・コンピュータ
が、他のLUNとともにターゲットCDLUNを指定す
ることにより動作を要求することを許可されるために、
リモート・コンピュータは、アクセス・テーブル内のエ
ントリを介してターゲットCDLUNにアクセスするこ
とを許可されなければならず、ターゲットCDLUN
は、追加アクセス・テーブル内のエントリを介してその
要求中に指定された他のそれぞれのLUNにアクセスす
ることを許可されなければならない。
【0021】以下に詳細に述べるように、本発明に述べ
た実施形態は、ディスク・アレイ・コントローラのファ
ームウェア実施例内に経済的かつ比較的容易に実施され
る。最初に、ディスク・アレイ・コントローラにより提
供される動作の大半である、ターゲットCDLUNでは
なくてターゲットLUNを含む動作に対する許可チェッ
ク方法は変わらない。許可チェックのための現在の方法
に対する変更は、指定されたターゲットCDLUNを対
象とし追加指定されたLUNを含むクラスの動作にしか
関連しない。そのクラスの動作に対して、2つの部分か
らなる許可、すなわち、現在の許可方法と同一の第1部
分、および現在の許可方法に非常に類似の第2部分の実
施、が使用される。
【0022】本発明の一実施形態を、C++類似の疑似
コードの実施例を参照しながら以下に詳細に述べる。C
++類似の疑似コードの実施例は、明確化および例示の
目的で選ばれている。一般にディスク・アレイ・コント
ローラは、ファームウェア内、または論理回路内に直接
実施される。ファームウェア実施例ならびに論理回路実
施例は、現代の技術により、高級プログラム類似の仕様
のコンパイルによって設計、実施されるので、疑似コー
ドによって本発明の実施例を示すことは、極めて適切な
ことである。
【0023】次のC++類似の疑似コード実施例は、特
定のディスク・アレイ・コントローラ内で使用される現
在のセキュリティ機構ならびに本発明の一実施形態を示
す。最初に、いくつかの定数およびLUN、ポート、お
よびサーバのための識別子を表す3つのクラス宣言が以
下に提供され、この疑似コード実施例中のサーバは、よ
り一般的なリモート・コンピュータの概念と等価であ
る。
【0024】
【0025】上記行1上で宣言された定数「WWW_name_l
ength」は、サーバまたはリモート・コンピュータのた
めの文字列識別子のために任意に定義された長さであ
る。上記行2上で宣言された定数「TableLength」は、
アクセス・テーブルの任意の最大長である。実際の実施
例において、これらの定数に任意に割り当てられた値
は、全く異なるか、あるいはサーバ名およびアクセス・
テーブルの長さのいずれかまたは両方が可変の長さを有
する可能性があることに留意されたい。
【0026】上記行3〜17上で宣言されたクラス「LU
N」は、特定のLUNの標示または識別子を表す。疑似
コード実施例においてLUN識別子は、基本的に整数で
あり、クラス「LUN」は対応して、上記行6上で宣言さ
れた整数データ・メンバ「name」を含む。上記行8上で
宣言されたメンバ関数「getVal」は、データ・メンバ
「name」の整数値を返す。上記行9〜13上で宣言され
た他の関数メンバは、1つのLUNが他のLUNに割り
当てられること、LUNに整数値が割り当てられるこ
と、および1つのLUNが他のLUNと比較されること
を可能にする、割り当ておよび関係演算子を提供する。
最後にクラス「LUN」は、LUNが異なるLUNの値を
有するように構築されること、コンストラクタ(con
structor)に対する引数として供給された整数
値を有することを可能にし、あるいはLUNが、データ
・メンバ「name」の整数値を指定することなく構築され
ることを可能にする、上記行14〜16上で宣言された
3つのコンストラクタを含む。上記行18〜32および
33〜47上で宣言されたクラス「port」および「serv
er」はそれぞれ、同様にポート識別子およびサーバまた
はリモート・コンピュータ識別子をそれぞれ表す。ポー
トはLUN同様、整数により識別され、サーバまたはリ
モート・コンピュータは、長さ「WWW_name_length」の
文字列により識別される。
【0027】次にアクセス・テーブルを定義する2つの
クラス宣言が提供される。
【0028】
【0029】上記行1〜20上で宣言されたクラス「Ac
cessEntry」は、アクセス・テーブル内の単一エントリ
を表す。上記議論のように、アクセス・テーブル内の各
エントリは、特定のLUN、ポート、およびサーバまた
はリモート・コンピュータの標示を含む。それらの標示
は、クラス「AccessEntry」において、上記行4〜6上
で宣言された3つのデータ・メンバ「In」、「pt」およ
び「sv」により表される。クラス「AccessEntry」は、
上記行8〜13上で宣言された3つのデータ・メンバ内
の値の取り出しおよび格納のためのメンバ関数、上記行
14および行15〜17上でそれぞれ宣言された割り当
て演算子および様々な関係演算子、ならびに上記行18
〜19上で宣言されたいくつかのコンストラクタを含
む。C++の規則にしたがい、データ・メンバの値を取
り出す関数は、プレフィクス「get」を含む名前を有
し、データ・メンバに値を格納する関数は、プレフィク
ス「set」を含む名前を有することに留意されたい。上
記行14上で宣言された割り当て演算子は、クラス「Ac
cessEntry」の1つのインスタンスに、クラス「AccessE
ntry」の他のインスタンスの値を割り当てることを可能
にする。上記行15〜17上で宣言された関係演算子
は、クラス「AccessEntry」の1つのインスタンスによ
り表される値と、クラス「AccessEntry」の他のインス
タンス内に格納された値を比較することを可能にする。
【0030】上記行21〜32上で宣言されたクラス
「AccessTable」は、特定のサーバによる特定のポート
を介した特定のLUNおよびCDLUNに対するアクセ
スの許可を格納するために、ディスク・アレイ・コント
ローラの実施例により使用されるアクセス・テーブルを
表す。クラス「AccessTable」のインスタンスは、クラ
ス「AccessEntry」のインスタンスのアレイを含み、本
質的にLUN/ポート/サーバの三つ組みを表す。クラ
ス「AccessEntry」のインスタンスのアレイは、「tabl
e」と呼ばれるが、上記行4上で宣言され、行5上で
は、クラス「AccessTable」のインスタンスにより表さ
れるアクセス・テーブル内に現在格納される有効なエン
トリの数を含む整数データ・メンバ「size」が宣言され
る。現在の実施例において、クラス「AccessEntry」の
インスタンスは、インデックス「0」を有するテーブル
内の第1スロットで始まるテーブル内に順次格納され
る。したがって2つの有効なエントリを有するテーブル
は、インデックス0および1を有するテーブル・スロッ
ト内に、クラス「AccessEntry」のインスタンスを含
み、データ・メンバ「size」は値2を有するであろう。
したがってsizeは、テーブル内の有効なエントリの数、
およびLUN/ポート/サーバの三つ組みを割り当てる
ことのできるテーブル内の次のフリー・スロットのイン
デックスの両方を表す。クラス「AccessTable」は、次
のメンバ関数を含む。(1)「addEntry」、LUN/ポ
ート/サーバの三つ組みをクラス「AccessTable」のイ
ンスタンスにより表されるアクセス・テーブルに追加す
る、上記行27上で宣言されたメンバ関数、(2)「de
leteEntry」、アクセス・テーブルから特定のLUN/
ポート/サーバの三つ組みを削除する、行28上で宣言
されたメンバ関数、(3)「findEntry」、アクセス・
テーブル内に格納された特定のLUN/ポート/サーバ
の三つ組みのインデックスを返す、行29上で宣言され
たメンバ関数、(4)「retrieveEntry」、参照引数
「l」、「p」および「s」として供給されたクラス「LU
N」、「port」および「server」のインスタンス内に、
引数「index」内に供給されたインデックスを有するテ
ーブル・エントリからLUN/ポート/サーバの三つ組
みを取り出す、行30上で宣言されたメンバ関数、なら
びに(5)上記行31上で宣言されたコンストラクタ。
【0031】次に、クラス「LUN」、「port」および「s
erver」の様々なメンバ関数の実施例が提供される。こ
れらの実施例は、多くの場合最適に効率的とはほど遠い
が、非常に単純明快である。制御論理およびプログラム
・コードを開発する際には、実行時効率と設計および実
施効率、実行時効率とコードの複雑性、ならびに実行時
効率対メンテナンスおよびその後の改善の経済性の間の
多数のトレードオフが通常存在する。他の多数のトレー
ドオフおよび対応する実施例を選択することができ、そ
れらは本発明の範囲内ではあるが、例示の目的で、実行
時の効率よりも単純さを支持し、必ずしも最適に効率的
なアルゴリズムではなく単純なアルゴリズムを選択し
た。このセクションおよび次のセクション内の多数のメ
ンバ関数の実施例は、単純明快であり、詳細には議論し
ない。
【0032】
【0033】上記行10〜15上に示されているサーバ
割り当て演算子の実施例は、割り当て演算子の実施の典
型となる。この場合、データ・メンバ「name」内に格納
された値は、この割り当て関数に引数「s」として渡さ
れる文字列により表される値を有するように割り当てら
れる。行13のforループにおいて引数「s」により参照
される文字列は、ローカル変数「k」により参照される
データ・メンバ「name」にコピーされる。最後に、行1
4上でこの割り当て関数は、クラス「server」の現在の
インスタンスに参照を返す。
【0034】上記行33〜43上に示されるサーバの
「<」関係演算子の実施例は、関係演算子の実施の典型
となる。この演算子は、クラス「server」の現在のイン
スタンスの値と参照引数「s」により参照される異なる
サーバ・インスタンスの値を比較する。クラス「serve
r」の現在のインスタンスの値が、引数「s」により参照
されるサーバ・インスタンスの値より小さい場合、
「<」演算子は、真のブール値を返し、そうでない場
合、偽のブール値を返す。行37〜41のforループに
おいて、現在のインスタンスのデータ・メンバ「name」
の値が、引数「s」により参照されるサーバ・インスタ
ンスの値と比較される。実施された比較は、見慣れた電
話帳内の名前の順序付けを生成する古典的な辞書的文字
列比較と等価である。
【0035】次に、クラス「AccessEntry」の様々なメ
ンバ関数の実施例が提供される。
【0036】
【0037】次に、クラス「AccessTable」の様々なメ
ンバ関数の実施例が以下に提供される。
【0038】
【0039】再び、AccessTableメンバ関数の実施例は
単純明快であり、AccessTableメンバ関数「addEntry」
の実施例のみを代表例として議論する。メンバ関数「ad
dEntry」は、クラスAccessTableのインスタンスにより
表されるアクセス・テーブルに、三つ組みとして追加さ
れるLUN、ポート、およびサーバを参照する参照引数
を受け取る。行5上で、ローカル変数「ae」が、参照引
数により指定されたLUN/ポート/サーバの三つ組み
を含むように構築される。行6上でaddEntryにより検出
されるように、アクセス・テーブルが一杯であれば、エ
ントリは追加されないで、負の値が返される。行7のwh
ileループにおいて、AccessEntry関係演算子「<」によ
り定義されたように、addEntryは、ローカル変数「ae」
の値以上の値を有するクラス「AccessEntry」のインス
タンスを求めてテーブル内の有効なエントリを走査す
る。whileループの終わりにおいてローカル変数「i」
は、ローカル変数「ae」の値以上の有効な最初のエント
リのオフセット、またはテーブル内で次に利用可能なエ
ントリのオフセットのいずれかである。行8上でaddEnt
ryにより検出されるように、テーブル内にエントリが存
在しローカル変数「ae」により表されるのと同じ三つ組
みを表す場合、アクセス・テーブルに第2の等価な三つ
組みを追加する点がないので、addEntryは負の値を返
す。そうでない場合、行12上のforループにおいて、a
ddEntryは、追加されるエントリに続くすべてのエント
リを下方に1つ分動かして、新しいエントリのためのス
ペースを作り、行13上で、新しいエントリを追加す
る。新しいエントリの追加に続いて、addEntryは、デー
タ・メンバ「size」内の値を増分してアクセス・テーブ
ルの新しいサイズを反映する。
【0040】上記に提供された宣言および実施例ととも
に、現在利用可能な特定のディスク・アレイ・コントロ
ーラにおいて用いられる現在の許可技術を示すために、
次の関数「currentAuthorization」が提供される。
【0041】
【0042】関数「currentAuthorization」は、要求さ
れた動作、この場合、前に議論したミラーリングまたは
バックアップ要求など、他のLUNの指定を含むターゲ
ットCDLUNに対する動作、が許可されているかどう
かをチェックするために、ディスク・アレイ・コントロ
ーラ内のコードにより呼び出すことができる。関数「cu
rrentAuthorization」は、LUN、ポート、サーバ、お
よびアクセス・テーブルを参照する参照引数、それぞれ
「CDLUN」、「p」、「s」、および「at」を受け取る。
関数currentAuthorizationは、行4上で、LUN/ポー
ト/サーバの三つ組みCDLUN/p/sを表すエントリをア
クセス・テーブルが現在含むかどうかを判定するため
に、アクセス・テーブル・メンバ関数「findEntry」を
呼び出す。そうであれば、関数「currentAuthorizatio
n」は行5上で真を返し、そうでない場合、行6上で偽
を返す。したがって前に議論したように、現在の許可技
術は、ターゲットCDLUN、要求を受け取ったポー
ト、および要求元サーバまたはリモート・コンピュータ
の一意な識別子が許可テーブル内に三つ組みとして存在
するかどうかをチェックすることを含み、そうであれ
ば、要求された動作が許可されていると見なす。しかし
上述のように、許可された動作は、要求元サーバがアク
セスする許可を有しないLUNにアクセスすることを含
みデータ破損の可能性につながるか、または要求元サー
バの組織の外部組織に属するデータを読取る可能性があ
るのでこの許可技術は非常に不充分である。
【0043】本発明の一実施形態は、以下に提供される
2つの他のクラスとともに、LUN、ポート、サーバ、
accessEntry、およびaccessTableクラスの上記宣言およ
び実施例を用いる。
【0044】
【0045】クラス「SupplementalAccessEntry」は、
前述のクラス「AccessEntry」に類似し、クラス「Suppl
ementalAccessTable」は、前述のクラス「AccessTabl
e」に類似する。SupplementalAccessEntryは、CDLU
N/LUN対を提示し、SupplementalAccessTableは、
いくつかのCDLUN/LUN対を含む。前記議論のよ
うに、特定のCDLUN/LUN対の存在は、そのCD
LUNがターゲットCDLUNである動作の一部とし
て、CDLUNがLUNにアクセスできることを示す。
この2つの新しいクラスは、以前に宣言されたクラス
「AccessEntry」および「AccessTable」と非常に類似し
ており、したがってさらに述べることはない。Suppleme
ntalAccessEntryおよびSupplementalAccessTableメンバ
関数の実施例が以下に提供される。
【0046】
【0047】クラス「SupplementalAccessEntry」およ
び「SupplementalAccessTable」の疑似コード宣言およ
び実施例を考慮して、本発明の一実施形態を表す許可関
数「newAuthorization」を次に提供することができる。
【0048】
【0049】この新しい許可関数は、次の引数を受け取
る。(1)「CDLUN」、動作のターゲットCDLUNを
表すLUNに対する参照、(2)「LUNlist」、ミラー
リング動作においてミラーリングされるLUNなど、そ
の動作においてさらに含まれるLUNのリストに対する
ポインタ、(3)「listSize」、リスト「LUNlist」内
のLUNの数を指定する整数、(4)「p」、ディスク
・アレイ・コントローラが動作を求める要求を受け取っ
たポート、(5)「s」、そこから要求を受け取ったサ
ーバまたはリモート・コンピュータ、(6)「at」、ア
クセス・テーブルに対する参照、および(7)「st」、
追加アクセス・テーブルに対する参照。最初に、行5上
でnewAuthorizationは、上述の関数「currentAuthoriza
tion」において実施された前の行4の許可技術とちょう
ど同様に、CDLUN/p/sの三つ組みがアクセス・
テーブル内に現在存在するかどうかを判定する。存在し
ない場合、要求元サーバが、参照引数「CDLUN」により
指定されたターゲットCDLUNに対して、動作を要求
する許可を有しないので、newAuthorizationは、行15
上で偽のブール値を返す。そうでない場合、行7〜12
のwhileループにおいて、newAuthorizationは、許可を
求めてリスト「LUNlist」内の各LUNをチェックす
る。行9上でnewAuthorizationは、追加アクセス・テー
ブル「st」が、LUNlistから選択されたCDLUN/L
UNの対を含むかどうかを判定する。含まない場合、動
作のターゲットCDLUNは、その動作を求めて指定さ
れたLUNの1つにアクセスすることを許可されておら
ず、newAuthorizationは、行9上で偽のブール値を返
す。リスト「LUNlist」内の各LUNに対するCDLU
N/LUN対が、行7〜12のwhileループ内で見つか
れば、その動作は許可されており、行13上でnewAutho
rizationは、真のブール値を返す。
【0050】したがって本発明の上述の実施形態は、デ
ィスク・アレイ・コントローラのファームウェアの実施
例に、第2のアクセス・テーブルである追加アクセス・
テーブルを加え、他のLUNの指定を含むターゲットC
DLUNに対して動作を求めるリモート・コンピュータ
からの要求に対するより完全な許可チェックを行う能力
を、ディスク・アレイ・コントローラに提供する。新し
い許可技術は、指定されたターゲットLUNに対して動
作を要求する要求元リモート・コンピュータの許可のチ
ェック、ならびに指定されたターゲットCDLUNが、
その要求の追加指定されたLUNにアクセスすることを
許可されていることのチェックを含む。二段階の許可機
構を使用することにより、本発明の本明細書に述べた実
施形態は、ディスク・アレイ・コントローラ実施例およ
び多数の他のタイプの大容量記憶装置のコントローラの
実施例において以前存在した重大なセキュリティ・ホー
ルを閉じる。上述の実施形態では、許可されたエンティ
ティはリモート・コンピュータであるが、代替実施形態
では、リモート・プロセスまたはユーザなど他のエンテ
ィティが許可されてよい。
【0051】本発明を特定の実施形態の見地から述べて
来たが、本発明がこの実施形態に限定されることを意図
するものではない。当業者には、本発明の趣旨を超えな
い修正が明らかであろう。例えば本発明は、ファイバ・
チャネルなどの高速通信媒体によりリモートでアクセス
される様々な大容量記憶装置のためのコントローラの実
施例において用いることができる。上記のように本発明
は、本発明が用いられる大容量記憶装置のコントローラ
の実施例の性格次第で、ハードウェア回路、ファームウ
ェアまたはソフトウェア内に実施することができる。任
意のソフトウェアの実施例のとき、本発明は、ほとんど
無制限の数の様々な方法で実施することができる。様々
な制御構造およびモジュール構成を用いることができ、
様々な基本的動作を有する様々なテーブル・フォーマッ
トを用いることができ、本発明は、任意の数の様々なプ
ログラムまたは仕様言語において実施することができ
る。本明細書に述べた実施形態は、ディスク・アレイ・
コントローラ内で実施されるが、代替実施形態は、大容
量記憶装置にアクセスするリモート・コンピュータ上で
稼働する許可ルーチン内、許可サーバ内、または他のタ
イプの装置およびシステム内に実施することができる。
【0052】前記記述は説明の目的で、本発明の完全な
理解を提供するために、具体的用語を使用した。しかし
本発明を実施するために具体的詳細は必要でないこと
が、当業者には明らかであろう。本発明の具体的実施形
態の前記記述は、例示および説明の目的で提示されてい
る。それらの記述は、網羅的であること、または開示さ
れた正確な形態に本発明を限定することを意図するもの
ではない。明らかに、上記教示を考慮して多数の修正お
よび変形形態が可能である。諸実施形態は、本発明の原
理およびその実際の応用を最もよく説明するために示し
述べられ、それによって本発明および意図した特定の使
用法に適する様々な修正を含む様々な実施形態を、他の
当業者が最もよく利用できるようにする。本発明の範囲
は、特許請求の範囲およびそれらの均等物により定義さ
れるものである。
【0053】本発明の態様を以下に例示する。
【0054】1.大容量記憶装置(202)により提供
される論理ユニット(208〜215)にリモート・エ
ンティティからアクセスすることを許可する方法であっ
て、特定の論理ユニットにアクセスする、特定のリモー
ト・エンティティの許可をそれぞれ表すエントリを含む
アクセス・テーブルを提供すること、特定の論理ユニッ
トにアクセスする、特定の制御装置論理ユニットの許可
をそれぞれ表すエントリを含む追加アクセス・テーブル
を提供すること、および指定された制御装置論理ユニッ
トを対象として1つまたは複数の他の指定された論理ユ
ニットを含む動作の実行をリモート・エンティティが要
求するときに、前記指定された制御装置論理ユニットに
アクセスする、前記リモート・エンティティの許可を表
すエントリが前記アクセス・テーブル内に現在存在し、
前記1つまたは複数の他の指定された論理ユニットのそ
れぞれに、前記他の指定された論理ユニットにアクセス
する、前記指定された制御装置論理ユニットの許可を表
すエントリが追加アクセス・テーブル内に存在する場合
に限って、前記動作の実行を求める要求を許可すること
を含む方法。
【0055】2.前記大容量記憶装置(202)が、リ
モート・エンティティからの要求を受け取るポートを含
み、実行を求める要求の許可が、前記大容量記憶装置内
のコントローラ(206)により実行される、上記1に
記載の方法。
【0056】3.論理ユニットまたは制御装置論理ユニ
ットの標示、ポートの標示、およびリモート・エンティ
ティの標示をそれぞれ含むエントリを前記アクセス・テ
ーブルが含む、上記2に記載の方法。
【0057】4.制御装置論理ユニットの標示、および
論理ユニットの標示をそれぞれ含むエントリを前記追加
アクセス・テーブルが含む上記2に記載の方法。
【0058】5.前記大容量記憶装置(202)がディ
スク・アレイであり、リモート・エンティティが、通信
媒体を介して前記ディスク・アレイと相互接続されたリ
モート・コンピュータである、上記2に記載の方法。
【0059】6.大容量記憶装置(202)により提供
される論理ユニット(208〜215)にリモート・エ
ンティティからアクセスすることを許可する許可システ
ムであって、リモート・エンティティにより生成される
動作の実行を求める要求を検出する要求検出コンポーネ
ント、特定の論理ユニットにアクセスする、特定のリモ
ート・エンティティの許可をそれぞれ表すエントリを含
むアクセス・テーブル、特定の論理ユニットにアクセス
する、特定の制御装置論理ユニットの許可をそれぞれ表
すエントリを含む追加アクセス・テーブル、および前記
指定された制御装置論理ユニットにアクセスする、前記
リモート・エンティティの許可を表すエントリが前記ア
クセス・テーブル内に存在し、前記1つまたは複数の他
の指定された論理ユニットのそれぞれに、前記他の指定
された論理ユニットにアクセスする、前記指定された制
御装置論理ユニットの許可を表すエントリが追加アクセ
ス・テーブル内に存在する場合に限り、リモート・エン
ティティにより要求され、前記要求検出コンポーネント
により検出され、指定された制御装置論理ユニットを対
象とし、1つまたは複数の他の指定された論理ユニット
を含む要求を許可する制御論理(206)を備えるシス
テム。
【0060】7.前記大容量記憶装置(202)が、リ
モート・エンティティからの要求を受け取るポートを含
み、前記制御論理(206)が前記大容量記憶装置内に
ある、上記6に記載のシステム。
【0061】8.論理ユニットまたは制御装置論理ユニ
ットの標示、ポートの標示、およびリモート・エンティ
ティの標示をそれぞれ含むエントリを前記アクセス・テ
ーブルが含む、上記7に記載のシステム。
【0062】9.制御装置論理ユニットの標示、および
論理ユニットの標示をそれぞれ含むエントリを前記追加
アクセス・テーブルが含む、上記7に記載のシステム。
【0063】10.前記大容量記憶装置(202)がデ
ィスク・アレイであり、リモート・エンティティが、通
信媒体を介して前記ディスク・アレイと相互接続された
リモート・コンピュータである、上記7に記載のシステ
ム。
【図面の簡単な説明】
【図1】標準ディスク・ドライブのブロック図である。
【図2】ディスク・アレイの単純なブロック図である。
【符号の説明】
202 ディスク・アレイ 203、204、205 ディスク・ドライブ装置 206 ディスク・アレイ・コントローラ 207 キャッシュ・メモリ 208、209、210、211、212、213、2
14、215 抽象的LUN
───────────────────────────────────────────────────── フロントページの続き (72)発明者 グレゴリー・ディー・ドルカス アメリカ合衆国95602カリフォルニア州オ ーバーン、リバーウッズ・ドライブ 4110 Fターム(参考) 5B017 AA01 BA06 CA07 5B018 GA02 HA35 MA14 5B065 BA01 CA15 CC08 PA11

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 大容量記憶装置により提供される論理ユ
    ニットにリモート・エンティティからアクセスすること
    を許可する方法であって、 特定の論理ユニットにアクセスする、特定のリモート・
    エンティティの許可をそれぞれ表すエントリを含むアク
    セス・テーブルを提供すること、 特定の論理ユニットにアクセスする、特定の制御装置論
    理ユニットの許可をそれぞれ表すエントリを含む追加ア
    クセス・テーブルを提供すること、および指定された制
    御装置論理ユニットを対象として1つまたは複数の他の
    指定された論理ユニットを含む動作の実行をリモート・
    エンティティが要求するときに、 前記指定された制御装置論理ユニットにアクセスする、
    前記リモート・エンティティの許可を表すエントリが前
    記アクセス・テーブル内に現在存在し、前記1つまたは
    複数の他の指定された論理ユニットのそれぞれに、前記
    他の指定された論理ユニットにアクセスする、前記指定
    された制御装置論理ユニットの許可を表すエントリが追
    加アクセス・テーブル内に存在する場合に限って、前記
    動作の実行を求める要求を許可することを含む方法。
JP2001344970A 2000-11-30 2001-11-09 大容量記憶装置により提供される、制御装置lunを介したlunへのアクセスを安全にするシステム Expired - Fee Related JP3992479B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/726,852 2000-11-30
US09/726,852 US20020104008A1 (en) 2000-11-30 2000-11-30 Method and system for securing control-device-lun-mediated access to luns provided by a mass storage device

Publications (3)

Publication Number Publication Date
JP2002202914A true JP2002202914A (ja) 2002-07-19
JP2002202914A5 JP2002202914A5 (ja) 2005-07-07
JP3992479B2 JP3992479B2 (ja) 2007-10-17

Family

ID=24920274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001344970A Expired - Fee Related JP3992479B2 (ja) 2000-11-30 2001-11-09 大容量記憶装置により提供される、制御装置lunを介したlunへのアクセスを安全にするシステム

Country Status (2)

Country Link
US (1) US20020104008A1 (ja)
JP (1) JP3992479B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7743190B2 (en) 2006-10-10 2010-06-22 Hitachi, Ltd. Access right managing method for accessing multiple programs

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003005209A2 (en) * 2001-06-14 2003-01-16 Cable & Wireless Internet Services, Inc. Secured shared storage architecture
AU2002354612A1 (en) 2001-07-09 2003-01-29 Cable And Wireless Internet Services, Inc. Methods and systems for shared storage virtualization
WO2003094513A1 (en) * 2002-04-30 2003-11-13 General Dynamics Advanced Information Systems, Inc. Method and apparatus for in-line serial data encryption
US7343301B1 (en) 2002-08-30 2008-03-11 Signiant, Inc. Method and apparatus for notification of data transfer
US7152108B1 (en) * 2002-08-30 2006-12-19 Signiant Inc. Data transfer system and method with secure mapping of local system access rights to global identities
JPWO2005006175A1 (ja) * 2003-07-10 2006-08-24 富士通株式会社 複数の論理ユニットをグループ化する方法、受信した要求の処理方法、複数の論理ユニットをグループ化する装置及び、受信した要求の処理装置
JP4437650B2 (ja) * 2003-08-25 2010-03-24 株式会社日立製作所 ストレージシステム
JP4257783B2 (ja) 2003-10-23 2009-04-22 株式会社日立製作所 論理分割可能な記憶装置及び記憶装置システム
US7366866B2 (en) 2003-10-30 2008-04-29 Hewlett-Packard Development Company, L.P. Block size allocation in copy operations
US8566446B2 (en) * 2004-01-28 2013-10-22 Hewlett-Packard Development Company, L.P. Write operation control in storage networks
JP4141391B2 (ja) 2004-02-05 2008-08-27 株式会社日立製作所 ストレージサブシステム
JP2005267008A (ja) 2004-03-17 2005-09-29 Hitachi Ltd ストレージ管理方法およびストレージ管理システム
US7526557B2 (en) * 2004-06-30 2009-04-28 Signiant, Inc. System and method for transferring data in high latency firewalled networks
US20060064558A1 (en) * 2004-09-20 2006-03-23 Cochran Robert A Internal mirroring operations in storage networks
US7305530B2 (en) * 2004-11-02 2007-12-04 Hewlett-Packard Development Company, L.P. Copy operations in storage networks
US20060106893A1 (en) * 2004-11-02 2006-05-18 Rodger Daniels Incremental backup operations in storage networks
US7472307B2 (en) * 2004-11-02 2008-12-30 Hewlett-Packard Development Company, L.P. Recovery operations in storage networks
JP4704780B2 (ja) * 2005-03-24 2011-06-22 株式会社日立製作所 計算機システム及び記憶装置とコンピュータ・ソフトウエア並びにストレージ制御における管理者の認証方法
US20060265525A1 (en) * 2005-05-23 2006-11-23 Boyd William T System and method for processor queue to linear block address translation using protection table control based on a protection domain
US7502872B2 (en) * 2005-05-23 2009-03-10 International Bsuiness Machines Corporation Method for out of user space block mode I/O directly between an application instance and an I/O adapter
US7552240B2 (en) 2005-05-23 2009-06-23 International Business Machines Corporation Method for user space operations for direct I/O between an application instance and an I/O adapter
US20070005815A1 (en) * 2005-05-23 2007-01-04 Boyd William T System and method for processing block mode I/O operations using a linear block address translation protection table
US7502871B2 (en) * 2005-05-23 2009-03-10 International Business Machines Corporation Method for query/modification of linear block address table entries for direct I/O
US7464189B2 (en) * 2005-05-23 2008-12-09 International Business Machines Corporation System and method for creation/deletion of linear block address table entries for direct I/O
US20070050587A1 (en) * 2005-08-29 2007-03-01 Sriram Palapudi Providing security for storage units
US7500071B2 (en) * 2005-08-31 2009-03-03 International Business Machines Corporation Method for out of user space I/O with server authentication
US20070168567A1 (en) * 2005-08-31 2007-07-19 Boyd William T System and method for file based I/O directly between an application instance and an I/O adapter
US7657662B2 (en) * 2005-08-31 2010-02-02 International Business Machines Corporation Processing user space operations directly between an application instance and an I/O adapter
US7577761B2 (en) * 2005-08-31 2009-08-18 International Business Machines Corporation Out of user space I/O directly between a host system and a physical adapter using file based linear block address translation
US8930475B1 (en) 2012-03-30 2015-01-06 Signiant Inc. Systems and methods for secure cloud-based media file sharing
US9692799B2 (en) 2012-07-30 2017-06-27 Signiant Inc. System and method for sending and/or receiving digital content based on a delivery specification
US10735516B1 (en) 2019-02-15 2020-08-04 Signiant Inc. Cloud-based authority to enhance point-to-point data transfer with machine learning

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
EP0481735A3 (en) * 1990-10-19 1993-01-13 Array Technology Corporation Address protection circuit
US5975738A (en) * 1997-09-30 1999-11-02 Lsi Logic Corporation Method for detecting failure in redundant controllers using a private LUN
US6119244A (en) * 1998-08-25 2000-09-12 Network Appliance, Inc. Coordinating persistent status information with multiple file servers
US6356979B1 (en) * 1999-05-17 2002-03-12 Compaq Computer Corporation System and method for selectively presenting logical storage units to multiple host operating systems in a networked computing system
US6684209B1 (en) * 2000-01-14 2004-01-27 Hitachi, Ltd. Security method and system for storage subsystem

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7743190B2 (en) 2006-10-10 2010-06-22 Hitachi, Ltd. Access right managing method for accessing multiple programs
US8010725B2 (en) 2006-10-10 2011-08-30 Hitachi, Ltd. Access right managing method for accessing multiple programs
US8145818B2 (en) 2006-10-10 2012-03-27 Hitachi, Ltd. Access right managing method for accessing multiple programs

Also Published As

Publication number Publication date
US20020104008A1 (en) 2002-08-01
JP3992479B2 (ja) 2007-10-17

Similar Documents

Publication Publication Date Title
JP3992479B2 (ja) 大容量記憶装置により提供される、制御装置lunを介したlunへのアクセスを安全にするシステム
JP3837953B2 (ja) 計算機システム
US7584228B1 (en) System and method for duplication of virtual private server files
US6779083B2 (en) Security for logical unit in storage subsystem
US6295575B1 (en) Configuring vectors of logical storage units for data storage partitioning and sharing
US7657727B2 (en) Security for logical unit in storage subsystem
JP5276218B2 (ja) リアルタイムでlunをファイルに、またはファイルをlunに変換すること
US6493825B1 (en) Authentication of a host processor requesting service in a data processing network
US7412544B2 (en) Reconfigurable USB I/O device persona
US20070136554A1 (en) Memory operations in a virtualized system
US6854032B2 (en) System for accessing a region of memory using remote address translation and using a memory window table and a memory region table
CN1432149A (zh) 转换保护表和使用该表验证访问请求的方法
US6032217A (en) Method for reconfiguring containers without shutting down the system and with minimal interruption to on-line processing
US20060020818A1 (en) Disk control unit
US20070094447A1 (en) Storage system and method using interface control devices of different types
US20060195626A1 (en) System and method for host initialization for an adapter that supports virtualization
US20040054866A1 (en) Mapping of hosts to logical storage units and data storage ports in a data processing system
US20060265561A1 (en) System and method for out of user space block mode I/O directly between an application instance and an I/O adapter
US8751547B2 (en) Multiple file system and/or multi-host single instance store techniques
EP1851627A1 (en) Virtual adapter destruction on a physical adapter that supports virtual adapters
JP2006196011A (ja) 変化するサービスレベルを提供するためのキャッシュのセグメント化
US6810396B1 (en) Managed access of a backup storage system coupled to a network
WO2023273803A1 (zh) 一种认证方法、装置和存储系统
US7979656B2 (en) Minimizing configuration changes in a fabric-based data protection solution
US20230029728A1 (en) Per-service storage of attributes

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041027

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041027

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070117

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070330

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070613

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070710

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070724

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100803

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees