(57)【特許請求の範囲】
【請求項１】
リクエスタ・クライアントにおいて、安全なシステム・アクセスを行うための方法であって、前記リクエスタ・クライアントが、
システム情報データベース内の共有システムに対するエントリを識別するステップであって、前記エントリはホストの識別子、プロトコル、オーナの識別子、および資格証明を含む、ステップと、
前記オーナのオーナ・クライアントにアクセス要求を送るステップと、
前記リクエスタ・クライアントのユーザである要求するユーザによる前記共有システムへのアクセスを前記オーナが認可したことに応答して、前記プロトコルおよび前記資格証明を用いて前記ホストとのセッションを開くステップと
を含む、方法。
【請求項２】
前記リクエスタ・クライアントは、前記要求するユーザに前記資格証明を提供しない、請求項１に記載の方法。
【請求項３】
前記リクエスタ・クライアントは、前記資格証明を保存もキャッシュもしない、請求項１に記載の方法。
【請求項４】
前記資格証明はユーザ名およびパスワードを含む、請求項１に記載の方法。
【請求項５】
前記エントリは、前記共有システムへのアクセスを許可することが認可されたユーザのエスカレーション・リストをさらに含む、請求項１に記載の方法。
【請求項６】
前記オーナが応じられないことに応答して、前記エスカレーション・リスト中の次のユーザのクライアントにアクセス要求を送るステップ
をさらに含む、請求項５に記載の方法。
【請求項７】
前記オーナ・クライアントは前記オーナに、前記要求するユーザによる前記共有システムへのアクセスを認可または拒否するように促す、請求項１に記載の方法。
【請求項８】
前記オーナは、前記システム情報データベース中に前記エントリを生成することによって前記共有システムを登録する、請求項１に記載の方法。
【請求項９】
請求項１から８のいずれか１つに記載の方法の前記ステップをコンピュータに実行させる、コンピュータ・プログラム。
【請求項１０】
プロセッサと、
前記プロセッサに結合されたメモリであって、前記メモリは、前記プロセッサによって実行されると、前記プロセッサに
システム情報データベース中の共有システムに対するエントリを識別させる命令であって、前記エントリはホストの識別子、プロトコル、オーナの識別子、および資格証明を含む、命令、
前記オーナのオーナ・クライアントにアクセス要求を送らせる命令、および
要求するユーザによる前記共有システムへのアクセスを前記オーナが認可したことに応答して、前記プロトコルおよび前記資格証明を用いて前記ホストとのセッションを開かせる命令
を含む、メモリと
を含む、装置。
【請求項１１】
前記装置は、前記要求するユーザに前記資格証明を提供せず、前記装置は、前記資格証明を保存もキャッシュもしない、請求項１０に記載の装置。
【請求項１２】
前記資格証明はユーザ名およびパスワードを含む、請求項１０に記載の装置。
【請求項１３】
前記エントリは、前記共有システムへのアクセスを許可することが認可されたユーザのエスカレーション・リストをさらに含む、請求項１０に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、一般的に改善されたデータ処理装置および方法に関し、より特定的には、資格証明オーナのパスワードを共有することなく、要求するユーザによる安全なシステム・アクセスを行うための装置に関する。
【背景技術】
【０００２】
企業では、仕事または管理あるいはその両方の目的のために、１人またはそれ以上の社員に、システムまたはより一般的にはリソースを割当てる。企業は、１人のオーナにリソースに対するスーパ・ユーザの権限を割当てることがある。スーパ・ユーザまたはオーナは、オーナがそのリソースにアクセスすることを認可する資格証明を保持していてもよい。通常の資格証明は、ユーザ名およびパスワードを含む。ユーザ名は個人用であっても共用であってもよいが、ほとんどの場合において、パスワードは秘密にされるべきであり、スーパ・ユーザ権限オーナのみが知っているものである。
【０００３】
必要なときに、オーナ以外のユーザがリソースへのアクセスを必要とすることがある。オーナがそのユーザの近くにいれば、オーナがユーザ名およびパスワードを入力してユーザがリソースにアクセスできるようにしてもよい。代替的には、スーパ・ユーザ権限のオーナがユーザとパスワードを共有することによって、アクセスを可能にしてもよい。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
たとえばソフトウェア開発など、いくつかの状況においては、ユーザがリソースを散発的に使用する必要があり得る。オーナが常に存在してユーザ・アクセスを可能にできないことがあるため、パスワード共有がしばしば起こり得る。この状況においては、パスワードの保全性が損なわれ、オーナはパスワードを頻繁に変更する必要がある。このことはオーナに、絶え間なく変わるパスワードを常時把握して、要求の厳しい環境においてパスワードの機密性を保護するという負担をもたらす。
【課題を解決するための手段】
【０００５】
例示的な実施形態の１つにおいて、データ処理システムにおいて安全なシステム・アクセスを行うための方法が提供される。この方法は、システム情報データベース内の共有システムに対するエントリを識別するステップを含む。このエントリは、ホストの識別子、プロトコル、オーナの識別子、および資格証明を含む。この方法は、オーナに関連するクライアントにアクセス要求を送るステップと、要求するユーザによる共有システムへのアクセスをオーナが認可したことに応答して、プロトコルおよび資格証明を用いてホストとのセッションを開くステップとをさらに含む。
【０００６】
他の例示的な実施形態において、コンピュータ読取可能プログラムを有するコンピュータ使用可能または読取可能媒体を含むコンピュータ・プログラム製品が提供される。このコンピュータ読取可能プログラムは、コンピューティング・デバイス上で実行されるときに、本方法の例示的な実施形態に関連して以下に概説されるさまざまなオペレーションおよびその組合わせをコンピューティング・デバイスに実行させる。
【０００７】
さらに別の例示的な実施形態において、システム／装置が提供される。このシステム／装置は、１つまたはそれ以上のプロセッサと、その１つまたはそれ以上のプロセッサに結合されたメモリとを含んでもよい。メモリは、１つまたはそれ以上のプロセッサによって実行されるときに、本方法の例示的な実施形態に関連して以下に概説されるさまざまなオペレーションおよびその組合わせを１つまたはそれ以上のプロセッサに実行させる命令を含んでもよい。
【０００８】
本発明のこれらならびにその他の特徴および利点は、以下の本発明の例示的実施形態の詳細な説明に記載されるか、またはその説明に鑑みて通常の当業者に明らかとなるであろう。
【０００９】
本発明ならびにその好ましい使用モードならびにさらなる目的および利点は、添付の図面とともに読まれるときに、以下の例示的な実施形態の詳細な説明を参照することによって最もよく理解されるであろう。
【図面の簡単な説明】
【００１０】
【図１】例示的な実施形態の局面を実現し得る分散型データ処理システムの例を絵で表した図である。
【図２】例示的な実施形態の局面を実現し得るデータ処理システムの例を示すブロック図である。
【図３】例示的な実施形態に従った、パスワード共有を伴わない安全なシステム・アクセスを示す図である。
【図４】例示的な実施形態に従った、パスワード共有を伴わない安全なシステム・アクセスのためのオーナ・クライアントのオペレーションの例を概説する流れ図である。
【図５】例示的な実施形態に従った、パスワード共有を伴わない安全なシステム・アクセスのためのリクエスタ・クライアントのオペレーションの例を概説する流れ図である。
【発明を実施するための形態】
【００１１】
例示的な実施形態は、資格証明オーナのパスワードを共有することなく、要求するユーザによる安全なシステム・アクセスを行うための機構を提供する。データベースは、リソースに対するシステム情報を保存する。リソースに対するスーパ・ユーザ権限のオーナは、そのリソースにアクセスするための資格証明を含むシステム情報をデータベースに与える。ユーザがシステムへのアクセスを望むとき、リクエスタのクライアント・ソフトウェアは、オーナのクライアント・ソフトウェアにアクセス要求を送る。オーナのクライアント・ソフトウェアは、オーナにアクセスを認可または拒否するように促す。オーナがアクセスを認可したことに応答して、オーナのクライアント・ソフトウェアはリクエスタのクライアント・ソフトウェアに認可を返し、次いでリクエスタのクライアント・ソフトウェアはシステム情報データベース中の資格証明を用いてリソースにアクセスする。リクエスタのクライアント・ソフトウェアは、資格証明をキャッシュまたは保存することも、資格証明をユーザに提供することもない。
【００１２】
よってこの例示的な実施形態は、分散型データ処理環境、単一のデータ処理デバイスなどを含む、多くの異なるタイプのデータ処理環境において利用され得る。例示的な実施形態の特定の構成要素および機能の説明に対する状況を提供するために、以下に例示的な実施形態の局面を実現し得る環境の例として、図１および図２を提供する。図１および図２に続く説明は主に分散型データ処理環境に焦点を当てているが、これは単なる例であって、本発明の特徴に関する何らかの限定を記述または暗示することは意図されない。反対に、例示的な実施形態は単一のデータ処理デバイス実現をも含むことが意図される。
【００１３】
ここで、図面、特に図１および図２を参照すると、本発明の例示的な実施形態を実現し得るデータ処理環境の例の図が提供される。図１および図２は単なる例であって、本発明の実施形態の局面を実現し得る環境に関する何らかの限定を主張または暗示することは意図されないことが認識されるべきである。本発明の範囲から逸脱することなく、図示される環境への多くの修正がなされてもよい。
【００１４】
ここで、図面を参照すると、図１は例示的な実施形態の局面を実現し得る分散型データ処理システムの例を絵で表した図である。分散型データ処理システム１００は、例示的な実施形態の局面を実現し得るコンピュータのネットワークを含んでもよい。分散型データ処理システム１００は少なくとも１つのネットワーク１０２を含み、これは分散型データ処理システム１００内でともに接続されたさまざまなデバイスおよびコンピュータ間の通信リンクを提供するために用いられる媒体である。ネットワーク１０２は、たとえばワイヤ、無線通信リンク、または光ファイバ・ケーブルなどの接続を含んでもよい。
【００１５】
示される例において、サーバ１０４およびサーバ１０６は、記憶装置１０８とともにネットワーク１０２に接続される。加えて、クライアント１１０、１１２および１１４もネットワーク１０２に接続される。これらのクライアント１１０、１１２および１１４は、たとえばパーソナル・コンピュータまたはネットワーク・コンピュータなどであってもよい。示される例において、サーバ１０４は、たとえばブート・ファイル、オペレーティング・システム・イメージおよびアプリケーションなどのデータをクライアント１１０、１１２および１１４に与える。クライアント１１０、１１２および１１４は、示される例において、サーバ１０４に対するクライアントである。分散型データ処理システム１００は、図示されない付加的なサーバ、クライアントおよびその他のデバイスを含んでもよい。
【００１６】
示される例において、分散型データ処理システム１００は、ネットワークの世界的コレクションと、互いに通信するために伝送制御プロトコル／インターネット・プロトコル（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ：ＴＣＰ／ＩＰ）のプロトコルの組を用いるゲートウェイとを表すネットワーク１０２を有するインターネットである。インターネットの中心には、主要なノードまたはホスト・コンピュータの間の高速データ通信ラインのバックボーンがあり、それはデータおよびメッセージを送る何千もの商業用、行政用、教育用およびその他のコンピュータ・システムからなっている。むろん、分散型データ処理システム１００は、たとえばイントラネット、ローカル・エリア・ネットワーク（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ：ＬＡＮ）、広域ネットワーク（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ：ＷＡＮ）などの、いくつかの異なるタイプのネットワークを含むように実現されてもよい。上述したとおり、図１は例として意図されており、本発明の異なる実施形態に対するアーキテクチャの限定としては意図されていないため、図１に示される特定の構成要素は、本発明の例示的な実施形態を実現し得る環境に関して限定的であると考えられるべきではない。
【００１７】
サーバ１０４は、たとえば、記憶装置１０８内のデータベース、ハードウェア・リソース、またはサーバ１０４上のソフトウェア・リソースなどのリソースへのアクセスを制御してもよい。たとえばクライアント１１０のユーザは、リソースに対するスーパ・ユーザ権限のオーナであってもよい。たとえばクライアント１１２のユーザは、そのリソースへのアクセスを望んでもよい。よってアクセスを許可するために、クライアント１１０のオーナはクライアント１１２まで移動して資格証明を入力するか、またはクライアント１１２のユーザと資格証明を共有してもよい。
【００１８】
例示的な実施形態に従うと、オーナは、リソースにアクセスするための資格証明を含むシステム情報を保存することによって、そのリソースをシステムとしてシステム情報データベース内に登録してもよい。システム情報データベースは、たとえば記憶装置１０８内に保存されてもよい。クライアント１１２のクライアント・ソフトウェアは、クライアント１１０のオーナに要求を送ってもよい。次いでクライアント１１０のクライアント・ソフトウェアは、オーナにリソースへのアクセスを認可または拒否するように促してもよい。もしオーナがアクセスを認可すれば、クライアント１１０はクライアント１１２に認可を送る。次いでクライアント１１２のクライアント・ソフトウェアは、システム情報データベースからの資格証明を用いて、その資格証明を保存したりキャッシュしたり外部に提供したりすることなく、リソースにアクセスしてもよい。
【００１９】
次に図２を参照すると、例示的な実施形態の局面を実現し得るデータ処理システムの例のブロック図が示される。データ処理システム２００は、たとえば図１におけるクライアント１１０などのコンピュータの例であり、この中に、本発明の例示的な実施形態に対するプロセスを実現するコンピュータ使用可能コードまたは命令が位置していてもよい。
【００２０】
示される例において、データ処理システム２００は、ノース・ブリッジおよびメモリ・コントローラ・ハブ（ｎｏｒｔｈ  ｂｒｉｄｇｅ  ａｎｄ  ｍｅｍｏｒｙ  ｃｏｎｔｒｏｌｌｅｒ  ｈｕｂ：ＮＢ／ＭＣＨ）２０２と、サウス・ブリッジおよび入出力（Ｉ／Ｏ）コントローラ・ハブ（ｓｏｕｔｈ  ｂｒｉｄｇｅ  ａｎｄ  ｉｎｐｕｔ／ｏｕｔｐｕｔ（Ｉ／Ｏ）ｃｏｎｔｒｏｌｌｅｒ  ｈｕｂ：ＳＢ／ＩＣＨ）２０４とを含むハブ・アーキテクチャを用いる。処理ユニット２０６、メイン・メモリ２０８およびグラフィックス・プロセッサ２１０は、ＮＢ／ＭＣＨ２０２に接続される。グラフィックス・プロセッサ２１０は、アクセラレーテッド・グラフィックス・ポート（ａｃｃｅｌｅｒａｔｅｄ  ｇｒａｐｈｉｃｓ  ｐｏｒｔ：ＡＧＰ）を通じてＮＢ／ＭＣＨ２０２に接続されてもよい。
【００２１】
示される例において、ローカル・エリア・ネットワーク（ＬＡＮ）アダプタ２１２がＳＢ／ＩＣＨ２０４に接続する。オーディオ・アダプタ２１６、キーボードおよびマウス・アダプタ２２０、モデム２２２、リード・オンリ・メモリ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ：ＲＯＭ）２２４、ハード・ディスク・ドライブ（ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ：ＨＤＤ）２２６、ＣＤ−ＲＯＭドライブ２３０、ユニバーサル・シリアル・バス（ｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  ｂｕｓ：ＵＳＢ）ポートおよびその他の通信ポート２３２、ならびにＰＣＩ／ＰＣＩｅデバイス２３４は、バス２３８およびバス２４０を通じてＳＢ／ＩＣＨ２０４に接続する。ＰＣＩ／ＰＣＩｅデバイスは、たとえばイーサネット・アダプタ、アドイン・カード、およびノート型コンピュータのためのＰＣカードなどを含んでもよい。ＰＣＩはカード・バス・コントローラを用いるが、ＰＣＩｅは用いない。ＲＯＭ２２４は、たとえばフラッシュ基本入出力システム（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ：ＢＩＯＳ）などであってもよい。
【００２２】
ＨＤＤ２２６およびＣＤ−ＲＯＭドライブ２３０は、バス２４０を通じてＳＢ／ＩＣＨ２０４に接続する。ＨＤＤ２２６およびＣＤ−ＲＯＭドライブ２３０は、たとえばインテグレーテッド・ドライブ・エレクトロニクス（ｉｎｔｅｇｒａｔｅｄ  ｄｒｉｖｅ  ｅｌｅｃｔｒｏｎｉｃｓ：ＩＤＥ）またはシリアル・アドバンスト・テクノロジ・アタッチメント（ｓｅｒｉａｌ  ａｄｖａｎｃｅｄ  ｔｅｃｈｎｏｌｏｇｙ  ａｔｔａｃｈｍｅｎｔ：ＳＡＴＡ）インタフェースなどを使用していてもよい。スーパＩ／Ｏ（Ｓｕｐｅｒ  Ｉ／Ｏ：ＳＩＯ）デバイス２３６がＳＢ／ＩＣＨ２０４に接続されてもよい。
【００２３】
処理ユニット２０６においてオペレーティング・システムが実行される。オペレーティング・システムは、図２におけるデータ処理システム２００内のさまざまな構成要素を調和させてその制御を提供する。クライアントとしてのオペレーティング・システムは、たとえばＭｉｃｒｏｓｏｆｔ（登録商標）Ｗｉｎｄｏｗｓ（登録商標）ＸＰなどの商業的に入手可能なオペレーティング・システムであってもよい（ＭｉｃｒｏｓｏｆｔおよびＷｉｎｄｏｗｓは、米国、その他の国、またはその両方におけるマイクロソフト社（Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎ）の商標である）。Ｊａｖａ（商標）プログラミング・システムなどのオブジェクト指向プログラミング・システムがオペレーティング・システムとともに実行されて、Ｊａｖａ（商標）プログラムまたはデータ処理システム２００において実行されるアプリケーションからオペレーティング・システムへのコールを提供してもよい（Ｊａｖａは、米国、その他の国、またはその両方におけるサン・マイクロシステムズ社（Ｓｕｎ  Ｍｉｃｒｏｓｙｓｔｅｍｓ，Ｉｎｃ．）の商標である）。
【００２４】
サーバとしてのデータ処理システム２００は、たとえばアドバンスト・インタラクティブ・エグゼクティブ（Ａｄｖａｎｃｅｄ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｅｘｅｃｕｔｉｖｅ：ＡＩＸ（ＩＢＭ社の登録商標））オペレーティング・システムまたはＬＩＮＵＸ（登録商標）オペレーティング・システムを実行するＩＢＭ（ＩＢＭ社の登録商標）ｅＳｅｒｖｅｒ（商標）Ｓｙｓｔｅｍ  ｐ（ＩＢＭ社の登録商標）コンピュータ・システムなどであってもよい（ｅＳｅｒｖｅｒ、Ｓｙｓｔｅｍ  ｐおよびＡＩＸは、米国、その他の国、またはその両方におけるインターナショナル・ビジネス・マシーンズ社（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｂｕｓｉｎｅｓｓ  Ｍａｃｈｉｎｅｓ  Ｃｏｒｐｏｒａｔｉｏｎ）の商標であり、ＬＩＮＵＸは、米国、その他の国、またはその両方におけるリーナス・トーバルズ（Ｌｉｎｕｓ  Ｔｏｒｖａｌｄｓ）の商標である）。データ処理システム２００は、処理ユニット２０６に複数のプロセッサを含む対称型マルチプロセッサ（ｓｙｍｍｅｔｒｉｃ  ｍｕｌｔｉｐｒｏｃｅｓｓｏｒ：ＳＭＰ）システムであってもよい。代替的には、単一のプロセッサ・システムが用いられてもよい。
【００２５】
オペレーティング・システムに対する命令、オブジェクト指向プログラミング・システム、およびアプリケーションまたはプログラムは、たとえばＨＤＤ２２６などの記憶装置に位置し、処理ユニット２０６による実行のためにメイン・メモリ２０８にロードされてもよい。本発明の例示的な実施形態に対するプロセスは、たとえばメイン・メモリ２０８、ＲＯＭ２２４などのメモリ、またはたとえば１つもしくはそれ以上の周辺デバイス２２６および２３０などに位置してもよいコンピュータ使用可能プログラム・コードを用いて、処理ユニット２０６によって実行されてもよい。
【００２６】
図２に示されるバス２３８またはバス２４０などのバス・システムは、１つまたはそれ以上のバスを含んでもよい。むろんバス・システムは、ファブリックまたはアーキテクチャに取付けられた異なる構成要素またはデバイス間のデータ伝達を提供するあらゆるタイプの通信ファブリックまたはアーキテクチャを用いて実現されてもよい。図２のモデム２２２またはネットワーク・アダプタ２１２などの通信ユニットは、データを送信および受信するために用いられる１つまたはそれ以上のデバイスを含んでもよい。メモリは、たとえばメイン・メモリ２０８、ＲＯＭ２２４、または図２のＮＢ／ＭＣＨ２０２において見出されるようなキャッシュなどであってもよい。
【００２７】
図１および図２におけるハードウェアは、実施によって異なり得ることを通常の当業者は認識するだろう。図１および図２に示されるハードウェアに加えて、またはその代わりに、他の内部ハードウェアまたは周辺デバイス、たとえばフラッシュ・メモリ、等価の不揮発性メモリ、または光ディスク・ドライブなどが用いられてもよい。加えて、本発明の範囲から逸脱することなく、例示的な実施形態のプロセスを、前述したＳＭＰシステム以外のマルチプロセッサ・データ処理システムに適用してもよい。
【００２８】
さらに、データ処理システム２００は、クライアント・コンピューティング・デバイス、サーバ・コンピューティング・デバイス、タブレット・コンピュータ、ラップトップ・コンピュータ、電話もしくはその他の通信デバイス、または携帯用情報端末（ｐｅｒｓｏｎａｌ  ｄｉｇｉｔａｌ  ａｓｓｉｓｔａｎｔ：ＰＤＡ）などを含むいくつかの異なるデータ処理システムのいずれかの形を取ってもよい。いくつかの例示的な実施例において、データ処理システム２００は、たとえばオペレーティング・システム・ファイルまたはユーザの生成したデータ、あるいはその両方を保存するための不揮発性メモリを提供するためのフラッシュ・メモリとともに構成されたポータブル・コンピューティング・デバイスであってもよい。本質的に、データ処理システム２００は、アーキテクチャの制限なく、あらゆる公知のデータ処理システムまたは将来開発されるデータ処理システムであってもよい。
【００２９】
図３は、例示的な実施形態に従った、パスワード共有を伴わない安全なシステム・アクセスを示す図である。リクエスタ・クライアント３３０およびオーナ・クライアント３４０は、たとえばセキュア・シェル（Ｓｅｃｕｒｅ  Ｓｈｅｌｌ：ＳＳＨ）、テルネット（Ｔｅｌｎｅｔ）、ターミナル・サービス（Ｔｅｒｍｉｎａｌ  Ｓｅｒｖｉｃｅｓ：ＴＳ）などの複数の通信プロトコルを含む。クライアント３３０およびクライアント３４０は、異なるシステム・アクセス機構を実現できるクライアント・コンピュータ上の専用のクライアント・ソフトウェアを含んでもよい。クライアント３３０およびクライアント３４０は、共有システムをブラウズし、共有システムへのアクセスを要求し、共有システムへのアクセスを許可または拒否するプロセスの際に、アクティブであってユーザとやり取りを行ってもよい。実施形態の一例において、クライアント３３０およびクライアント３４０は、Ｓａｍｅｔｉｍｅ（ＩＢＭ社の登録商標）などの企業メッセージング・ツールに組込まれていてもよい。「ＳＡＭＥＴＩＭＥ」は、米国、その他の国、またはその両方におけるインターナショナル・ビジネス・マシーンズ社の商標である。
【００３０】
オーナ・クライアント３４０は、データベース３２０にシステム情報を保存することによって、システムまたはリソースを登録する。システム情報は、たとえばホスト識別子、ホストにアクセスするためのプロトコル、およびシステムにアクセスするための資格証明などを含んでもよい。資格証明は、たとえばユーザ名およびパスワードなどを含んでもよい。加えてシステム情報は、アクセス要求を送るためにリクエスタ・クライアントによって用いられるオーナ識別子を含んでもよい。
【００３１】
クライアント３３０のリクエスタは、システム情報データベース３２０中のシステムをブラウズしてもよい。このシステムはデータベース、サーバ・アプリケーションなどを含んでもよい。リクエスタがアクセスする必要のある共有システムを識別したとき、リクエスタ・クライアント３３０はオーナ・クライアント３４０にアクセス要求を送る。アクセス要求はビジネス・ニーズ（ユーザがそのシステムへのアクセスを望む理由）を含んでもよい。これはアクセス・トラッキングにおいて非常に有用な情報である。次いでクライアント３４０は、オーナにリクエスタに対してアクセスを認可または拒否するように促す。オーナがアクセスを認可したことに応答して、クライアント３４０はクライアント３３０に認可通知またはメッセージを返す。もしオーナがアクセスを拒否すれば、クライアント３４０はクライアント３３０に拒否通知を返す。
【００３２】
認可通知を受取ったことに応答して、クライアント３３０はホストＩＤ、プロトコルおよび資格証明を用いてサーバ３１０のシステムにアクセスする。サーバ３１０は、クライアントと通信できる専用のサーバ・ソフトウェアをサーバ・コンピュータ上に含んでもよい。サーバ３１０は、クライアント３３０、３４０に共有システム・ブラウジング機能および共有システム資格証明を提供してもよい。クライアント３３０は、資格証明をキャッシュまたは保存することも、資格証明を外部に提供することもなしに、サーバ３１０とセッションを開く。つまり、ユーザ名およびパスワードを用いてセッションを開くことは、要求するユーザにとってトランスペアレントである。
【００３３】
実施形態の一例において、システム情報データベース３２０は、オーナが応じられないときに認可を要求できる人のエスカレーション・リストを含む。エスカレーション・リストは、別のオーナ、チーム・リーダ、管理者、第２の管理者などを含んでもよい。よって、クライアント３４０が予め定められた期間内に認可または拒否の結果をもたらさなかったとき、エスカレーション・リストの次の人物にアクセス要求がクライアント３４０から転送されるか、またはクライアント３３０から再送されてもよい。
【００３４】
実施形態の別の例においては、共有システム情報データベース３２０はパスワードを保存しない。ユーザがシステムへのアクセスを要求するとき、サーバ３１０がアクセスして、共有システムに対して要求される権限を有するダミー・ユーザ、たとえばルートまたはｄｂ２ａｄｍなどを生成してもよい。次いでサーバ３１０は、要求するユーザによるアクセスがもはや必要なくなったときに、ダミー・ユーザを削除する。
【００３５】
さらなる実施形態において、共有システム・オーナは、認可された要求するユーザがその中で共有システムを使用してもよいという時間ウィンドウを設定してもよい。クライアント３４０は、この時間ウィンドウをサーバ３１０に通信してもよい。時間ウィンドウの終わりに、サーバ３１０はユーザをシステムから自動的にログアウトしてもよい。サーバ３１０は、オーナの資格証明を用いるクライアント３３０のユーザに対してこの時間ウィンドウを適用してもよいし、要求するユーザのために生成されたダミー・ユーザに対して時間ウィンドウを適用してもよい。
【００３６】
当業者に認識されるとおり、本発明はシステム、方法またはコンピュータ・プログラム製品として実施されてもよい。したがって本発明は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）、またはソフトウェアおよびハードウェアの局面を組合わせた実施形態の形を取ってもよく、本明細書においてこれらはすべて一般的に「回路」、「モジュール」または「システム」と呼ばれることがある。さらに、本発明は、媒体において実施されるコンピュータ使用可能プログラム・コードを有する表現式のあらゆる有形の媒体において実施されるコンピュータ・プログラム製品の形を取ってもよい。
【００３７】
１つまたはそれ以上のコンピュータ使用可能媒体またはコンピュータ読取可能媒体のあらゆる組合わせが使用されてもよい。コンピュータ使用可能媒体またはコンピュータ読取可能媒体は、たとえば電子、磁気、光学、電磁気、赤外、または半導体のシステム、装置、デバイス、または伝搬媒体などであってもよいが、それらに限定されない。コンピュータ読取可能媒体のより特定的な例（非網羅的なリスト）は以下を含み得る。すなわち、１つまたはそれ以上のワイヤを有する電気的接続、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ：ＲＡＭ）、リード・オンリ・メモリ（ＲＯＭ）、消去可能プログラマブル・リード・オンリ・メモリ（ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ：ＥＰＲＯＭまたはフラッシュ・メモリ）、光ファイバ、ポータブル・コンパクト・ディスク・リード・オンリ・メモリ（ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ：ＣＤＲＯＭ）、光学記憶装置、インターネットもしくはイントラネットを支持するものなどの伝送媒体、または磁気記憶装置である。なお、コンピュータ使用可能媒体またはコンピュータ読取可能媒体は、プログラムが印刷された紙または別の好適な媒体であってもよい。なぜなら、紙またはその他の媒体の光学的走査などによってプログラムを電子的に取得し、次いで必要であれば好適な態様で適合、解釈、またはその他の態様で処理して、コンピュータ・メモリに保存することができるからである。この文書の文脈において、コンピュータ使用可能媒体またはコンピュータ読取可能媒体とは、命令実行システム、装置またはデバイスによって、またはそれに関連して使用されるためのプログラムを含有、保存、通信、伝搬、または移送できるあらゆる媒体であってもよい。コンピュータ使用可能媒体は、ベースバンド内に、または搬送波の部分としてともに実施されるコンピュータ使用可能プログラム・コードを有する伝搬データ信号を含んでもよい。コンピュータ使用可能プログラム・コードは、無線、ワイヤライン、光ファイバ・ケーブル、無線周波数（ｒａｄｉｏ  ｆｒｅｑｕｅｎｃｙ：ＲＦ）などを含むがこれらに限定されないあらゆる適切な媒体を用いて伝達されてもよい。
【００３８】
本発明のオペレーションを行うためのコンピュータ・プログラム・コードは、オブジェクト指向プログラミング言語、たとえばＪａｖａ（商標）、Ｓｍａｌｌｔａｌｋ（商標）、Ｃ＋＋など、および従来の手続き型プログラミング言語、たとえば「Ｃ」プログラミング言語または類似のプログラミング言語などを含む、１つまたはそれ以上のプログラミング言語のあらゆる組合わせで書かれていてもよい。プログラム・コードは、すべてがユーザのコンピュータで実行されてもよいし、スタンド・アロン・ソフトウェア・パッケージとして、部分的にユーザのコンピュータで実行されてもよいし、一部がユーザのコンピュータで、一部がリモート・コンピュータで実行されてもよいし、すべてがリモート・コンピュータまたはサーバで実行されてもよい。後者のシナリオにおいて、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を含むあらゆるタイプのネットワークを通じてユーザのコンピュータに接続されてもよいし、（たとえば、インターネット・サービス・プロバイダを用いてインターネットを通じて）外部コンピュータへの接続が行われてもよい。
【００３９】
本発明の例示的な実施形態に従った方法、装置（システム）およびコンピュータ・プログラム製品の流れ図またはブロック図あるいはその両方を参照して、以下に例示的な実施形態を説明する。流れ図またはブロック図あるいはその両方の各ブロック、ならびに流れ図またはブロック図あるいはその両方におけるブロックの組合わせは、コンピュータ・プログラム命令によって実現され得ることが理解されるだろう。これらのコンピュータ・プログラム命令は、汎用コンピュータ、特定目的のコンピュータのプロセッサ、または機械を生産するためのその他のプログラマブル・データ処理装置に与えられることによって、そのコンピュータのプロセッサまたはその他のプログラマブル・データ処理装置を介して実行された命令が、流れ図またはブロック図あるいはその両方の１つまたはそれ以上のブロックにおいて指定された機能／動作を実現するための手段を生成するようにしてもよい。
【００４０】
これらのコンピュータ・プログラム命令は、コンピュータまたはその他のプログラマブル・データ処理装置に特定の態様で機能するよう指示できるコンピュータ読取可能媒体の中に保存されることによって、コンピュータ読取可能媒体中に保存された命令が、流れ図またはブロック図あるいはその両方の１つまたはそれ以上のブロックにおいて指定された機能／動作を実現する命令手段を含む製造品を生成するようにしてもよい。
【００４１】
コンピュータ・プログラム命令は、コンピュータまたはその他のプログラマブル・データ処理装置にロードされることによって、コンピュータに実現されるプロセスを生成するためにコンピュータまたはその他のプログラマブル装置において行われるべき一連の動作ステップをもたらすことにより、コンピュータまたはその他のプログラマブル装置において実行される命令が、流れ図またはブロック図あるいはその両方の１つまたはそれ以上のブロックにおいて指定された機能／動作を実現するためのプロセスを提供するようにしてもよい。
【００４２】
図面中の流れ図およびブロック図は、本発明のさまざまな実施形態に従うシステム、方法およびコンピュータ・プログラム製品の可能な実現のアーキテクチャ、機能およびオペレーションを例示するものである。これに関して、流れ図またはブロック図における各ブロックは、指定された論理機能（単数または複数）を実現するための１つまたはそれ以上の実行可能な命令を含むモジュール、セグメント、またはコードの部分を表していてもよい。さらに、いくつかの代替的な実現においては、ブロック中に示される機能が図面に示される以外の順序で起こることがあることに留意すべきである。たとえば、連続して示される２つのブロックは、伴われる機能に依存して、実際には実質的に同時に実行されてもよいし、それらのブロックがときには逆の順序で実行されてもよい。さらに、ブロック図または流れ図あるいはその両方の各ブロック、およびブロック図または流れ図あるいはその両方のブロックの組合わせは、指定された機能もしくは動作を行う特定目的のハードウェアに基づくシステム、または特定目的のハードウェアとコンピュータ命令との組合わせによって実現できることが注目される。
【００４３】
図４は、例示的な実施形態に従った、パスワード共有を伴わない安全なシステム・アクセスのためのオーナ・クライアントのオペレーションの例を概説する流れ図である。オペレーションが始まると、システム・オーナはシステム情報データベースに共有システムを登録する（ブロック４０２）。オーナ・クライアントは、終了状態が存在するかどうかを判定する（ブロック４０４）。たとえば、オーナ・クライアントが動作を停止するか、またはオーナがシステムの共有をやめるときには、終了状態が存在し得る。終了状態が存在すれば、オペレーションは終了する。
【００４４】
ブロック４０４において終了状態が存在しなければ、オーナ・クライアントはアクセス要求を受取ったかどうかを判定する（ブロック４０６）。アクセス要求を受取っていなければ、オペレーションはブロック４０４に戻って、終了状態が存在するかどうかを判定する。ブロック４０６においてオーナ・クライアントがアクセス要求を受取れば、オーナ・クライアントはオーナに、リクエスタによる共有システムへのアクセスを認可または拒否するように促す（ブロック４０８）。次いでオーナ・クライアントは、オーナがリクエスタによる共有システムへのアクセスを認可したか拒否したかを判定する（ブロック４１０）。
【００４５】
オーナが共有システムへのアクセスを認可するとき、オーナ・クライアントは要求するクライアントに認可通知を返す（ブロック４１２）。次いでオペレーションはブロック４０４に戻り、終了状態が存在するかどうかを判定する。ブロック４１０においてオーナが共有システムへのアクセスを拒否するとき、オーナ・クライアントはリクエスタに拒否通知を返し（ブロック４１４）、オペレーションはブロック４０４に戻って終了状態が存在するかどうかを判定する。
【００４６】
図５は、例示的な実施形態に従った、パスワード共有を伴わない安全なシステム・アクセスのためのリクエスタ・クライアントのオペレーションの例を概説する流れ図である。オペレーションが始まると、ユーザはシステム情報データベースに登録された共有システムをブラウズする（ブロック５０２）。ユーザが共有システムをブラウズするとき、リクエスタ・クライアントは、ユーザ名およびパスワードなどの資格証明情報を秘密にする。ユーザがアクセスを希望する共有システムを見出したとき、リクエスタ・クライアントはオーナ・クライアントにアクセス要求を送る（ブロック５０４）。
【００４７】
次いでリクエスタ・クライアントは、オーナが応じられるかどうかを判定する（ブロック５０６）。リクエスタ・クライアントは、オーナ・クライアントが利用不可通知を返したかどうかを判定するか、またはタイムアウト機構を用いることによって、この判定を行ってもよい。オーナが応じられないとき、リクエスタ・クライアントは、アクセス要求が送られたオーナが、共有リソースへのアクセスを許可することが認可されたユーザのエスカレーション・リストにおいて最後のオーナかどうかを判定する（ブロック５０８）。たとえば、スーパ・ユーザ権限のオーナは、他のユーザの部分集合に対して、共有リソースへのアクセスを許可することに対する許可を与えてもよい。次いでオーナは、これらのユーザをシステム情報データベース中のエスカレーション・リストに列挙してもよい。これらのユーザは、チーム・リーダ、管理者、第２の管理者などを含んでもよい。
【００４８】
ブロック５０８において、オーナが、共有リソースへのアクセスを許可することが認可された最後のユーザではないとき、リクエスタ・クライアントはエスカレーション・リストの次の人物にアクセス要求を送り（ブロック５１０）、オペレーションはブロック５０６に戻って、次の人物（オーナ）が応じられるかどうかを判定する。ブロック５０８において、現在のオーナがエスカレーション・リストの最後のオーナであれば、リクエスタ・クライアントは要求するユーザに拒否通知を表示し（ブロック５１２）、オペレーションは終了する。
【００４９】
ブロック５０６においてオーナが応じられれば、リクエスタ・クライアントはオーナ・クライアントが認可通知を返したか拒否通知を返したかを判定する（ブロック５１４）。オーナ・クライアントが拒否通知を返したとき、オペレーションはブロック５１２に進んで、ユーザに拒否通知を表示する。その後、オペレーションは終了する。ブロック５１４において、オーナ・クライアントが認可通知を返したことをリクエスタ・クライアントが判定するとき、次いでリクエスタ・クライアントはシステム情報および資格証明を用いて、ホストとのセッションを開く（ブロック５１６）。その後、オペレーションは終了する。
【００５０】
よって例示的な実施形態は、資格証明オーナのパスワードを共有することなく、要求するユーザによる安全なシステム・アクセスを行うための機構を提供する。データベースは、リソースに対するシステム情報を保存する。リソースに対するスーパ・ユーザ権限のオーナは、そのリソースにアクセスするための資格証明を含むシステム情報をデータベースに与える。ユーザがシステムへのアクセスを望むとき、リクエスタのクライアント・ソフトウェアは、オーナのクライアント・ソフトウェアにアクセス要求を送る。オーナのクライアント・ソフトウェアは、オーナにアクセスを認可または拒否するように促す。オーナがアクセスを認可したことに応答して、オーナのクライアント・ソフトウェアはリクエスタのクライアント・ソフトウェアに認可を返し、次いでリクエスタのクライアント・ソフトウェアはシステム情報データベース中の資格証明を用いてリソースにアクセスする。リクエスタのクライアント・ソフトウェアは、資格証明をキャッシュまたは保存することも、資格証明をユーザに提供することもない。よってパスワードは共有されない。アクセスは、すべてのアクセスを追跡する可能性を伴って、セッションごとの態様で制御される。さらに、オーナは、共有システムまたはリソースへのアクセスを提供するために要求するユーザの近くに物理的に位置する必要がない。
【００５１】
上記のとおり、例示的な実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、またはハードウェアおよびソフトウェア構成要素を両方とも含む実施形態の形を取ってもよいことが認識されるべきである。実施形態の一例において、例示的な実施形態の機構は、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むがこれらに限定されないソフトウェアまたはプログラム・コードにおいて実現される。
【００５２】
プログラム・コードの保存または実行あるいはその両方を行うために好適なデータ処理システムは、システム・バスを通じてメモリ素子に直接的または間接的に結合された少なくとも１つのプロセッサを含む。メモリ素子は、プログラム・コードを実際に実行する際に用いられるローカル・メモリ、バルク記憶装置、および実行中にバルク記憶装置からコードを検索しなければならない回数を減らすために、少なくとも何らかのプログラム・コードの一時的記憶装置を提供するキャッシュ・メモリを含んでもよい。
【００５３】
（キーボード、ディスプレイ、ポインティング・デバイスなどを含むがこれらに限定されない）入出力またはＩ／Ｏデバイスは、直接的に、または介在するＩ／Ｏコントローラを通じて、システムに結合されてもよい。さらにネットワーク・アダプタがシステムに結合されることによって、データ処理システムが、介在するプライベートまたはパブリック・ネットワークを通じて他のデータ処理システムまたはリモート・プリンタまたは記憶装置に結合されることを可能にしてもよい。モデム、ケーブル・モデムおよびイーサネット・カードは、現在利用可能なネットワーク・アダプタのタイプのうちのほんのいくつかである。
【００５４】
本発明の説明は例示および説明の目的のために提供されたものであって、開示される形の発明に対して網羅的または限定的になることは意図されていない。通常の当業者には多くの修正形および変形が明らかになるだろう。実施形態は、本発明の原理、実際の適用を最もよく説明し、他の通常の当業者が、予期される特定の使用に対して好適であるようなさまざまな修正を伴うさまざまな実施形態に対して本発明を理解できるようにするために選択され説明されたものである。
【図１】
0005497065.tif 000002
【図２】
0005497065.tif 000003
【図３】
0005497065.tif 000004
【図４】
0005497065.tif 000005
【図５】
0005497065.tif 000006