(57)【特許請求の範囲】
【請求項１】
複数のデバイスと、
アイデンティティ及びアクセスマネージャ（ＩＡＭ）と、
１人以上のユーザーに関するユーザー識別情報を格納するように構成されているユーザーディレクトリサービスと、
前記１人以上のユーザーに関するユーザー資格情報を格納するように構成されている認証サービスと、を含み、
第１のデバイスにログインするための第１の要求を所定のユーザーから受信する、前記複数のデバイスのうちの前記第１のデバイスに応答して、前記第１のデバイスが、
前記第１のデバイス上の前記所定のユーザーの存在を検証する前に、前記第１のデバイス上の前記所定のユーザーの存在を模倣するために仮想ユーザーを生成することと、
前記所定のユーザーに対応する第２の要求を前記ＩＡＭに送信することであって、前記第２の要求が前記第１のデバイスに対する前記所定のユーザーの存在、及び前記第１のデバイスに対する前記所定のユーザーによる使用の認証の両方の検証の要求を含む、ことと、を行うように構成され、
前記第１のデバイスから前記第２の要求を受信することに応答して、前記ＩＡＭが、
前記所定のユーザーの存在を検証するための第１のクエリを、前記ユーザーディレクトリサービスへ送信することと、
前記所定のユーザーの存在を示す、前記ユーザーディレクトリサービスからのインディケーションを受信することに応答して、前記所定のユーザーが前記第１のデバイスに対して許可されたユーザーであるかどうかを検証するための第２のクエリを、前記認証サービスに送信することと、を行うように構成されている、認証システム。
【請求項２】
前記所定のユーザーが前記第１のデバイスに対して許可されたユーザーであることを示す、前記認証サービスからのインディケーションの受信に応答して、前記ＩＡＭが、前記第１のデバイスに応答を送信するように更に構成されており、前記応答が、ユーザー役割情報と、前記所定のユーザーが前記第１のデバイスに対して許可されたユーザーであるかどうかに関するインディケーションとを含む、請求項１に記載の認証システム。
【請求項３】
前記所定のユーザーが前記第１のデバイスの許可されたユーザーであることを示す、前記ＩＡＭからのインディケーションを受信することに応答して、前記第１のデバイスが、前記ＩＡＭから受信したユーザー役割情報によって決定された特権を有する前記所定のユーザー用に、セッションを作製するように構成されている、請求項１に記載の認証システム。
【請求項４】
前記所定のユーザー用にセッションを作製することが、前記仮想ユーザーを前記所定のユーザーに変換するため、前記仮想ユーザーに関連する情報をアップデートする又は置き換えることを含む、請求項３に記載の認証システム。
【請求項５】
前記複数のデバイスのうちの前記第１のデバイスがストレージアプライアンスであり、前記第１のデバイスが前記所定のユーザーが使用するように構成されていない、請求項１に記載の認証システム。
【請求項６】
前記第１のデバイスがストレージアプライアンスであり、前記第２の要求が、ストレージアプライアンスである第２のデバイスに伝達され、前記第２のデバイスが、前記第１のデバイスから前記第２の要求を受信することに応答して、前記第２のデバイスが、前記ＩＡＭを含む第３のデバイスへ前記第２の要求を転送するように構成されている、請求項１に記載の認証システム。
【請求項７】
複数のデバイスと、
アイデンティティ及びアクセスマネージャ（ＩＡＭ）と、を含み、
第１のデバイスにログインするための第１の要求を所定のユーザーから受信する、前記複数のデバイスのうちの前記第１のデバイスに応答して、前記第１のデバイスが、
前記第１のデバイス上の前記所定のユーザーの存在を検証する前に、前記第１のデバイス上の前記所定のユーザーの存在を模倣するために仮想ユーザーを生成することと、
前記所定のユーザーに対応する第２の要求を前記ＩＡＭに送信することであって、前記第２の要求が前記第１のデバイスに対する前記所定のユーザーの存在、及び前記第１のデバイスに対する前記所定のユーザーによる使用の認証の両方の検証の要求を含む、ことと、を行うように構成され、
前記第１のデバイスがストレージアプライアンスであり、前記第２の要求が、ストレージアプライアンスである第２のデバイスに伝達され、前記第２のデバイスが、前記第１のデバイスから前記第２の要求を受信することに応答して、前記第２のデバイスが、前記ＩＡＭを含む第３のデバイスへ前記第２の要求を転送するように構成されている、認証システム。
【請求項８】
プロセッサで実行するための方法であって、
第１のデバイスで、前記第１のデバイスにログインするための第１の要求を所定のユーザーから受信することと、
前記第１のデバイス上の前記所定のユーザーの存在を検証する前に、前記第１のデバイス上の前記所定のユーザーの存在を模倣するために仮想ユーザーを生成することと、
前記所定のユーザーに対応する第２の要求をアイデンティティ及びアクセスマネージャ（ＩＡＭ）に送信することであって、前記第２の要求が前記第１のデバイスに対する前記所定のユーザーの存在、及び前記第１のデバイスに対する前記所定のユーザーによる使用の認証の両方の検証の要求を含む、ことと、
前記所定のユーザーの存在を検証するために、ユーザーディレクトリサービスに第１のクエリを送信することであって、前記ユーザーディレクトリサービスが、少なくとも、１人以上のユーザーに関するユーザー識別情報を格納する、ことと、
前記所定のユーザーの存在を示す、前記ユーザーディレクトリサービスからのインディケーションを受信することに応答して、前記所定のユーザーが前記第１のデバイスに対して許可されたユーザーであるかどうかを検証するために、認証サービスに第２のクエリを送信することと、を含む、方法。
【請求項９】
前記所定のユーザーが前記第１のデバイスに対して許可されたユーザーであることを示す、前記認証サービスからのインディケーションを受信することに応答して、前記方法が、前記第１のデバイスへ応答を送信する前記ＩＡＭを更に含み、前記応答が、ユーザー役割情報と、前記所定のユーザーが前記第１のデバイスに対して許可されたユーザーであるかどうかに関するインディケーションとを含む、請求項８に記載の方法。
【請求項１０】
前記所定のユーザーが前記第１のデバイスの許可されたユーザーであることを示すインディケーションを、前記ＩＡＭから受信することに応答して、前記第１のデバイスが、前記ＩＡＭから受信したユーザー役割情報によって判定された特権を有する前記所定のユーザー用に、セッションを作製するように構成されている、請求項８に記載の方法。
【請求項１１】
前記所定のユーザー用にセッションを作製することが、前記仮想ユーザーを前記所定のユーザーに変換するため、前記仮想ユーザーに関連する情報をアップデートする又は置き換えることを含む、請求項１０に記載の方法。
【請求項１２】
前記第１のデバイスがストレージアプライアンスであり、前記第１のデバイスが前記所定のユーザーが使用するように構成されていない、請求項８に記載の方法。
【請求項１３】
前記第１のデバイスがストレージアプライアンスであり、前記第２の要求が、ストレージアプライアンスである第２のデバイスに伝達され、前記第２のデバイスが、前記第１のデバイスからの前記第２の要求を受信することに応答して、前記第２のデバイスが、前記ＩＡＭを含む第３のデバイスへ前記第２の要求を転送するように構成されている、請求項８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュアネットワーク通信の分野、より具体的にはコンピューティングデバイスの認証及び設定情報に関する。
【背景技術】
【０００２】
コンピュータメモリストレージ及びデータ帯域幅が増加すると、商業及び産業界で毎日管理されるデータの量及び複雑さも増加する。情報を作製、捕捉、格納、配布、保護、及び消費できるデータ管理操作は、データサイズが拡大するにつれて複雑になる。加えて、企業情報管理で使用される操作などのデータ管理操作は、企業コンプライアンスをもたらす。企業コンプライアンスは、ファイル及びレポートに保持されるデータの精度及び完全性、並びに企業全体での一貫性のあるデータを保証する。これらの操作を提供するため、様々なタイプのストレージデバイスが、企業全体に配置される。ストレージデバイスは、データセンター、リモートオフィス又はブランチオフィス、及び仮想環境で使用され得る。
【０００３】
企業環境及びスモールビジネス環境の両方とも、上記のデータ管理操作を提供するために複数のストレージデバイスを配置し得る。いくつかの実施例では、ストレージデバイスはストレージアプライアンスである。加えて、これらの環境では、デスクトップコンピュータ、ラップトップ、及びサーバなど、複数のコンピューティングデバイスを配置し得る。かかる環境は典型的に、１台又は複数のデバイスにローカルに及び／又はリモートにログインできる複数のユーザーを支持する。これらのユーザーのそれぞれは概して、特権、権限、及び役割を含む設定情報を有する。多くの事例では、このユーザー設定情報は、いくつかのデバイスにわたり、所定のユーザーに関して一貫性があり得る。ほとんどの事例では、システム管理者は、対応するデバイスのそれぞれでユーザー設定情報を手動で設定し、維持する。更に、ユーザー設定情報のいずれのアップデートも、システム管理者が対応するデバイスのそれぞれで同じアップデートを手動で複製する必要がある。
【０００４】
企業環境は典型的に、ユーザーディレクトリサービスを使用して、デバイス上で許可されたユーザーのアイデンティティを管理する。ユーザーディレクトリサービスはまた、ユーザーの設定情報の一部又は全てを管理し得る。デバイスでディレクトリサービスを使用するため、システム管理者は、企業環境内の複数のデバイスのそれぞれを別個に設定する必要がある。したがって、ユーザーディレクトリサービスのプロパティのアップデートなど、ユーザーディレクトリサービスのいずれのアップデートでも、システム管理者は、対応するデバイスのそれぞれに同じアップデートを手動で複製する必要があり得る。複数のデバイスにわたって実行される手動アップデートは、面倒であり、時間もかかり、必要とされる時間量のために頻繁には実行されず、企業環境又はスモールビジネス環境間で一貫性のないユーザーディレクトリサービス設定情報及び／又はユーザー設定情報が提供される場合がある。
【０００５】
上記を考慮して、所定のデバイスのユーザー設定情報を効率的に取得するために改善されたシステム及び方法が所望される。
【発明の概要】
【０００６】
所定のデバイスのユーザー設定情報を効率的に取得するためのシステム及び方法が想到される。様々な実施形態では、複数のデバイスがスモールビジネス環境、大企業環境などの環境内に、ないしは別の方法で配置される。いくつかの実施例では、デバイスはストレージアプライアンスであってよい。様々な実施形態では、ストレージアプライアンスは、作業ストレージシステム又はバックアップストレージシステムとして使用されてよい。これらの環境は、ディレクトリサービス及び認証サービスを含んでよい。いくつかの実施形態では、ディレクトリサービス及び認証サービスのそれぞれは、別個の対応するサーバ上にある。
【０００７】
デバイス間、及びサーバとデバイスとの間の接続としては、ワイヤレス接続、ダイレクトローカルエリアネットワーク（ＬＡＮ）接続、インターネットなどのワイドエリアネットワーク（ＷＡＮ）接続、ルーター、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）ハードウェア及び／又はソフトウェアなどが挙げられ得る。サーバ及び配置されたデバイスの１台以上は、オンサイトでローカルに、又は別のサイト若しくはブランチオフィスでリモートに配置されるか、又はクラウドベースネットワークを介してアクセスされ得る。
【０００８】
配置されたデバイスの１台以上は、ユーザー役割情報、ユーザーの権限及び特権情報、並びに他のユーザー設定情報などのユーザー設定情報を格納しない、実施形態が想到される。加えて、配置されたデバイスの１台以上は、ディレクトリサービス及び認証サービスの１つ以上と通信するために使用される、通信プロトコルの設定情報を格納しない。アイデンティティ及びアクセスマネージャ（ＩＡＭ）は、所定のユーザーが所定のデバイスでのログインセッションを要求したときに、所定のデバイスに対して所定のユーザーを検証するための要求を処理するのに使用される。ＩＡＭは、配置されたデバイスの１台に、ディレクトリサービス又は認証サービスのうちの１つをホストする同じサーバに、又は別個のサーバ若しくは他のコンピューティングデバイスに位置し得る。あるいは、ＩＡＭは、クラウドベースアプリケーションであり得る。
【０００９】
様々な実施形態では、ＩＡＭは、ライトウェイトディレクトリアクセスプロトコル（ＬＤＡＰ）などの通信プロトコルを使用して、ディレクトリサービス及び認証サービスのうちの１つ以上と通信し得る。ログインセッションの試行が成功であるかどうかを示し、成功の判定に関するユーザー設定情報を含む応答が、ＩＡＭから対応する配置されたデバイスに送信される。
【００１０】
これら及びその他の実施形態は、以下の説明及び添付図面の参照によって理解されるであろう。
【図面の簡単な説明】
【００１１】
【図１】デバイス許可アクセスの一実施形態を示す、一般的なブロック図である。
【図２】デバイス許可アクセスの別の実施形態を示す、一般的なブロック図である。
【図３】デバイス上でユーザーのログインセッションを作製するための方法の一実施形態を示すフローチャートである。
【図４】配置されたデバイスからなるネットワーク内のログイン要求及び応答トラフィックのための方法の一実施形態を示すフローチャートである。
【図５】デバイス配置の一実施形態を示す、一般的なブロック図である。
【図６】デバイス配置の別の実施形態を示す、一般的なブロック図である。
【図７】デバイス配置の更に別の実施形態を示す、一般的なブロック図である。
【００１２】
本発明は、様々な修正及び代替的な形態が可能であるが、具体的な実施形態が、図面において、例として示されており、かつ本明細書において詳細に説明される。しかしながら、図面及びその詳細な説明は、本発明を開示される特定の形態に制限することを意図するものではなく、逆に、本発明は、添付の特許請求の範囲で定義されるように、本発明の趣旨及び範囲内に入る全ての修正、同等、及び代替を網羅するものであることを理解されたい。
【発明を実施するための形態】
【００１３】
以下の説明では、数々の具体的な詳細が、本発明の十分な理解をもたらすために記載されている。しかしながら、当業者であれば、本発明がこれらの具体的な詳細なしで実施され得ることを認識するであろう。場合によっては、周知の回路、構造、信号、コンピュータプログラム命令、及び技術は、本発明を不明瞭にすることを避けるため、詳細に示されていない。
【００１４】
図１を参照すると、デバイス許可アクセス１００の一実施形態の一般的なブロック図が示されている。示されている実施形態では、単一デバイス１１０が、サーバ１５０及び１６０に接続されている。しかしながら、様々な他の実施形態では、複数のデバイスがサーバ１５０及び１６０に接続され、１台以上の他のデバイスに接続されている。他の複数のデバイスは、説明を容易にするために示されていない。示されているように、サーバ１５０は、ユーザーディレクトリサービス１５２を含み、ユーザーディレクトリサービス１５２は、ディレクトリサービス１５２とも称され得る。サーバ１６０は、ユーザー認証サービス１６２を含み、ユーザー認証サービス１６２は、認証サービス１６２とも称され得る。いくつかの実施形態では、ディレクトリサービス１５２及び認証サービス１６２のそれぞれは、同じサーバ上で実行する。サーバ１５０及び１６０の１つ以上は、ローカルサーバであってよい。あるいは、サーバ１５０及び１６０の１つ以上は、リモートサーバであってよい。他の実施形態では、ディレクトリサービス１５２及び認証サービス１６２の１つ以上は、クラウドベースのアプリケーションである。
【００１５】
いくつかの実施形態では、デバイス１１０は、ディスクストレージ、バックアップサーバ、ネットワークアタッチトストレージ（ＮＡＳ）デバイス、ストレージエリアネットワーク（ＳＡＮ）デバイス、又はその他などのストレージの一種である。他の実施形態では、デバイス１１０は、バックアップ専用アプライアンス（ＰＢＢＡ）である。ＰＢＢＡは、ストレージアプライアンスとも称され得る。典型的に、ストレージアプライアンスは、ソフトウェアと一緒に販売される、一般的に使用される認定サーバハードウェアに基づくサーバであり、ハードウェア及びソフトウェアは単一の供給メーカーによって提供される。ストレージアプライアンスは、サーバ、データストレージ、オペレーティングシステム、バックアップソフトウェア、及び重複排除ソフトウェアを含み得る。ストレージアプライアンスの一体型アプローチは、相対的に迅速なインストール（配置）時間をもたらし得る。ストレージアプライアンスは、ストレージを提供し、別のアプライアンス又は別のストレージ媒体でのストレージを可能にし、かつ／又は物理システム及び仮想システムの両方の重複排除を提供し得る。
【００１６】
ストレージアプライアンスは典型的に、４テラバイト（ＴＢ）〜５００ＴＢの容量を有するデータストレージを提供する。その結果、ストレージアプライアンスは、テープベースのバックアップ及びリカバリプロセスに置き換わり得る。企業環境及びメインフレーム環境などの他の環境では、ストレージアプライアンスは、テープベースシステムと一緒に配置され得る。ストレージアプライアンスは、クラウドベースストレージに、又は構内ストレージで使用され得る。
【００１７】
サーバ１５０及び１６０への接続としては、ワイヤレス接続、ダイレクトローカルエリアネットワーク（ＬＡＮ）接続、インターネットなどのワイドエリアネットワーク（ＷＡＮ）接続、ルーター、及びその他を含む、種々の技術が挙げられ得る。サーバ１５０及び１６０への接続としては更に、リモートダイレクトメモリアクセス（ＲＤＭＡ）ハードウェア及び／若しくはソフトウェア、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）ハードウェア及び／若しくはソフトウェア、ルーター、中継器、スイッチ、グリッド、並びに／又はその他が挙げられ得る。先に記載されているように、デバイス１１０並びにサーバ１５０及び１６０のそれぞれは、オンサイトに位置してもよく、クラウドベースであってもよい。
【００１８】
デバイス１１０は、少なくともオペレーティングシステム（ＯＳ）１２０、ウェブサービス１３０、シェルサービス１３２、プラガブル認証モジュール（ＰＡＭ）１４０、ネームサービススイッチ（ＮＳＳ）モジュール１４２、及びディレクトリプロトコル設定ファイル１４４などの複数のソフトウェア構成要素を含む。代替の実施形態では、モジュールは、本明細書に記載された機能を実行するようにカスタム設計された回路機構に対応する。あるいは、モジュールは、ハードウェア及びソフトウェアの組み合わせに対応し得る。かかる全ての実施形態が可能であり、想到されている。様々な実施形態では、ＮＳＳモジュール１４２及びＰＡＭ１４０は、ディレクトリサービス１５２と一緒に使用するように特に構成されている。このように、モジュールＰＡＭ１４０及びＮＳＳモジュール１４２のそれぞれは、ディレクトリサービス１５２に関するある程度の知識（例えば、場所、プロトコルなど）を有する必要がある。ＯＳ１２０は、例えば、Ｓｙｍａｎｔｅｃ  Ａｐｐｌｉａｎｃｅ  Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ、Ｌｉｎｕｘ（登録商標）、又はＳｕｎ  Ｓｏｌａｒｉｓなど、種々の特定のオペレーティングシステムのいずれかを表したものであり得る。このように、オペレーティングシステムは、システム管理者などの許可されたユーザーのために、重複排除、自動バックアップ、リカバリ及びシェルセッション、又はウェブベースブラウザセッションの作製など、様々なプログラムの実行を支持するように動作可能なソフトウェアフレームワークを提供するよう、動作可能であり得る。
【００１９】
シェルプロセス１３２は、ＯＳ１２０のサービスにアクセスするためのセキュアシェル（ＳＳＨ）ユーザーインターフェイスを提供する。シェルサービス１３２は、デバイス１１０上のＯＳ１２０及びその他のソフトウェアアプリケーションのサービスに対するコマンドラインインターフェイス（ＣＬＩ）を提供する。ユーザーがセキュアシェル（ＳＳＨ）セッションを開き、許可されたユーザーとして正常にログインすると、認証されたシェルセッション１７２がユーザーに提供される。セッション１７２は、デバイス１１０上のバッチジョブとして固定されたシーケンス内の多数のタスクを反復的に実行する方法を提供するＣＬＩであり得る。バッチジョブが条件付きコードを使用する場合、スクリプティングが言語Ｊａｖａ（登録商標）、Ｐｅｒｌ、Ｐｙｔｈｏｎなどで併用され得る。ＣＬＩコマンドは、ユーザーによって対話式に入力されてもよく、ファイル内のＣＬＩに渡されてもよい。認証されたシェルセッション１７２は、デバイス１１０と共にオンサイトのローカルモニター上に提供され得る。あるいは、認証されたシェルセッション１７２は、ユーザーがデバイス１１０にリモートログインした場合、オフサイトのリモートモニター上に提供され得る。
【００２０】
ウェブサービス１３０は、Ｆｉｒｅｆｏｘ、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ、Ｇｏｏｇｌｅ  Ｃｈｒｏｍｅ、及びＳａｆａｒｉなど、使用可能なインターネットワールドワイドウェブブラウザのいずれか１つであり得る。ウェブサービス１３０は、デバイス１１０上のＯＳ１２０及びその他のソフトウェアアプリケーションのサービスに対するグラフィカルユーザーインターフェイス（ＧＵＩ）を提供するのに使用され得る。ユーザーが特定のウェブページを開き、許可されたユーザーとして正常にログインすると、認証されたブラウザセッション１７０がユーザーに提供される。認証されたブラウザセッション１７０は、デバイス１１０を伴うオンサイトのローカルモニター上に提供され得る。あるいは、認証されたブラウザセッション１７０は、ユーザーがデバイス１１０にリモートログインした場合、オフサイトのリモートモニター上に提供され得る。ＧＵＩ認証されたブラウザセッション１７０は、使い勝手のよいインターフェイスをユーザーに提供し得る。当業者に周知であるように、ＧＵＩ認証されたブラウザセッション１７０は、バッチジョブの送信などの効率的な自動操作シーケンスに対する十分な支持を欠く場合がある。
【００２１】
示されているように、ディレクトリサービス１５２は、サーバ１５０上で実行される。ディレクトリサービス１５２は、所定のネットワーク又は所定の作業環境全体にわたるユーザー、システム、ネットワーク、サービス、及びアプリケーションに関する情報の共有を可能にする。ディレクトリサービス１５２は、作業環境内の所定のユーザーの存在を決定し得る。例えば、ユーザーがデバイス１１０へのログインを試みると、要求がディレクトリサービス１５２に送信されて、所定のユーザーに関連付けられたユーザー名又は他の識別子が検証され得る。ディレクトリサービス１５２は、提供された識別子がデバイス１１０に対して有効なユーザーを識別するかどうかを検証し、対応する応答をデバイス１１０に送信する。
【００２２】
加えて、ディレクトリサービス１５２は、ユーザー役割情報をデバイス１１０に提供し得る。ユーザー役割情報は、システム管理者又は標準ユーザーなどのユーザー役割と、そのユーザーの特権及び権限とを含み得る。ディレクトリサービス１５２は、デバイス１１０に対するユーザーの存在の検証時にユーザー役割情報を提供し得る。あるいは、ディレクトリサービス１５２は、ユーザーが認証サービス１６２によって認証された後の２回目の要求時など、後からユーザー役割情報を提供し得る。ディレクトリサービス１５２の例として、Ｍｉｃｒｏｓｏｆｔ  Ａｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙ、Ｌｉｎｕｘ（登録商標）  Ｎｅｔｗｏｒｋ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｉｃｅ（ＮＩＳ）、Ａｐａｃｈｅ  Ｄｉｒｅｃｔｏｒｙなどが挙げられる。
【００２３】
示されているように、認証サービス１６２は、サーバ１６０上で実行される。他の実施形態では、認証サービスは、ディレクトリサービス１５２と共にサーバ１５０上で実行される。更に他の実施形態では、認証サービス１６２は、ディレクトリサービス１５２に統合される。認証サービス１６２は、デバイス１１０へのログイン試行時に所定のユーザーによって提供されるパスワードなどの資格情報が、所定のユーザーに対して格納されている許可されたパスワードと一致するかどうかを判定する。
【００２４】
いくつかの実施形態では、デバイス１１０上の所定のユーザーの存在が検証された後に、要求が、デバイス１１０から認証サービス１６２に送信されて所定のユーザーが認証される。認証サービス１６２への要求は、デバイス１１０へのログイン要求時に所定のユーザーによって提供されるパスワードの暗号化バージョンを含み得る。デバイス１１０は、セキュアソケットレイヤ（ＳＳＬ）を使用して、認証サービス１６２に要求を送信し得る。いくつかの実施形態では、認証サービス１６２からの応答に示されている所定のユーザーに許可されたアクセスが正常に検証されると、デバイス１１０が、所定のユーザーのユーザー役割情報を取得すること、及び所定のユーザー用にセッションを作製することが可能になる。認証サービス１６２を実行するためのいくつかのサーバ側ウェブアプリケーションフレームワークとしては、Ｍｉｃｒｏｓｏｆｔ  ＡＳＰ．ＮＥＴ、Ｋｅｒｂｅｒｏｓ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｓｅｒｖｉｃｅ、ＳａｆｅＮｅｔ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｓｅｒｖｉｃｅなどが挙げられる。加えて、フレームワークＳｐｒｉｎｇ  Ｓｅｃｕｒｉｔｙは、認証サービス１６２などの企業アプリケーション内の機能を提供するのに使用され得る。
【００２５】
ディレクトリサービス１５２及び認証サービス１６２のそれぞれは、インターネットプロトコル（ＩＰ）ネットワーク上の分散ディレクトリ情報サービスにアクセスし、維持するためのアプリケーションプロトコルに従い得る。しかしながら、アプリケーションプロトコルは、ディレクトリサービスの動作方法を指定しない。かかるプロトコルの一例として、クライアントサーバモデルに基づいた、ライトウェイトディレクトリアクセスプロトコル（ＬＤＡＰ）がある。ＬＤＡＰなどのアプリケーションプロトコルに対するアプリケーションプログラミングインターフェイス（ＡＰＩ）は、ディレクトリサービスアプリケーションの作製を簡略化し得る。
【００２６】
デバイス１１０がディレクトリサービス１５２及び認証サービス１６２のそれぞれを使用するため、デバイス１１０とサーバ１５０及び１６０との両方が、ＬＤＡＰなどのアプリケーションプロトコルを使用するように設定される。アプリケーションプロトコルに対応するライブラリは、サーバ１５０及び１６０にインストールされ得る。ＳＳＬ及びトランスポート層セキュリティ（ＴＬＳ）の１つ以上が、サーバ１５０及び１６０との通信を暗号化するために設定され得る。ディレクトリプロトコル設定ファイル１４４は、サーバ１５０及び１６０にインストールされたライブラリに対する通信プロトコルを定義する設定ファイルである。加えて、ファイル１４４は、サーバ１５０及び１６０の場所、ユーザーの検証のために接触するサーバの優先度、並びに少なくともサーバ１５０及び１６０との通信プロトコルを定義する。ＬＤＡＰの例では、ファイル１４４はｌｄａｐ．ｃｏｎｆｉｇファイルである。
【００２７】
様々な実施形態では、ネームサービススイッチ（ＮＳＳ）モジュール１４２は、サービスが、１つ以上のサーバ上のデータ（例えば、データベース）にアクセスすることを可能にするよう構成されている。ＮＳＳモジュール１４２は、サービス及び対応するデータベースをグループ又はモジュールに編成し得る。例えば、グループとしては、メールエイリアス、ネットワークプロトコル、ホスト名、イーサネット（登録商標）番号、ユーザー名、ユーザーグループ名などが挙げられ得る。それぞれのグループに関して、ＮＳＳモジュール１４２は、優先度に従ってリストされ得る、１つ以上の対応するデータベースを含み得る。ｎｓｓｗｉｔｃｈ．ｃｏｎｆファイルなどの設定ファイルは、それぞれのデータベースの検索プロセスを提供するのに使用され得る。例えば、デバイス１１０へのログインを要求する所定のユーザーに応答して、ＮＳＳモジュール１４２の設定ファイルは、ディレクトリサービス１５２がサーバ１５０上にあることを示し得る。いくつかの実施形態では、ＮＳＳモジュール１４２は、ＯＳ１２０に含まれる。
【００２８】
ＮＳＳモジュール１４２は、所定のユーザーからのログイン要求時に、シェルプロセス１３２又はウェブサービス１３０からユーザー名を受信し得る。ＮＳＳモジュール１４２は、ＮＳＳモジュール１４２の設定ファイルにアクセスなどにより、ディレクトリサービス１５２にアクセスすることを決定し、更にサーバ１５０がディレクトリサービス１５２をホストすることを更に決定し得る。したがって、所定のユーザーがデバイス１１０に対して存在するかどうかを判定するための要求は、サーバ１５０上のディレクトリサービス１５２に送信される。この要求は、少なくとも、所定のユーザーによって提供されるユーザー名を含む。ディレクトリサービス１５２は、所定のユーザーがデバイス１１０に対して存在するかどうかを決定した後に、デバイス１１０へ応答を送信する。所定のユーザーがデバイス１１０のユーザーとして存在することを示すインディケーションの受信に応答して、プラガブル認証モジュール（ＰＡＭ）１４０は、ログイン要求が許可されるかどうかを判定するように通知され得る。
【００２９】
ＰＡＭ１４０は、所定のユーザーが、名乗っているユーザーであることを立証する又は検証する方法を提供する。ＰＡＭ１４０は、認証関連サービス用のモジュールのライブラリを含む、汎用ＡＰＩであるライブラリを含む。ＰＡＭ１４０は、システム管理者が、新規のライブラリをインストールすることによって新規の認証方法を追加することを可能にする。ｐａｍ．ｃｏｎｆファイルなどの設定ファイルは、選択する認証サービスを決定する。
【００３０】
ＰＡＭ１４０は、デバイス１１０へのログインを要求する所定のユーザーが、デバイス１１０に対して存在していることを示すインディケーションを受信すると、ＰＡＭモジュール１４０の設定ファイルにアクセスするなどによって認証サービス１６２にアクセスすることを決定し、サーバ１６０が認証サービス１６２をホストすることを更に決定する。したがって、所定のユーザーがデバイス１１０の使用に対して認証されているかどうかを判定するための要求は、サーバ１６０上の認証サービス１６２に送信される。この要求は、少なくとも、所定のユーザーによって提供されるパスワードの暗号化バージョンを含む。ディレクトリサービス１６２は、所定のユーザーがデバイス１１０に対して認証されたユーザーであるかどうかを判定した後に、デバイス１１０へ応答を送信する。所定のユーザーがデバイス１１０に対して許可されていることを示すインディケーションの受信に応答して、デバイス１１０は、格納されたユーザー役割情報を使用して所定のユーザー用のログインセッションを作製し得る。
【００３１】
先に記載されているように、単一のデバイス１１０が示されているが、複数のデバイスがディレクトリサービス１５２及び認証サービス１６２を使用し得る。例えば、数百台のデバイスが配置され、ディレクトリサービス１５２及び認証サービス１６２を使用するように構成されている場合がある。数百台のデバイスのそれぞれでのディレクトリプロトコル設定ファイル１４４のアップデートは、システム管理者によって手動で追加され、維持され得る。加えて、所定のユーザーのユーザー役割、特権、及び権限は、数百台のデバイスにわたって複製され得る。ユーザー役割並びに／又はディレクトリサービス１５２及び認証サービス１６２をホストするサーバ１５０及び１６０は、数百台のデバイスのうちの適切なデバイスで手動によりアップデートされる。この情報全ての手動メンテナンスは、システム管理者にとって非効率的であり、面倒であり得る。
【００３２】
他の実施形態では、１２台などのより少数のデバイスは、認証サービス１６２を使用し得る。ディレクトリサービス１５２は、かかるスモールビジネス環境では使用され得ない。システム管理者は、ローカルユーザーを作製することができ、それぞれのデバイスで対応する役割、特権、及び権限を付与する。ユーザー役割並びに／又はディレクトリサービス１５２及び認証サービス１６２をホストするサーバ１５０及び１６０に対する変更は、適切なデバイス間でなお手動によりアップデートされ得る。
【００３３】
ここで図２を参照すると、デバイス許可アクセス２００の別の実施形態の一般的なブロック図が示されている。先に記載されている回路機構及び論理は、同様に採番される。様々な実施形態では、デバイス２１０は、先に記載されているデバイス１１０と同様に、バックアップ専用アプライアンス（ＰＢＢＡ）であり得る。ＰＢＢＡは、ストレージアプライアンスとも称され得る。デバイス２１０は、オペレーティングシステム１２０、ウェブサービス１３０、及びシェルサービス１３２を含む。ここで、デバイス２１０は、ｌｄａｐ．ｃｏｎｆｉｇファイルなどのディレクトリプロトコル設定ファイル１４４を含まない。様々な実施形態では、ディレクトリサービス１５２のタイプ及び認証サービス１６２のタイプを認識せず、ましてや、デバイス２１０は、ディレクトリサービス１５２及び認証サービス１６２との通信に使用するプロトコルの特定のタイプを認識することはできない。サーバ１５０及び１６０のそれぞれはなお、ＬＤＡＰなどのアプリケーションプロトコルを使用するように構成されているが、デバイス２１０はもはや使用しない。また、デバイス２１０は、ユーザー役割情報などのいずれのユーザー設定データも格納し得ない。デバイス２１０はまた、ユーザー特権及び権限情報を格納し得ない。
【００３４】
示されているように、デバイス２１０は、ネームサービススイッチ（ＮＳＳ）２４２を含む。ＮＳＳ１４２に関する前出の説明と同様に、ＮＳＳ２４２は、サービス及び対応するデータベースをグループに編成する。それぞれのグループに関して、ＮＳＳモジュール１４２は、優先度に従ってリストされる、複数の対応するデータベースを含み得る。ｎｓｓｗｉｔｃｈ．ｃｏｎｆファイルなどの設定ファイルは、それぞれのデータベースの検索プロセスを提供する。前出のＮＳＳ１４２とは異なり、ＮＳＳ２４２は、ＬＤＡＰプロトコルなど、分散型ディレクトリ情報サービスにアクセスして維持するためのいずれの特定のアプリケーションプロトコルも設定され得ない。
【００３５】
ＮＳＳ２４２が、所定のユーザーがデバイス２１０へのログインセッションを要求することを示す、ウェブサービス１３０又はシェルサービス１３２からのインディケーションを受信すると、ＮＳＳ２４２は、所定のユーザーの存在を模倣するため、一時（仮想）ユーザーを作製し得る。様々な実施形態では、所定のユーザーの存在を模倣することで、所定のユーザーが既に（以前に）デバイスを使用するように設定されたように装う。デバイスを使用するようにユーザーを設定することは、概して、ユーザーに関する詳細をデバイスに格納することを含む。しかしながら、様々な実施形態では、デバイスに格納された所定のユーザーに関する特定情報は存在しない。かかる実施形態では、デバイスは、ユーザーに関する知識を有しない。事実上、デバイスは、所定のユーザーによるログインを、完全に既知の個人によって試行されたログインとして知覚し得る。いくつかの実施形態では、セッション後にデバイスに残されたユーザーの痕跡（例えば、ログファイルなど）が存在する可能性がある。しかしながら、かかる痕跡は、デバイス上のユーザーの設定の存在を検証する目的には使用できない。
【００３６】
仮想ユーザーを作製することにより、デバイスは（事実上）、ユーザーがデバイスに対して既知であり、以前にデバイスを使用するように設定されていた「ふりをする」。例えば、ＮＳＳ２４２は、複数のフィールドを有するデータ構造を作製し得る。フィールドは、例えば、ユーザー識別子（ＩＤ）、グループＩＤ、ユーザー名、ユーザーホームディレクトリ、デフォルトシェルタイプなどの情報を格納し得る。特定のフィールドはまた、ユーザーがデバイス２１０に対して存在するかどうかを示し得る。これらのフィールドのほとんどは、ディレクトリサービス１５２と接触するまで不明である。しかしながら、ＮＳＳ２４２は、ログイン要求時に特定のユーザーによって提供されるユーザー名を格納し得る。加えて、ＮＳＳ２４２は、ディレクトリサービス１５２との通信がまだ実行されておらず、データ構造内のフィールドの大半が有効なデータで埋められていなくとも、所定のユーザーがデバイス２１０に対して存在することを示すインディケーションを格納し得る。
【００３７】
ＮＳＳ２４２は、ディレクトリサービス１５２がまだアクセスされていなくとも、所定のユーザーがデバイス２１０に対して存在することを示す通知をＰＡＭ２４０に送信し得る。ＰＡＭ１４０に関する前出の説明と同様に、ＰＡＭ２４０は、デバイス２１０へのログインを要求するユーザーを認証する。ｐａｍ．ｃｏｎｆファイルなどの設定ファイルは、選択する認証サービスを決定する。前出のＰＡＭ１４０とは異なり、ＰＡＭ２４０は、ＬＤＡＰプロトコルなど、分散型ディレクトリ情報サービスにアクセスして維持するためのいずれの特定のアプリケーションプロトコルも構成され得ない。ディレクトリサービス１５２はまだアクセスされていないが、所定のユーザーがデバイス２１０に対して存在することを示す、ＮＳＳ２４２からの通知に応答して、ＰＡＭ２４０は、アイデンティティ及びアクセスマネージャ（ＩＡＭ）２５０に送信する要求又はトランザクションを生成し得る。この要求は、デバイス２１０に対する所定のユーザーの存在のそれぞれを示し得、所定のユーザーに対する認証が要求される。しかしながら、要求は、ＬＤＡＰプロトコルなどの分散ディレクトリ情報サービスにアクセスして維持するための、いずれの特定のアプリケーションプロトコルも使用し得ない。図１に示されている従来技術のモジュールＰＡＭ１４０及びＮＳＳ１４２とは対照的に、図２のモジュール２４０及び２４２は、概して、ディレクトリサービス１５２に関する特定の知識を有しない。むしろ、モジュール２４０及び２４２のそれぞれは、従来技術のモジュールよりも汎用的であり、ディレクトリサービス１５２と連携する及び／又はそれに一致するように特異的に構成されている必要はない。
【００３８】
ＩＡＭ２５０は、ＰＡＭ２４０から要求を受信する。様々な実施形態では、ＩＡＭ２５０は、クラウドベースアプリケーションである。他の実施形態では、ＩＡＭ２５０は、デバイス２１０内又はオンサイトに位置する別のデバイス（図示なし）内の別個の構成要素として、ＰＡＭ２４０内など、ローカルに実行される。あるいは、ＩＡＭ２５０は、ダイレクトローカルアリアネットワーク（ＬＡＮ）接続、インターネットなどのワイドエリアネットワーク（ＷＡＮ）接続、ルーター、及びその他を介してデバイス２１０に接続されている、別のストレージアプライアンスなどの別のデバイス上で実行される。更に他の実施形態では、ＩＡＭ２５０は、サーバ１５０及び１６０のうちの１つで実行される。
【００３９】
ＩＡＭ２５０がＰＡＭ２４０から要求を受信すると、ＩＡＭ２５０は、少なくとも、所定のユーザーからのログイン要求時に使用されるユーザー名を受信し得る。前出のＮＳＳモジュール１４２に関する前出の説明と同様に、ＩＡＭ２５０は、ＩＡＭ２５０の対応する設定ファイルにアクセスするなどにより、ディレクトリサービス１５２にアクセスすることを決定し、サーバ１５０がディレクトリサービス１５２をホストすることを更に決定し得る。加えて、ＩＡＭ２５０は、ＬＤＡＰプロトコルなど、ディレクトリサービス１５２で使用するためのプロトコルのタイプを決定する。デバイス２１０内のＰＡＭ２４０及びＮＳＳ２４２のそれぞれは、プロトコルのタイプを認識し得ず、一方、ＩＡＭ２５０はプロトコルを認識し、かつ、ディレクトリサービス１５２と通信するためにプロトコルを使用する。加えて、ＩＡＭ２５０は、ディレクトリサービス１５２及び認証サービス１６２の１つ以上との通信時に、フレームワークＳｐｒｉｎｇ  Ｓｅｃｕｒｉｔｙを使用し得る。
【００４０】
少なくとも、所定のユーザーによって提供されるユーザー名を含む、ＩＡＭ２５０からの要求を受信した後、ディレクトリサービス１５２は、要求を処理し、ＩＡＭ２５０に応答を返す。応答は、所定のユーザーがデバイス２１０に対して存在するかどうかを示す。ＩＡＭ２５０は、認証関連サービスのモジュールのライブラリを含み得る。ＩＡＭ２５０は、システム管理者が、新規のライブラリをインストールすることによって新規の認証方法を追加することを可能にし得る。また、ＩＡＭ２５０は、システム管理者が、異なるデバイスに対する複数の認証関連サービスを設定することを可能にし得、特定のサービスの選択は、少なくとも認証要求のソースに基づく。単一デバイス２１０が表示されているが、複数のデバイスがＩＡＭ２５０と通信し得る。これらの複数のデバイスは、説明を分かりやすくするため、表示されていない。ＩＡＭ２５０の設定ファイルは、モジュールのライブラリを指し得る。あるいは、設定ファイルは、モジュールのライブラリを読み、特定のディレクトリサービス及び特定の認証サービスを選択すると同時にそれらの場所を識別し、選択したディレクトリサービス及び選択した認証サービスとの通信に使用する適切な通信プロトコルを決定する、選択論理を含み得る。
【００４１】
ＩＡＭ２５０は、デバイス２１０へのログインを要求する所定のユーザーがデバイス２１０に対して存在しないことを示すインディケーションを、ディレクトリサービス１５２から受信すると、デバイス２１０に送信する応答を準備し得る。応答は、所定のユーザーがデバイス２１０に対して存在しないことを示すインディケーションを含み得る。ＩＡＭ２５０は、所定のユーザーに関するいずれのユーザー役割情報も特権及び権限情報も収集し得ない。この情報は、サーバ１５０に格納され、ディレクトリサービス１５２によってアクセスされ得る。
【００４２】
ＩＡＭ２５０は、デバイス２１０へのログインを要求する所定のユーザーがデバイス２１０に対して存在しないことを示すインディケーションを、ディレクトリサービス１５２から受信すると、サーバ１６０上でホストされる認証サービス１６２にアクセスすることを決定する。設定ファイル、モジュールのライブラリ、及び選択論理の１つ以上を使用して、この決定が実行され得る。所定のユーザーがデバイス２１０の認証されたユーザーであるかどうかを判定するための要求は、ＬＤＡＰなど又はその他の通信プロトコルを使用して、ＩＡＭ２５０からサーバ１６０上の認証サービス１６２へ送信される。この要求は、少なくとも、所定のユーザーによって提供されるパスワードの暗号化バージョンを含む。いくつかのケースでは、デバイス２１０は相対的にスモールビジネス環境内で使用されるため、別個のディレクトリサービスは使用されない。例えば、１０台以下のデバイスは、スモールビジネス環境内で使用され、ＩＡＭ２５０にアクセスし得る。所定のユーザーがスモールビジネス環境内の特定のデバイスに対して存在するかどうかの判定を行うのに、別個のディレクトリサービスを使用するよりもむしろ、ＩＡＭ２５０がそれを決定し得る。
【００４３】
認証サービス１６２は、所定のユーザーがデバイス２１０に対して認証されたユーザーであるかどうかを判定した後に、ＩＡＭ２５０へ応答を送信する。ＩＡＭ２５０は、デバイス２１０へ送信する応答を準備する。応答は、所定のユーザーがデバイス２１０に対して認証されたユーザーであるかどうかを示すインディケーションを含む。インディケーションが、所定のユーザーがデバイス２１０の認証されたユーザーであることを示している場合、ＩＡＭ２５０は、所定のユーザーの任意のユーザー役割情報並びにユーザー特権及び権限情報を取得することができる。この情報は、サーバ１５０に格納され、ディレクトリサービス１５２によってアクセスされ得、ユーザーディレクトリ検索に応答して返されることになる。あるいは、この情報は、サーバ１６０に格納され、認証サービス１６２によってアクセスされ得る。更に、この情報は他の場所に格納され得るが、ＩＡＭ２５０は、この情報の場所を決定することができる。ＩＡＭ２５０は、少なくとも所定のユーザーを識別する要求を送信し、宛先の場所に対して任意の適切な通信プロトコルを使用することによって、この情報を取得する。
【００４４】
ＩＡＭ２５０がデバイス２１０に応答を送信する際、ディレクトリサービス１５２及び認証サービス１６２の１つ以上に使用される、ＬＤＡＰなどの前出の通信プロトコルは不要であり、使用されない場合がある。所定のユーザーがデバイス２１０に対して存在すること、及び所定のユーザーがデバイス２１０に対して許可されていることの両方を示すインディケーションの受信に応答して、デバイス２１０は、ユーザー役割情報並びにユーザー特権及び権限情報を使用して所定のユーザー用のログインセッションを作製し得る。デバイス２１０用のオペレーティングシステム１２０が、これらの工程を実行し得る。加えて、ＮＳＳ２４２によって仮想ユーザー用に作製されたデータ構造は、仮想ユーザーを所定のユーザーに変換するため、所定のユーザーに対応する情報を使用してそのフィールドがアップデートされ又は修正され得る。あるいは、仮想ユーザー情報は、所定のユーザーによって破棄され、置き換えられ得る。先に記載されているように、この情報として、ユーザー識別子（ＩＤ）、グループＩＤ、ユーザー名、ユーザーホームディレクトリ、デフォルトシェルタイプなどが挙げられ得る。
【００４５】
ここで図３を参照すると、デバイス上のユーザー用にログインセッションを作製するための方法３００の実施形態が示されている。考察のために、この実施形態における工程は、連続的な順序で示されている。しかしながら、一部の工程は、示されている順序とは異なる順序で行われ得、一部の工程は同時に実行され得、一部の工程は別の実施形態では存在しない場合がある。
【００４６】
ブロック３０２では、所定のユーザーがデバイスでのログインを試行する。いくつかの実施形態では、デバイスはストレージアプライアンスである。デバイスは、スモールビジネス環境又は企業環境のいずれかにおいて複数の他のデバイスと一緒に配置され得る。ブロック３０４では、仮想ユーザーは、デバイス上の所定のユーザーの存在を模倣するために生成され得る。例えば、複数のフィールドを有するデータ構造が作製され得る。フィールドは、例えば、ユーザー識別子（ＩＤ）、グループＩＤ、ユーザー名、ユーザーホームディレクトリ、デフォルトシェルタイプなどの情報を格納し得る。特定のフィールドはまた、ユーザーがデバイスに対して存在するかどうかを示し得る。これらのフィールドの１つ以上が埋められていなくとも、検証はまだ実行されていないが、ユーザーがデバイスに対して存在することを示すインディケーションは設定され得る。
【００４７】
ブロック３０６では、所定のユーザーに対する認証の要求が送信される。要求は、ＬＤＡＰなど又はその他の認証サービスに既定の通信プロトコルを使用し得ない。ブロック３０８では、デバイスの外部のサービスが要求を受信する。デバイスに対する所定のユーザーの存在の検証が実行される。いくつかの実施形態では、先に記載されているＩＡＭ２５０などの構成要素又はユニット内の論理が検証を実行する。他の実施形態では、先に記載されているディレクトリサービス１５２などの別個のディレクトリサービスを使用して、検証が実行される。いずれの事例でも、デバイスは、特定のディレクトリサービス及び特定のディレクトリサービスの通信プロトコル用に設定され得ない。
【００４８】
所定のユーザーがデバイスに対して存在しないことが判定された場合（条件ブロック３１０）、ブロック３１２では、所定のユーザーが存在せず、他の資格情報が必要とされることを示す通知が生成される。ブロック３１４では、通知に応答して、所定のユーザーのログインが拒否される。他の資格情報に対する要求が生成され、提供され得る。所定のユーザーがデバイスに対して存在しないことが判定された場合（条件ブロック３１０）、所定のユーザーの資格情報が有効であるかどうかが判定される。例えば、ログイン要求時に所定のユーザーによって提供されたパスワードは、所定のユーザー用に格納されたパスワードと比較され得る。
【００４９】
認証に使用される通信は、パスワードの暗号化バージョンを使用し得る。認証プロセスは、特定のサーバでホストされる認証サービスを使用し得る。認証サービスに対応する通信プロトコルを使用して、サーバへトランザクションが送信され、サーバからトランザクションが受信される。しかしながら、デバイスは、通信プロトコルを認識し得ず、通信プロトコルに関して格納された設定情報を有し得ない。
【００５０】
所定のユーザーに関する、少なくともパスワードなどの資格情報が無効であり、所定のユーザーがデバイスに対して認証されない場合（条件ブロック３１６）、方法３００の制御フローはブロック３１２に移動する。そうでなければ、ブロック３１８では、所定のユーザーに関するユーザー役割情報、並びにユーザー権限及び特権、並びにその他の設定情報が取得される。デバイスは、この情報のいずれも格納し得ないが、所定のユーザーの対応するログインセッション時に、取得した情報を受信して格納する。ログインセッションが終了すると、所定のユーザーに関して取得された設定情報は削除され得る。
【００５１】
ブロック３２０では、応答が生成され、デバイスに送信される。応答は、所定のユーザーがデバイスに対して存在すること、及び所定のユーザーがデバイスの使用を認証されていることを示すインディケーションを含む。応答はまた、所定のユーザーに対応する、取得された設定情報を含み得る。ブロック３２２では、デバイスは、少なくとも取得された設定情報に基づいて所定のユーザー用のログインセッションを生成する。先に記載されているように、ログインセッションが終了すると、取得された設定情報はもはや格納されない。所定のユーザー用のあらゆる後続のログインセッション時に、上記の工程が繰り返され、対応する設定情報が再び取得される。
【００５２】
ここで図４を参照すると、デバイス上のユーザーにログインセッションを作製するための方法４００の実施形態が示されている。考察のために、この実施形態における工程は、連続的な順序で示されている。しかしながら、一部の工程は、示されている順序とは異なる順序で行われ得、一部の工程は同時に実行され得、一部の工程は別の実施形態では存在しない場合がある。
【００５３】
複数のデバイスがスモールビジネス環境に、又はより大きいエンタープライズ環境に配置される。様々な実施例では、配置されたデバイスはストレージアプライアンスである。デバイスは、ユーザー役割情報、ユーザー権限及び特権及びその他の情報など、ユーザーに関するいずれの設定情報も格納し得ない。加えて、配置されたデバイスは、ディレクトリサービス及び認証サービスに対するいずれの通信プロトコル用にも構成され得ない。
【００５４】
ブロック４０２では、配置されたデバイスのうちの所定のデバイスが、ログイン要求を受信する。所定のデバイスが、ログイン要求を処理する外部サービスに到達する前の最終デバイスでない場合（条件ブロック４０４）、ブロック４０６では、要求が、所定のデバイスによって指定された宛先へ転送される。例えば、別の配置されたデバイスが、宛先として指示され得る。この他のデバイスは、実際には、ログイン要求を処理する外部サービスに到達する前の最終デバイスでない場合がある。その場合、ログイン要求の転送が続行される。所定のデバイスが、ログイン要求を処理する外部サービスに到達する前の最終デバイスである場合（条件ブロック４０４）、ブロック４０８では、ログイン要求が、外部サービスへの１つ以上の生成されたクエリを介して処理される。例えば、ディレクトリサービス及び認証サービスは、先に記載されているように使用され得る。処理時に、アイデンティティ及びアクセスマネージャ（ＩＡＭ）を使用してクエリが生成され、ディレクトリサービス及び認証サービスからの応答が処理される。処理が完了すると、ＩＡＭは対応する応答を所定のデバイスへ送信する。
【００５５】
ログイン要求が所定のデバイスから発信されている場合、ログイン要求を生成した外部ソースは存在しない。この場合には（条件ブロック４１０）、ブロック４１２では、ログイン要求が付与されていることを示す応答に応えて、所定のデバイスでログインセッションを生成するため、外部サービスからの情報を伴う応答が使用される。そうでなければ、所定のデバイスは、対応するユーザーへエラーの通知を生成し、提供する。
【００５６】
所定のデバイス以外の別のデバイスから発信されたログイン要求が所定のデバイスに転送された場合には、外部ソースがログイン要求を生成している。この場合（条件ブロック４１０）、ブロック４１４では、所定のデバイスが、外部サービスからの情報を伴う応答を、所定のデバイスへログイン要求を送信したデバイスに転送する。この他のデバイスは、対応するユーザーからログイン要求を最初に受信したデバイスではない可能性がある。かかる事例では、この他のデバイスはまた、ログイン要求を生成した実際のソースデバイスが、外部サービスからの情報を伴う応答を受信するまで、別のデバイスへ応答を転送する。
【００５７】
図５を参照すると、デバイス配置５００の一実施形態の一般的なブロック図が示されている。先に記載されている回路機構及び論理は、同様に採番される。様々な実施形態では、デバイス５１０〜５４２は、先に記載されているデバイス２１０と同様に、バックアップ専用アプライアンス（ＰＢＢＡ）であり得る。ＰＢＢＡは、ストレージアプライアンスとも称され得る。５台のデバイスが配置５００に表示されているが、配置に使用される他の台数のデバイスも可能であり、想到される。
【００５８】
デバイス５１０〜５４２のうちの１台以上は、ユーザー役割情報、ユーザー権限及び特権情報、並びに他のユーザー設定情報などのいずれのユーザー設定情報も格納し得ない。加えて、デバイス５１０〜５４２のうちの１台以上は、ディレクトリサービス１５２及び認証サービス１６２の１つ以上と通信するために使用される、通信プロトコルのいずれの設定情報も格納し得ない。
【００５９】
表示されているように、デバイス５１０は、ＩＡＭ２５０に接続される唯一のデバイスである。ＩＡＭ２５０は、先に記載されているように、検証目的で使用され得る。先に記載されているように、サーバ１５０及び１６０への接続、並びにデバイス５１０〜５４２間の接続としては、ワイヤレス接続、ダイレクトローカルエリアネットワーク（ＷＡＮ）接続、インターネットなどのワイドエリアネットワーク（ＷＡＮ）接続、ルーター、リモートダイレクトメモリアクセス（ＲＤＭＡ）ハードウェア及び／若しくはソフトウェア、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）ハードウェア及び／若しくはソフトウェア、中継器、スイッチ、グリッド、並びに／又はその他を含む、種々の技術が挙げられ得る。デバイス５１０〜５４２並びにサーバ１５０及び１６０のそれぞれは、オンサイトに位置してもよく、リモートサイト若しくはブランチオフィスに位置してもよく、又はクラウドベースであってもよい。
【００６０】
デバイス５２０、５３０、及び５４０のそれぞれは、デバイス５１０に接続された状態で表示されている。これらの接続は、デバイス５２０〜５４０が、デバイス５１０がユーザーから受信したログイン要求を処理するための要求の宛先であることを示すインディケーションを格納することを示し得る。例えば、デバイス５２０が、デバイス５２０でセッションを作製するためのログイン要求を所定のユーザーから受信すると、デバイス５２０は、デバイス５１０へ送信するための要求を生成する。この生成された要求は、所定のユーザーがデバイス５２０に対して存在するかどうか、及びログイン要求に提供された資格情報が、所定のユーザーがデバイス５２０に対して認証されたユーザーであることを示しているかどうかを要求する。デバイス５１０は、デバイス５２０からの要求を処理するため、先に記載されているようにＩＡＭ２５０と通信する。同様の工程が、デバイス５３０及びデバイス５４０でのログイン要求に対して使用される。
【００６１】
デバイス５４２が、デバイス５４２でセッションを作製するためのログイン要求を、所定のユーザーから受信すると、デバイス５４２は、デバイス５４０へ送信するための要求を生成する。この生成された要求は、所定のユーザーがデバイス５４２に対して存在するかどうか、及びログイン要求に提供された資格情報が、所定のユーザーがデバイス５４２に対して認証されたユーザーであることを示しているかどうかを要求する。デバイス５４０は、デバイス５４２からの要求を受信し、自身が要求の最終宛先でないことを判定し、デバイス５１０が、受信した要求の宛先であることを更に決定し、要求をデバイス５１０へ転送する。デバイス５１０は、デバイス５４２からの要求を処理するため、先に記載されているようにＩＡＭ２５０と通信する。サービス１５２及び１６２からの情報を伴う応答が、デバイス５１０からデバイス５４０へ、及びデバイス５４０からデバイス５４２へ経路指定される。
【００６２】
ここで図６を参照すると、デバイス配置６００の別の実施形態の一般的なブロック図が示されている。先に記載されている回路機構及び論理は、同様に採番される。表示されているように、デバイス５１０〜５４０のそれぞれは、ＩＡＭ２５０に接続される。ＩＡＭ２５０は、先に記載されているように、検証目的で使用され得る。これらの接続は、ＩＡＭ２５０が、ユーザーから受信したログイン要求を処理するための要求の宛先であることを示すインディケーションを、デバイス５１０〜５４０が格納することを示し得る。デバイス５１０〜５４０は、受信したログイン要求を認証するための要求を処理するため、先に記載されているようにＩＡＭ２５０と通信する。サービス１５２及び１６２からの情報を伴う対応する応答が、ＩＡＭ２５０から、デバイス５１０〜５４０のうちの対応するデバイスへ経路指定される。
【００６３】
ここで図７を参照すると、デバイス配置７００の更に別の実施形態の一般的なブロック図が示されている。先に記載されている回路機構及び論理は、同様に採番される。示されているように、デバイス５１０は、ＩＡＭ２５０を含む。ＩＡＭ２５０は、先に記載されているように、検証目的で使用され得る。デバイス５２０〜５４０のそれぞれは、デバイス５１０に接続される。これらの接続は、デバイス５２０〜５４０が、デバイス５１０がユーザーから受信したログイン要求を処理するための要求の宛先であることを示すインディケーションを格納することを示し得る。デバイス５２０〜５４０は、受信したログイン要求を認証するための要求を処理するため、先に記載されているようにデバイス５１０と通信し、デバイス５１０はＩＡＭ２５０と通信する。サービス１５２及び１６２からの情報を伴う対応する応答が、サーバ１５０及び１６０から、デバイス５１０内のＩＡＭ２５０へ、次いでデバイス５２０〜５４０のうちの対応するデバイスへ経路指定される。デバイス５４２に関する要求及び応答の転送には、先に記載されているようにデバイス５４０が使用される。
【００６４】
様々な実施形態では、本明細書に記載されている方法及び機構の１つ以上の部分が、クラウドコンピューティング環境の一部を形成し得る。かかる実施形態では、リソースは、１つ以上の様々なモデルによるサービスとして、インターネットを介して提供され得る。かかるモデルとしては、Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＩａａＳ）、Ｐｌａｔｆｏｒｍ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（Ｐａａｓ）、及びＳｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ（ＳａａＳ）が挙げられ得る。ＩａａＳでは、コンピュータインフラストラクチャがサービスとして提供される。かかる事例では、コンピューティング機器は概してサービスプロバイダが所有し、操作する。ＰａａＳモデルでは、開発者がソフトウェアソリューションを開発するために使用するソフトウェアツール及び基礎となる機器が、サービスとして提供され、サービスプロバイダによってホストされ得る。ＳａａＳは典型的に、オンデマンドのサービスとしての、サービスプロバイダがライセンス発行するソフトウェアを含む。サービスプロバイダは、ソフトウェアをホストする場合も、ソフトウェアを所定の期間、顧客に配置する場合もある。上記のモデルの多様な組み合わせが可能であり、想到される。
【００６５】
上記の実施形態についてかなり詳細に説明してきたが、上記の開示内容を十分理解すれば、多数の変形及び修正が当業者には明らかになるであろう。以下の特許請求の範囲は、かかる全ての変形及び修正を抱持するように解釈されることが意図されている。
【図１】
0006605628.tif 000002
【図２】
0006605628.tif 000003
【図３】
0006605628.tif 000004
【図４】
0006605628.tif 000005
【図５】
0006605628.tif 000006
【図６】
0006605628.tif 000007
【図７】
0006605628.tif 000008