JP2022054500A - Information processing program, information processing method, information processing device, and information processing system - Google Patents
Information processing program, information processing method, information processing device, and information processing system Download PDFInfo
- Publication number
- JP2022054500A JP2022054500A JP2020161590A JP2020161590A JP2022054500A JP 2022054500 A JP2022054500 A JP 2022054500A JP 2020161590 A JP2020161590 A JP 2020161590A JP 2020161590 A JP2020161590 A JP 2020161590A JP 2022054500 A JP2022054500 A JP 2022054500A
- Authority
- JP
- Japan
- Prior art keywords
- authentication information
- information processing
- container
- information
- user
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は情報処理プログラム、情報処理方法、情報処理装置および情報処理システムに関する。 The present invention relates to an information processing program, an information processing method, an information processing device and an information processing system.
情報処理システムは、コンピュータ仮想化技術を用いて、物理コンピュータ上に1以上の仮想コンピュータを配置することがある。仮想コンピュータは、ゲストOS(Operating System)が実行される狭義の仮想マシンであることもあるし、いわゆるコンテナのようにゲストOSが実行されない軽量型仮想コンピュータであることもある。 The information processing system may arrange one or more virtual computers on a physical computer by using computer virtualization technology. The virtual computer may be a virtual machine in a narrow sense in which a guest OS (Operating System) is executed, or it may be a lightweight virtual computer in which a guest OS is not executed, such as a so-called container.
仮想コンピュータは、その仮想コンピュータが属する情報処理システムとは異なる外部システムを利用することがある。外部システムは、インターネット経由でアクセスを受け付けて情報処理サービスを提供するクラウドシステムであることもある。例えば、仮想コンピュータは、大量のデータを蓄積する外部ストレージシステムや、蓄積されたデータを高速に検索する外部データベースシステムを利用することがある。 The virtual computer may use an external system different from the information processing system to which the virtual computer belongs. The external system may be a cloud system that accepts access via the Internet and provides information processing services. For example, a virtual computer may use an external storage system that stores a large amount of data or an external database system that searches the stored data at high speed.
外部システムは、不正アクセス防止や課金管理などの目的のため、アクセス時に認証情報を受信してユーザ認証を行うことがある。認証情報は、例えば、ユーザに割り当てられた識別子(ID:Identifier)と秘密情報とを含む。よって、仮想コンピュータから外部システムへのアクセスの際には、外部システムに対して認証情報が送信される。 The external system may receive authentication information at the time of access to perform user authentication for the purpose of preventing unauthorized access and managing billing. The authentication information includes, for example, an identifier (ID: Identifier) assigned to the user and confidential information. Therefore, when the virtual computer accesses the external system, the authentication information is transmitted to the external system.
なお、シングルサインオンと同等の認証機能を有する認証連携システムが提案されている。提案の認証連携システムでは、クライアント端末がトークンとMAC(Media Access Control)アドレスを認証サーバに送信し、認証サーバがユーザ認証を行ってトークンとMACアドレスを連携サーバに提供する。認証サーバと連携サーバの機能はWebコンテナ上に実装される。また、ユーザ端末からのサービス要求に含まれるトークンが負荷分散装置に記憶されたトークンと一致する場合に、2以上のサービス提供装置の1つにサービス要求を転送する負荷分散システムが提案されている。 An authentication linkage system having an authentication function equivalent to that of single sign-on has been proposed. In the proposed authentication linkage system, the client terminal sends the token and MAC (Media Access Control) address to the authentication server, and the authentication server performs user authentication and provides the token and MAC address to the linkage server. The functions of the authentication server and the linkage server are implemented on the Web container. Further, a load balancing system has been proposed in which a service request is transferred to one of two or more service providing devices when the token included in the service request from the user terminal matches the token stored in the load balancing device. ..
情報処理システムは、1台の仮想コンピュータを複数のユーザが共有することを許可することがあり得る。よって、仮想コンピュータを起動したユーザ以外の他のユーザが、その仮想コンピュータを使用する場合がある。一方、仮想コンピュータは、外部システムを利用する場合がある。そこで、仮想コンピュータから外部システムへのアクセスに用いる認証情報を、どの様に管理すればよいかが問題となる。 The information processing system may allow multiple users to share a virtual computer. Therefore, a user other than the user who started the virtual computer may use the virtual computer. On the other hand, the virtual computer may use an external system. Therefore, the problem is how to manage the authentication information used for accessing the external system from the virtual computer.
1つの方法として、仮想コンピュータから外部システムへのアクセスが発生する毎に、その仮想コンピュータを現在使用しているユーザに認証情報の入力を求める方法が考えられる。しかし、この方法では、ユーザの負担が大きく操作性が低下する。 One method is to require the user who is currently using the virtual computer to input the authentication information every time the virtual computer accesses the external system. However, this method imposes a heavy burden on the user and reduces operability.
他の1つの方法として、仮想コンピュータを起動したユーザなどの代表者の認証情報を仮想コンピュータに保存し、他のユーザが仮想コンピュータを使用しているときも保存された認証情報で外部システムにアクセスする方法が考えられる。しかし、この方法では、他のユーザが代表者の認証情報を入手できるため、代表者の認証情報を悪用して他のユーザが権限外の操作を外部システムに対して行うことができるというリスクがある。 Another method is to store the authentication information of the representative such as the user who started the virtual computer in the virtual computer, and access the external system with the stored authentication information even when other users are using the virtual computer. There is a way to do it. However, in this method, since other users can obtain the authentication information of the representative, there is a risk that the authentication information of the representative can be abused and the other user can perform an operation other than the authority to the external system. be.
1つの側面では、本発明は、外部システムへのアクセスに用いる認証情報の保護を強化することができる情報処理プログラム、情報処理方法、情報処理装置および情報処理システムを提供することを目的とする。 In one aspect, it is an object of the present invention to provide an information processing program, information processing method, information processing apparatus and information processing system capable of enhancing the protection of authentication information used for accessing an external system.
1つの態様では、コンピュータに以下の処理を実行させる情報処理プログラムが提供される。コンピュータで動作する仮想コンピュータから、仮想コンピュータの属する第1のシステムと異なる第2のシステムにアクセスする場合に、仮想コンピュータに設定された情報であって、仮想コンピュータを使用可能な複数のユーザのうちの第1のユーザが有する第2のシステムのアクセス権限を示す第2の認証情報と関連付いた第1の認証情報を検出する。第2の認証情報にアクセス可能な他のコンピュータに、第2のシステムに対する要求を示す第1のメッセージと第1の認証情報とを送信し、他のコンピュータから、第1のメッセージが示す要求に対する第2のシステムの応答を示す第2のメッセージを受信する。 In one aspect, an information processing program is provided that causes a computer to perform the following processes. Information set in the virtual computer when accessing a second system different from the first system to which the virtual computer belongs from a virtual computer running on the computer, among a plurality of users who can use the virtual computer. The first authentication information associated with the second authentication information indicating the access authority of the second system possessed by the first user of the above is detected. A first message indicating a request for the second system and the first authentication information are sent to another computer having access to the second authentication information, and the other computer responds to the request indicated by the first message. Receive a second message indicating the response of the second system.
また、1つの態様では、第1の情報処理装置と第2の情報処理装置とを有するシステムが実行する情報処理方法が提供される。また、1つの態様では、処理部と通信部とを有する情報処理装置が提供される。また、1つの態様では、第1の情報処理装置と第2の情報処理装置とを有する情報処理システムが提供される。 Further, in one aspect, an information processing method executed by a system having a first information processing device and a second information processing device is provided. Further, in one embodiment, an information processing device having a processing unit and a communication unit is provided. Further, in one aspect, an information processing system including a first information processing device and a second information processing device is provided.
1つの側面では、外部システムへのアクセスに用いる認証情報の保護が強化される。 On one side, the protection of credentials used to access external systems is enhanced.
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
Hereinafter, the present embodiment will be described with reference to the drawings.
[First Embodiment]
The first embodiment will be described.
図1は、第1の実施の形態の情報処理システムを説明するための図である。
第1の実施の形態の情報処理システム1は、コンピュータ仮想化技術を用いて、物理コンピュータに1以上の仮想コンピュータを配置する。仮想コンピュータは、情報処理システム1と異なる外部システム3にアクセスすることがある。
FIG. 1 is a diagram for explaining the information processing system of the first embodiment.
The
情報処理システム1は、特定の企業が保有するオンプレミスシステムでもよいし、データセンタに配置されるクラウドシステムでもよい。情報処理システム1は、例えば、蓄積されたデータを人工知能技術を用いて分析するデータ分析システムである。外部システム3は、ネットワーク経由でアクセスを受け付けて情報処理サービスを提供する。外部システム3は、データセンタに配置されるクラウドシステムでもよい。外部システム3は、例えば、大量のデータを蓄積するストレージシステム、または、蓄積されたデータを高速に検索するデータベースシステムである。
The
情報処理システム1は、情報処理装置10,20を有する。情報処理装置10,20は、例えば、サーバコンピュータである。情報処理装置10,20は、それぞれ記憶部、処理部および通信部を有してもよい。記憶部は、RAM(Random Access Memory)などの揮発性半導体メモリでもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性ストレージでもよい。処理部は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などのプロセッサでもよい。また、処理部は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの特定の電子回路を含んでもよい。
The
プロセッサは、メモリに記憶されたプログラムを実行する。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。通信部は、スイッチやルータなどの有線通信装置に接続される有線通信インタフェースでもよいし、アクセスポイントや基地局などの無線通信装置に接続される無線通信インタフェースでもよい。 The processor executes the program stored in the memory. A collection of multiple processors may be referred to as a "multiprocessor" or simply a "processor." The communication unit may be a wired communication interface connected to a wired communication device such as a switch or a router, or may be a wireless communication interface connected to a wireless communication device such as an access point or a base station.
情報処理装置10では、仮想コンピュータ11が動作する。仮想コンピュータ11は、ゲストOSが実行される狭義の仮想マシンでもよいし、ゲストOSが実行されないコンテナでもよい。仮想コンピュータ11が狭義の仮想マシンである場合、情報処理装置10は、仮想マシンを制御するための管理OSまたはハイパーバイザを実行することがある。仮想コンピュータ11がコンテナである場合、情報処理装置10は、コンテナを制御するためのコンテナエンジンを実行することがある。代表者を含む複数のユーザが仮想コンピュータ11を使用することができる。代表者は、例えば、仮想コンピュータ11を起動したユーザまたは仮想コンピュータ11を定義したオーナーである。
In the
情報処理装置10は、仮想コンピュータ11が外部システム3にアクセスするとき、仮想コンピュータ11に設定された認証情報12を検出する。認証情報12は、代表者が有する外部システム3のアクセス権限を示す認証情報22と関連付いた情報である。認証情報12は、仮想コンピュータ11の起動時に設定されてもよい。認証情報12は、仮想コンピュータ11の環境変数の値であってもよい。認証情報12は、例えば、情報処理装置10が有するメモリの記憶領域のうち仮想コンピュータ11の記憶領域に記憶される。
When the
認証情報12は、代表者のユーザIDとパスワードを含んでもよい。また、認証情報12は、仮想コンピュータ11の識別子を含んでもよい。また、認証情報12は、代表者がオーナーであるプロジェクトの識別子を含んでもよい。また、認証情報12は、仮想コンピュータ11によって偽造されないように暗号化されていてもよい。例えば、情報処理装置20または情報処理装置20と通信する他の情報処理装置が認証情報12を発行する。
The
認証情報12を検出すると、情報処理装置10は、メッセージ13と認証情報12を情報処理装置20に送信する。メッセージ13は、外部システム3に対する要求を示す。例えば、メッセージ13は、データベースシステムに対する検索要求を示すクエリである。メッセージ13は、仮想コンピュータ11により生成されてもよい。メッセージ13は、外部システム3に代えて情報処理装置20に送信される。
When the
すると、情報処理装置10は、メッセージ23を情報処理装置20から受信する。メッセージ23は、メッセージ13が示す要求に対する外部システム3の応答を示す。メッセージ23は、外部システム3のデータ処理結果を含んでもよい。例えば、メッセージ23は、クエリによって検索されたデータを含む。メッセージ23は、仮想コンピュータ11に渡される。上記の情報処理装置10の処理は、仮想コンピュータ11で実行される通信ライブラリで規定されていてもよい。また、上記の情報処理装置10の処理は、代表者以外のユーザが仮想コンピュータ11を使用しているときも実行され得る。よって、認証情報12が示すアクセス権限が、代表者以外のユーザにも委譲されている。
Then, the
情報処理装置20は、情報処理装置10と外部システム3との間の通信を中継する。情報処理装置20が、中継サーバやプロキシサーバと呼ばれてもよい。情報処理装置20は、情報処理装置10からメッセージ13と認証情報12を受信する。
The
すると、情報処理装置20は、認証情報12と関連付いた認証情報22を取得する。例えば、情報処理装置20は、認証情報12を復号し、認証情報12に含まれる識別子を用いて認証情報22を取得する。情報処理装置20は、認証情報22を記憶していてもよい。また、情報処理装置20は、情報処理システム1に含まれる他の情報処理装置に問い合わせて、他の情報処理装置から認証情報22を受信してもよい。また、情報処理装置20は、外部システム3に、一時的認証情報として認証情報22の発行を要求してもよい。認証情報22は、キーIDと秘密情報を含んでもよい。
Then, the
情報処理装置20は、メッセージ13と認証情報22を外部システム3に送信し、メッセージ13に対応するメッセージ23を外部システム3から受信する。そして、情報処理装置20は、メッセージ23を情報処理装置10に転送する。上記の一連の通信の中で、認証情報22は情報処理装置10に提供されない。なお、情報処理装置20は、仮想コンピュータ11が停止したときに認証情報12を無効化してもよく、停止後に認証情報12を受信した場合には認証情報22の取得をエラーとして拒否してもよい。
The
このように、第1の実施の形態の情報処理システム1では、仮想コンピュータ11が外部システム3にアクセスするとき、仮想コンピュータ11に設定された認証情報12が情報処理装置10から情報処理装置20に送信される。認証情報12に関連付いた認証情報22が情報処理装置20において取得され、認証情報22が情報処理装置20から外部システム3に送信される。そして、外部システム3からの応答を示すメッセージ23が情報処理装置20を経由して情報処理装置10に送信される。
As described above, in the
これにより、代表者を含む複数のユーザが仮想コンピュータ11を使用することが可能となる。このとき、代表者以外のユーザは、そのユーザの認証情報を入力しなくても、代表者のアクセス権限に基づいて、外部システム3へのアクセスを仮想コンピュータ11に実行させることができる。よって、ユーザの負担が軽減され操作性が向上する。
As a result, a plurality of users including the representative can use the
また、仮想コンピュータ11は、外部システム3のアクセス権限を示す認証情報22そのものを保持せず、認証情報22に関連付いた認証情報12を保持する。よって、代表者以外のユーザから認証情報22が秘匿される。このため、ユーザが認証情報22を悪用して、仮想コンピュータ11の目的から逸脱する操作を外部システム3に対して実行するリスクが低減される。その結果、情報処理システム1のセキュリティが向上する。
Further, the
[第2の実施の形態]
次に、第2の実施の形態を説明する。
図2は、第2の実施の形態の情報処理システムの例を示す図である。
[Second Embodiment]
Next, a second embodiment will be described.
FIG. 2 is a diagram showing an example of an information processing system according to a second embodiment.
第2の実施の形態の情報処理システムは、データ分析システム31、クラウドシステム32および端末装置33,33aを含む複数の端末装置を有する。データ分析システム31、クラウドシステム32および複数の端末装置は、ネットワーク30に接続される。ネットワーク30は、インターネットなどの広域ネットワークを含んでもよい。
The information processing system of the second embodiment has a plurality of terminal devices including a
データ分析システム31は、人工知能技術を用いてデータを分析する。例えば、データ分析システム31は、蓄積されたデータから訓練データを生成し、機械学習によって訓練データからモデルを生成する。データ分析システム31は、企業が保有するオンプレミスシステムでもよいし、データセンタに配置されるクラウドシステムでもよい。データ分析システム31は、サーバ装置100,100aを含む複数のサーバ装置を有する。データ分析システム31は、第1の実施の形態の情報処理システム1に対応する。サーバ装置100,100aは、第1の実施の形態の情報処理装置10,20に対応する。
The
データ分析システム31は、コンピュータ仮想化技術を用いてコンテナを配置する。コンテナは、ゲストOSが実行されない軽量型仮想コンピュータである。データ分析システム31は、ユーザからの要求に応じて、コンテナの起動およびコンテナの停止を行う。コンテナは、クラウドシステム32のサービスを利用することがある。
The
クラウドシステム32は、データ分析システム31の外部の情報処理システムである。クラウドシステム32は、データセンタに配置され、ネットワーク30を経由したアクセスに応じて情報処理サービスを提供する。例えば、クラウドシステム32は、大量のデータを蓄積するストレージサービスを提供する。また、例えば、クラウドシステム32は、蓄積されたデータの検索や更新を行うデータベースサービスを提供する。クラウドシステム32は、サーバ装置100b,100cを含む複数のサーバ装置を有する。クラウドシステム32は、第1の実施の形態の外部システム3に対応する。
The
クラウドシステム32は、契約した正規ユーザを識別するために認証情報を発行する。クラウドシステム32は、要求メッセージと併せて認証情報を受信し、受信した認証情報に基づいてユーザ認証を行う。クラウドシステム32は、ユーザ認証に成功すると要求メッセージを受け入れ、ユーザ認証に失敗すると要求メッセージを拒否する。
The
端末装置33,33aは、ユーザが使用するクライアント装置である。端末装置33,33aは、データ分析システム31へのアクセスに使用され得る。例えば、端末装置33,33aは、コンテナの起動をデータ分析システム31に指示し、起動されたコンテナに接続し、コンテナの停止をデータ分析システム31に指示する。また、端末装置33,33aは、クラウドシステム32へのアクセスに使用され得る。例えば、端末装置33,33aは、認証情報の発行をクラウドシステム32に要求する。発行された認証情報は、端末装置33,33aからデータ分析システム31に登録されることがある。
The
図3は、サーバ装置のハードウェア例を示すブロック図である。
サーバ装置100は、CPU101、RAM102、HDD103、画像インタフェース104、入力インタフェース105、媒体リーダ106および通信インタフェース107を有する。サーバ装置100が有するこれらのユニットは、バスに接続されている。他のサーバ装置および端末装置33,33aなどの端末装置も、サーバ装置100と同様のハードウェアを有する。
FIG. 3 is a block diagram showing a hardware example of the server device.
The
CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。サーバ装置100は複数のプロセッサを有してもよい。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。
The
RAM102は、CPU101が実行するプログラムやCPU101が演算に使用するデータを一時的に記憶する揮発性半導体メモリである。サーバ装置100は、RAM以外の種類のメモリを備えてもよく、複数のメモリを備えてもよい。
The
HDD103は、OSやミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性ストレージである。サーバ装置100は、フラッシュメモリやSSD(Solid State Drive)など他の種類のストレージを備えてもよく、複数のストレージを備えてもよい。
The
画像インタフェース104は、CPU101からの命令に従って、サーバ装置100に接続された表示装置111に画像を出力する。表示装置111として、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(OEL:Organic Electro-Luminescence)ディスプレイ、プロジェクタなど、任意の種類の表示装置を使用することができる。サーバ装置100に、プリンタなど表示装置111以外の出力デバイスが接続されてもよい。
The
入力インタフェース105は、サーバ装置100に接続された入力デバイス112から入力信号を受け付ける。入力デバイス112として、マウス、タッチパネル、タッチパッド、キーボードなど、任意の種類の入力デバイスを使用することができる。サーバ装置100に複数の入力デバイスが接続されてもよい。
The
媒体リーダ106は、記録媒体113に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体113として、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、半導体メモリなど、任意の種類の記録媒体を使用することができる。媒体リーダ106は、例えば、記録媒体113から読み取ったプログラムやデータを、RAM102やHDD103などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、CPU101によって実行される。なお、記録媒体113は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体113やHDD103を、コンピュータ読み取り可能な記録媒体と言うことがある。
The
通信インタフェース107は、ネットワーク30に接続され、ネットワーク30を介して他のサーバ装置や端末装置33,33aなどの端末装置と通信する。通信インタフェース107は、スイッチやルータなどの有線通信装置に接続される有線通信インタフェースである。ただし、通信インタフェース107が、基地局やアクセスポイントなどの無線通信装置に接続される無線通信インタフェースであってもよい。
The
図4は、データ分析システムのソフトウェア例を示すブロック図である。
データ分析システム31は、コンテナ121,121aを含む複数のコンテナ、中継サーバ131および管理サーバ132を有する。コンテナ121,121aは、軽量型仮想コンピュータである。コンテナ121,121aは、何れかのサーバ装置に配置される。例えば、コンテナ121,121aは、サーバ装置100に配置される。中継サーバ131および管理サーバ132は、サーバアプリケーションである。中継サーバ131および管理サーバ132は、それぞれ何れかのサーバ装置に配置される。例えば、中継サーバ131および管理サーバ132は、サーバ装置100aに配置される。
FIG. 4 is a block diagram showing a software example of a data analysis system.
The
コンテナ121,121aが配置されるサーバ装置は、コンテナエンジン124とホストOS125を実行する。コンテナエンジン124は、ホストOS125の上で実行される。コンテナ121,121aは、コンテナエンジン124の上で実行される。ホストOS125は、サーバ装置が有するCPU、RAM、HDD、通信インタフェースなどのハードウェアリソースを管理する。コンテナエンジン124は、コンテナ121,121aを制御する。コンテナエンジン124は、ホストOS125が管理するハードウェアリソースの一部をコンテナ121,121aに割り当てる。特に、コンテナエンジン124は、メモリのユーザ空間の一部をコンテナ121,121aに割り当てる。ホストOS125から見て、コンテナ121,121aはそれぞれ1個のプロセスとして実行される。
The server device in which the
コンテナ121では、アプリケーションプログラム122および通信ライブラリ123が実行される。コンテナ121aでは、アプリケーションプログラム122aおよび通信ライブラリ123aが実行される。アプリケーションプログラム122,122aは、ユーザが規定したデータフローを実装したユーザプログラムである。アプリケーションプログラム122,122aは、クラウドシステム32のサービスを利用することがある。その場合、アプリケーションプログラム122は通信ライブラリ123を呼び出す。また、アプリケーションプログラム122aは通信ライブラリ123aを呼び出す。
In the
通信ライブラリ123,123aは、クラウドシステム32へのアクセスを制御するライブラリプログラムである。通信ライブラリ123は、アプリケーションプログラム122からの要求に応じて中継サーバ131と通信する。また、通信ライブラリ123aは、アプリケーションプログラム122aからの要求に応じて中継サーバ131と通信する。
The
中継サーバ131が配置されるサーバ装置は、ホストOS133を実行する。中継サーバ131は、ホストOS133の上で実行される。ホストOS133は、サーバ装置が有するハードウェアリソースを管理する。ただし、アプリケーションプログラム122,122aと同様に、中継サーバ131をコンテナの中に配置することも可能である。中継サーバ131は、コンテナ121,121aとクラウドシステム32との間の通信を中継する。中継サーバ131がプロキシサーバと呼ばれてもよい。
The server device in which the
管理サーバ132が配置されるサーバ装置は、ホストOS134を実行する。管理サーバ132は、ホストOS134の上で実行される。ホストOS134は、サーバ装置が有するハードウェアリソースを管理する。ただし、アプリケーションプログラム122,122aと同様に、管理サーバ132をコンテナの中に配置することも可能である。管理サーバ132は、コンテナ121,121aの起動および停止を管理する。また、管理サーバ132は、中継サーバ131と連携して、コンテナ121,121aがクラウドシステム32にアクセスするための認証情報を管理する。
The server device in which the
第2の実施の形態では、コンテナ121を起動するとき、ユーザは3つのコンテナタイプの中から1つを選択することができる。第1のタイプは、コンテナを起動したユーザのみがそのコンテナに接続できる非共有型である。第2のタイプは、コンテナを起動したユーザ以外の他のユーザもそのコンテナに接続でき、接続したユーザのアクセス権限でクラウドシステム32にアクセスする共有・個別認証型である。第3のタイプは、コンテナを起動したユーザ以外の他のユーザもそのコンテナに接続でき、コンテナに関する代表者のアクセス権限でクラウドシステム32にアクセスする共有・権限委譲型である。代表者は、コンテナを定義したオーナーまたはコンテナを起動した起動者である。以下では、3つのコンテナタイプについて、クラウドシステム32へのアクセスの例を説明する。
In the second embodiment, when starting the
図5は、外部アクセスの第1の通信例を示すシーケンス図である。
ここでは、コンテナ121が非共有型である場合について説明する。ユーザAは、端末装置33を用いて管理サーバ132にコンテナ起動要求を送信する(S10)。コンテナ起動要求は、ユーザAのユーザ情報を含む。ユーザ情報は、ユーザIDとパスワードを含む。コンテナ起動要求に含まれるユーザ情報は、データ分析システム31の中で使用される認証情報であり、クラウドシステム32で使用される認証情報とは異なる。また、コンテナ起動要求は、コンテナタイプとして非共有型を指定する。
FIG. 5 is a sequence diagram showing a first communication example of external access.
Here, a case where the
管理サーバ132は、コンテナ起動要求に含まれるユーザ情報を用いてユーザAを認証する。ユーザAの認証に成功すると、管理サーバ132は、起動するコンテナ121にコンテナIDを付与し、コンテナ121のプログラムを何れかのサーバ装置に転送し、コンテナ121を起動させる。また、管理サーバ132は、コンテナ起動要求に含まれるユーザ情報からユーザAの仮キーを生成し、コンテナ121に送信する(S11)。コンテナ121は、停止するまでの間、ユーザAの仮キーを保持する。管理サーバ132が発行した仮キーは、コンテナ121が使用するRAMの記憶領域に記憶されてもよい。また、仮キーは、コンテナ121の環境変数に代入されてもよい。
The
仮キーは、例えば、ユーザIDとパスワードとコンテナIDを含むデータを暗号化した暗号データである。仮キーはトークンと呼ばれてもよい。暗号化には、管理サーバ132が保持する共通鍵などの暗号鍵が用いられる。コンテナ121はこの暗号鍵を知らないため、仮キーを復号できず、仮キーを偽造することはできない。ユーザAの仮キーは、クラウドシステム32で使用されるユーザAの認証情報とは異なる。このため、コンテナ121は、仮キーを用いてクラウドシステム32に直接アクセスすることはできない。
The temporary key is, for example, encrypted data obtained by encrypting data including a user ID, a password, and a container ID. Temporary keys may be called tokens. For encryption, an encryption key such as a common key held by the
ユーザAは、起動されたコンテナ121に接続する(S12)。コンテナ121は、アプリケーションプログラム122を実行する。アプリケーションプログラム122には、クラウドシステム32へのアクセスが規定されている。そこで、コンテナ121は、データベースの検索または更新の要求を示すクエリを生成する。また、コンテナ121は、コンテナ121に設定されたユーザAの仮キーを抽出する。コンテナ121は、クエリとユーザAの仮キーを中継サーバ131に送信する(S13)。
User A connects to the activated container 121 (S12). The
中継サーバ131は、コンテナ121から受信した仮キーを管理サーバ132に送信する(S14)。管理サーバ132は、中継サーバ131から受信した仮キーの正当性を検証する。例えば、管理サーバ132は、管理サーバ132が保持する共通鍵などの暗号鍵を用いて仮キーを復号し、復号が成功した場合は正当な仮キーと判定し、復号が失敗した場合は正当な仮キーでないと判定する。また、管理サーバ132は、仮キーの有効性を検証する。コンテナ121が停止すると、コンテナ121に設定された仮キーは無効化される。例えば、管理サーバ132は、仮キーから抽出されたコンテナIDが、稼働中のコンテナのコンテナIDであるかを確認する。
The
受信した仮キーに問題がない場合、管理サーバ132は、仮キーに対応する認証情報を取得する。例えば、管理サーバ132は、仮キーから抽出されたユーザ情報と関連付いた認証情報を取得する。管理サーバ132が取得する認証情報は、クラウドシステム32から発行された認証情報であり、クレデンシャルと呼ばれてもよい。ここでは、コンテナ121を起動したユーザAの認証情報が取得される。認証情報は、例えば、キーIDと秘密情報を含む。管理サーバ132は、認証情報を中継サーバ131に送信する(S15)。
If there is no problem with the received temporary key, the
認証情報を取得するにあたり、管理サーバ132は、ユーザ情報と関連付けて認証情報を記憶していてもよい。また、管理サーバ132は、データ分析システム31が有する他のサーバに問い合わせて、ユーザ情報に対応する認証情報を受信してもよい。また、管理サーバ132は、ユーザ情報をクラウドシステム32に送信し、ユーザAのための一時的認証情報をクラウドシステム32から受信してもよい。なお、中継サーバ131と管理サーバ132とを分離せず、中継サーバ131が管理サーバ132の機能を兼ねてもよい。
In acquiring the authentication information, the
中継サーバ131は、コンテナ121から受信したクエリと管理サーバ132から受信した認証情報とを、クラウドシステム32に送信する(S16)。クラウドシステム32は、中継サーバ131から受信した認証情報を用いてユーザAを認証し、ユーザAのアクセス権限の範囲で、中継サーバ131から受信したクエリの実行を許可する。クラウドシステム32は、クエリに対応する結果データを生成して中継サーバ131に送信する(S17)。結果データは、例えば、データベースから検索されたデータを含む。
The
中継サーバ131は、クラウドシステム32から受信した結果データをコンテナ121に転送する(S18)。ただし、以上の一連の通信の中で、クラウドシステム32で使用される認証情報はコンテナ121に提供されない。その後、ユーザAはコンテナ停止要求を管理サーバ132に送信することがある。その場合、管理サーバ132は、コンテナ121を停止させると共に、コンテナ121に設定された仮キーを無効化する。以降、管理サーバ132は、その仮キーを受信してもユーザAの認証情報の提供を拒否する。
The
図6は、外部アクセスの第2の通信例を示すシーケンス図である。
ここでは、コンテナ121が共有・個別認証型である場合について説明する。ユーザAは、端末装置33を用いて管理サーバ132にコンテナ起動要求を送信する(S20)。コンテナ起動要求は、ユーザAのユーザ情報を含み、コンテナタイプとして共有・個別認証型を指定する。管理サーバ132は、コンテナ起動要求に含まれるユーザ情報を用いてユーザAを認証し、起動するコンテナ121にコンテナIDを付与し、コンテナ121を起動させる(S21)。コンテナタイプが共有・個別認証型である場合、管理サーバ132は、コンテナ121に対して仮キーを発行しない。よって、コンテナ121は仮キーを保持しない。例えば、コンテナ121の仮キーを示す環境変数が空になる。
FIG. 6 is a sequence diagram showing a second communication example of external access.
Here, a case where the
コンテナ121を起動したユーザAと異なるユーザBは、端末装置33aを用いてコンテナ121に接続する(S22)。コンテナ121がクラウドシステム32にアクセスするとき、コンテナ121は、コンテナ121の仮キーが空であることを検出する。すると、コンテナ121は、コンテナ121に現在接続しているユーザBにユーザ情報の入力を要求し、ユーザBのユーザ情報を取得する。例えば、コンテナ121は、端末装置33aに対してユーザ情報を要求し、端末装置33aからユーザ情報を受信する。コンテナ121は、ユーザBのユーザ情報を管理サーバ132に送信する(S23)。
User B, which is different from user A who started the
管理サーバ132は、コンテナ121から受信したユーザ情報を用いてユーザBを認証し、ユーザBの仮キーを生成してコンテナ121に送信する(S24)。仮キーは、例えば、ユーザBのユーザIDとパスワードとコンテナ121のコンテナIDとを含むデータを暗号化した暗号データである。コンテナ121は、クエリとユーザBの仮キーを中継サーバ131に送信する(S25)。ユーザBの仮キーは、コンテナ121に保存されない。仮キーを中継サーバ131に送信した後、コンテナ121は、仮キーを破棄してよい。
The
中継サーバ131は、コンテナ121から受信した仮キーを管理サーバ132に送信する(S26)。管理サーバ132は、中継サーバ131から受信した仮キーの正当性および有効性を検証し、仮キーに対応するユーザBの認証情報を取得する。管理サーバ132は、認証情報を記憶していてもよいし、データ分析システム31が有する他のサーバから認証情報を受信してもよいし、一時的認証情報をクラウドシステム32から受信してもよい。管理サーバ132は、認証情報を中継サーバ131に送信する(S27)。
The
中継サーバ131は、コンテナ121から受信したクエリと管理サーバ132から受信した認証情報とを、クラウドシステム32に送信する(S28)。クラウドシステム32は、中継サーバ131から受信した認証情報を用いてユーザBを認証し、ユーザBのアクセス権限の範囲で、中継サーバ131から受信したクエリの実行を許可する。クラウドシステム32は、クエリに対応する結果データを生成して中継サーバ131に送信する(S29)。中継サーバ131は、結果データをコンテナ121に転送する(S30)。
The
図7は、外部アクセスの第3の通信例を示すシーケンス図である。
ここでは、コンテナ121が共有・権限委譲型である場合について説明する。ユーザAは、端末装置33を用いて管理サーバ132にコンテナ起動要求を送信する(S40)。コンテナ起動要求は、ユーザAのユーザ情報を含み、コンテナタイプとして共有・権限委譲型を指定する。管理サーバ132は、コンテナ起動要求に含まれるユーザ情報を用いてユーザAを認証し、起動するコンテナ121にコンテナIDを付与し、コンテナ121を起動させる。また、管理サーバ132は、コンテナ起動要求に含まれるユーザ情報からユーザAの仮キーを生成し、コンテナ121に送信する(S41)。仮キーは、例えば、ユーザIDとパスワードとコンテナIDを含むデータを暗号化した暗号データである。
FIG. 7 is a sequence diagram showing a third communication example of external access.
Here, a case where the
コンテナ121を起動したユーザAと異なるユーザBは、端末装置33aを用いてコンテナ121に接続する(S42)。コンテナ121がクラウドシステム32にアクセスするとき、コンテナ121は、コンテナ121に設定されたユーザAの仮キーを抽出する。コンテナ121は、クエリと仮キーを中継サーバ131に送信する(S43)。
User B, which is different from user A who started the
中継サーバ131は、コンテナ121から受信した仮キーを管理サーバ132に送信する(S44)。管理サーバ132は、中継サーバ131から受信した仮キーの正当性および有効性を検証し、仮キーに対応するユーザAの認証情報を取得する。管理サーバ132は、認証情報を記憶していてもよいし、データ分析システム31が有する他のサーバから認証情報を受信してもよいし、一時的認証情報をクラウドシステム32から受信してもよい。管理サーバ132は、認証情報を中継サーバ131に送信する(S45)。
The
中継サーバ131は、コンテナ121から受信したクエリと管理サーバ132から受信した認証情報とを、クラウドシステム32に送信する(S46)。クラウドシステム32は、中継サーバ131から受信した認証情報を用いてユーザAを認証し、ユーザAのアクセス権限の範囲で、中継サーバ131から受信したクエリの実行を許可する。クラウドシステム32は、クエリに対応する結果データを生成して中継サーバ131に送信する(S47)。中継サーバ131は、結果データをコンテナ121に転送する(S48)。
The
このように、非共有型コンテナは、非共有型コンテナを起動したユーザであって、非共有型コンテナを使用する唯一のユーザの仮キーを保持する。非共有型コンテナは、仮キーを用いて中継サーバにアクセスする。中継サーバは、仮キーから当該ユーザの認証情報を取得し、当該ユーザのアクセス権限に基づいてクラウドシステム32にアクセスする。
In this way, the non-shared container holds the temporary key of the user who started the non-shared container and is the only user who uses the non-shared container. The non-shared container uses the temporary key to access the relay server. The relay server acquires the authentication information of the user from the temporary key and accesses the
共有・個別認証型コンテナは、仮キーを保持しない。共有・個別認証型コンテナは、共有・個別認証型コンテナを現在使用しているユーザにユーザ情報を要求し、入力されたユーザ情報に基づいて現在のユーザの仮キーを取得し、中継サーバにアクセスする。中継サーバは、現在のユーザの仮キーから現在のユーザの認証情報を取得し、現在のユーザのアクセス権限に基づいてクラウドシステム32にアクセスする。
Shared / individual authentication type container does not hold temporary key. The shared / individual authentication type container requests user information from the user who is currently using the shared / individual authentication type container, acquires the temporary key of the current user based on the entered user information, and accesses the relay server. do. The relay server acquires the authentication information of the current user from the temporary key of the current user, and accesses the
共有・権限委譲型コンテナは、共有・権限委譲型コンテナを定義したオーナーや非共有型コンテナを起動したユーザなどの代表者の仮キーを保持する。共有・権限委譲型コンテナは、代表者の仮キーを用いて中継サーバにアクセスする。中継サーバは、代表者の仮キーから代表者の認証情報を取得し、現在のユーザのアクセス権限ではなく代表者のアクセス権限に基づいてクラウドシステム32にアクセスする。
The shared / delegated authority container holds a temporary key of a representative such as the owner who defined the shared / delegated authority container and the user who started the non-shared container. The sharing / delegation type container accesses the relay server using the temporary key of the representative. The relay server acquires the authentication information of the representative from the temporary key of the representative, and accesses the
図8は、コンテナの仮キーおよび管理サーバのテーブルの例を示す図である。
コンテナ121は、仮キー141を記憶することがある。仮キー141は、コンテナ121が使用するRAMの記憶領域に記憶されてもよく、コンテナ121の環境変数の値であってもよい。仮キー141は、ユーザAのユーザIDと、ユーザAのパスワードと、コンテナ121のコンテナIDとを連結した文字列の暗号文である。
FIG. 8 is a diagram showing an example of a temporary key of a container and a table of a management server.
The
管理サーバ132は、ユーザテーブル142、コンテナテーブル143および認証情報テーブル144を記憶する。ただし、認証情報テーブル144が管理サーバ132以外のサーバに記憶されてもよい。また、管理サーバ132が、クラウドシステム32へのアクセス毎にクラウドシステム32に一時認証情報の発行を要求する場合、データ分析システム31が認証情報テーブル144を保持していなくてもよい。
The
ユーザテーブル142は、複数のユーザのユーザ情報を記憶する。ユーザテーブル142に記憶されたユーザ情報は、データ分析システム31の中でのユーザ認証に使用される。各ユーザ情報は、ユーザIDとパスワードを含む。コンテナテーブル143は、データ分析システム31で稼働中である1以上のコンテナのコンテナ情報を記憶する。各コンテナ情報は、コンテナIDとコンテナタイプを含む。
The user table 142 stores user information of a plurality of users. The user information stored in the user table 142 is used for user authentication in the
認証情報テーブル144は、複数のユーザの認証情報を記憶する。認証情報テーブル144では、ユーザ情報と認証情報とが対応付けられている。認証情報テーブル144に記憶された認証情報は、クラウドシステム32によって発行された認証情報である。管理サーバ132は、端末装置33,33aからユーザ情報と認証情報を受信して認証情報テーブル144に登録してもよい。各認証情報は、キーIDと秘密情報を含む。管理サーバ132は、あるユーザのユーザIDとパスワードを取得すると、認証情報テーブル144から、対応するキーIDと秘密情報を検索する。
The authentication information table 144 stores authentication information of a plurality of users. In the authentication information table 144, the user information and the authentication information are associated with each other. The authentication information stored in the authentication information table 144 is the authentication information issued by the
次に、コンテナ121、中継サーバ131および管理サーバ132の処理を説明する。
図9は、コンテナ処理の手順例を示すフローチャートである。
(S50)コンテナ121は、起動後に管理サーバ132から仮キーを受信したか判断する。管理サーバ132から仮キーを受信した場合はステップS51に処理が進み、仮キーを受信していない場合はステップS52に処理が進む。
Next, the processing of the
FIG. 9 is a flowchart showing an example of a container processing procedure.
(S50) The
(S51)コンテナ121は、受信した仮キーをコンテナ121の中に保存する。
(S52)コンテナ121は、管理サーバ132から停止が指示されたか判断する。管理サーバ132から停止が指示された場合はコンテナ処理が終了し、停止が指示されていない場合は処理がステップS53に進む。
(S51) The
(S52) The
(S53)コンテナ121は、外部サービスへのアクセスの要求を検出する。
(S54)コンテナ121は、コンテナ121の中に仮キーが保存されているか判断する。コンテナ121の中に仮キーが保存されている場合は処理がステップS57に進み、仮キーが保存されていない場合は処理がステップS55に進む。
(S53) The
(S54) The
(S55)コンテナ121は、コンテナ121に現在接続しているユーザに対して、ユーザIDとパスワードを含むユーザ情報の入力を要求する。
(S56)コンテナ121は、入力されたユーザ情報を管理サーバ132に送信し、ユーザ情報に対応する仮キーを管理サーバ132から受信する。
(S55) The
(S56) The
(S57)コンテナ121は、外部サービスへの要求を示すクエリと、ステップS54またはステップS56で得られる仮キーを、中継サーバ131に送信する。
(S58)コンテナ121は、ステップS57に対する外部サービスの応答を示す結果データを、中継サーバ131から受信する。そして、処理がステップS52に戻る。
(S57) The
(S58) The
図10は、中継サーバ処理の手順例を示すフローチャートである。
(S60)中継サーバ131は、コンテナ121からクエリと仮キーを受信する。
(S61)中継サーバ131は、仮キーを管理サーバ132に送信し、仮キーに対応する外部サービスの認証情報を管理サーバ132から受信する。
FIG. 10 is a flowchart showing a procedure example of relay server processing.
(S60) The
(S61) The
(S62)中継サーバ131は、クエリと認証情報を外部サービスに送信する。
(S63)中継サーバ131は、クエリに対する応答を示す結果データを外部サービスから受信し、結果データをコンテナ121に転送する。
(S62) The
(S63) The
図11は、管理サーバ処理の手順例を示すフローチャートである。
(S70)管理サーバ132は、ユーザからコンテナ起動要求を受信したか判断する。コンテナ起動要求を受信した場合は処理がステップS71に進み、コンテナ起動要求を受信していない場合は処理がステップS75に進む。
FIG. 11 is a flowchart showing a procedure example of the management server process.
(S70) The
(S71)管理サーバ132は、コンテナ起動要求に含まれるユーザ情報の正当性を検証した上で、コンテナIDを割り当ててコンテナ121を起動する。なお、ユーザ情報の検証に失敗した場合、管理サーバ132は、ユーザにエラーを通知する。
(S71) The
(S72)管理サーバ132は、コンテナ起動要求で指定されたコンテナタイプが共有・個別認証型であるか判断する。共有・個別認証型の場合は処理がステップS75に進み、非要求型または共有・権限委譲型の場合は処理がステップS73に進む。
(S72) The
(S73)管理サーバ132は、ユーザ情報とコンテナIDから仮キーを生成する。
(S74)管理サーバ132は、仮キーをコンテナ121に送信する。
(S75)管理サーバ132は、コンテナ121からユーザ情報を受信したか判断する。コンテナ121からユーザ情報を受信した場合は処理がステップS76に進み、ユーザ情報を受信していない場合は処理がステップS78に進む。
(S73) The
(S74) The
(S75) The
(S76)管理サーバ132は、受信したユーザ情報の正当性を検証した上で、ユーザ情報とコンテナ121のコンテナIDから仮キーを生成する。なお、ユーザ情報の検証に失敗した場合、管理サーバ132は、コンテナ121にエラーを通知する。
(S76) The
(S77)管理サーバ132は、仮キーをコンテナ121に送信する。
図12は、管理サーバ処理の手順例を示すフローチャート(続き)である。
(S78)管理サーバ132は、中継サーバ131から仮キーを受信したか判断する。中継サーバ131から仮キーを受信した場合は処理がステップS79に進み、仮キーを受信していない場合は処理がステップS82に進む。
(S77) The
FIG. 12 is a flowchart (continued) showing an example of the management server processing procedure.
(S78) The
(S79)管理サーバ132は、仮キーからユーザ情報とコンテナIDを抽出する。
復号に失敗した場合、管理サーバ132は、中継サーバ131にエラーを通知する。
(S80)管理サーバ132は、コンテナIDの有効性を検証する。例えば、管理サーバ132は、コンテナIDがコンテナテーブル143に登録されていることを確認する。検証に失敗した場合、管理サーバ132は、中継サーバ131にエラーを通知する。
(S79) The
If the decryption fails, the
(S80) The
(S81)管理サーバ132は、ユーザ情報に対応する認証情報を取得する。例えば、管理サーバ132は、認証情報テーブル144から、ユーザ情報に対応する認証情報を検索する。また、例えば、管理サーバ132は、クラウドシステム32にユーザ情報を送信して、ユーザ情報に対応する一時認証情報の発行を要求する。管理サーバ132は、取得した認証情報を中継サーバ131に送信する。
(S81) The
(S82)管理サーバ132は、ユーザからコンテナ停止要求を受信したか判断する。コンテナ停止要求を受信した場合は処理がステップS83に進み、コンテナ停止要求を受信していない場合は管理サーバ処理が終了する。
(S82) The
(S83)管理サーバ132は、コンテナ121を停止してコンテナIDを無効化する。例えば、管理サーバ132は、コンテナテーブル143からコンテナIDを削除する。
このように、第2の実施の形態のデータ分析システム31は、複数のユーザが使用可能なコンテナを作成することができる。よって、データ分析業務を柔軟に遂行できる。また、複数のユーザのうちの代表者が他のユーザにアクセス権限を委譲することができ、他のユーザが個別に認証情報を入力しなくてもコンテナはクラウドシステム32にアクセスできる。よって、ユーザの負担が軽減されて操作性が向上する。
(S83) The
As described above, the
また、コンテナはクラウドシステム32の認証情報そのものを保持しない。よって、代表者の認証情報が他のユーザから秘匿され、他のユーザは代表者の認証情報を取得できない。よって、他のユーザが代表者の認証情報を悪用して、コンテナの目的外の操作をクラウドシステム32に対して実行してしまうリスクが低減される。その結果、認証情報の保護が強化され、データ分析システム31のセキュリティが向上する。また、コンテナが停止すると当該コンテナに割り当てられていた仮キーが無効化される。よって、他のユーザが仮キーをコピーして悪用するリスクも低減される。
Further, the container does not hold the authentication information itself of the
1 情報処理システム
3 外部システム
10,20 情報処理装置
11 仮想コンピュータ
12,22 認証情報
13,23 メッセージ
1
Claims (8)
前記コンピュータで動作する仮想コンピュータから、前記仮想コンピュータの属する第1のシステムと異なる第2のシステムにアクセスする場合に、前記仮想コンピュータに設定された情報であって、前記仮想コンピュータを使用可能な複数のユーザのうちの第1のユーザが有する前記第2のシステムのアクセス権限を示す第2の認証情報と関連付いた第1の認証情報を検出し、
前記第2の認証情報にアクセス可能な他のコンピュータに、前記第2のシステムに対する要求を示す第1のメッセージと前記第1の認証情報とを送信し、
前記他のコンピュータから、前記第1のメッセージが示す前記要求に対する前記第2のシステムの応答を示す第2のメッセージを受信する、
処理を実行させる情報処理プログラム。 On the computer
Information set in the virtual computer when accessing a second system different from the first system to which the virtual computer belongs from a virtual computer operating on the computer, and a plurality of information that can use the virtual computer. The first authentication information associated with the second authentication information indicating the access authority of the second system possessed by the first user among the users of the above is detected.
A first message indicating a request for the second system and the first authentication information are transmitted to another computer having access to the second authentication information.
A second message indicating the response of the second system to the request indicated by the first message is received from the other computer.
An information processing program that executes processing.
請求項1記載の情報処理プログラム。 Further, when the first user starts the virtual computer, the computer is made to execute a process of setting the first authentication information in the virtual computer.
The information processing program according to claim 1.
請求項1記載の情報処理プログラム。 In the transmission of the first message and the first authentication information, the second user among the plurality of users accesses the second system while using the virtual computer. Also sends the first authentication information,
The information processing program according to claim 1.
前記他のコンピュータは、前記第4の認証情報にアクセス可能である、
請求項1記載の情報処理プログラム。 Further, when the first authentication information is not set in the virtual computer, the second user has the first authentication information based on the input from the second user who is using the virtual computer. The process of acquiring the third authentication information associated with the fourth authentication information indicating the access authority of the second system and transmitting the first message and the third authentication information to the other computer is executed. Let me
The other computer has access to the fourth authentication information,
The information processing program according to claim 1.
前記第1のメッセージおよび前記第1の認証情報の送信では、前記仮想コンピュータの通信先を前記第2のシステムから前記他のコンピュータに変更する、
請求項1記載の情報処理プログラム。 The information processing program is executed on the virtual computer and
In the transmission of the first message and the first authentication information, the communication destination of the virtual computer is changed from the second system to the other computer.
The information processing program according to claim 1.
前記第1の情報処理装置が、前記第2のシステムに対する要求を示す第1のメッセージと前記第1の認証情報とを第2の情報処理装置に送信し、
前記第2の情報処理装置が、前記第1の認証情報と関連付いた情報であって、前記仮想コンピュータを使用可能な複数のユーザのうちの第1のユーザが有する前記第2のシステムのアクセス権限を示す第2の認証情報を取得し、
前記第2の情報処理装置が、前記第1のメッセージと前記第2の認証情報とを前記第2のシステムに送信し、前記第1のメッセージが示す前記要求に対する前記第2のシステムの応答を示す第2のメッセージを前記第1の情報処理装置に転送する、
情報処理方法。 The first information processing device is set in the virtual computer when the virtual computer operating in the first information processing device accesses a second system different from the first system to which the virtual computer belongs. Detects the first authentication information and
The first information processing apparatus transmits a first message indicating a request to the second system and the first authentication information to the second information processing apparatus.
The second information processing apparatus is information related to the first authentication information, and is accessible to the second system by the first user among a plurality of users who can use the virtual computer. Obtain the second authentication information indicating the authority,
The second information processing apparatus transmits the first message and the second authentication information to the second system, and responds to the request indicated by the first message by the second system. The second message shown is transferred to the first information processing apparatus.
Information processing method.
前記第2の認証情報にアクセス可能な他の情報処理装置に、前記第2のシステムに対する要求を示す第1のメッセージと前記第1の認証情報とを送信し、前記他の情報処理装置から、前記第1のメッセージが示す前記要求に対する前記第2のシステムの応答を示す第2のメッセージを受信する通信部と、
を有する情報処理装置。 Information set in the virtual computer when accessing a second system different from the first system to which the virtual computer belongs from a virtual computer operating in the own device, and a plurality of information that can use the virtual computer. A processing unit that detects the first authentication information associated with the second authentication information indicating the access authority of the second system possessed by the first user among the users of the above.
A first message indicating a request for the second system and the first authentication information are transmitted to another information processing device that can access the second authentication information, and the other information processing device can send the first message and the first authentication information. A communication unit that receives a second message indicating the response of the second system to the request indicated by the first message, and a communication unit.
Information processing device with.
前記第1のメッセージと前記第1の認証情報とを受信し、前記第1の認証情報と関連付いた情報であって、前記仮想コンピュータを使用可能な複数のユーザのうちの第1のユーザが有する前記第2のシステムのアクセス権限を示す第2の認証情報を取得し、前記第1のメッセージと前記第2の認証情報とを前記第2のシステムに送信し、前記第1のメッセージが示す前記要求に対する前記第2のシステムの応答を示す第2のメッセージを前記第1の情報処理装置に転送する第2の情報処理装置と、
を有する情報処理システム。 When accessing a second system different from the first system to which the virtual computer belongs from a virtual computer operating in the own device, the first authentication information set in the virtual computer is detected, and the second system is detected. A first information processing device that transmits a first message indicating a request to the system and the first authentication information, and a first information processing device.
The first user among a plurality of users who have received the first message and the first authentication information and are associated with the first authentication information and can use the virtual computer The second authentication information indicating the access authority of the second system to be possessed is acquired, the first message and the second authentication information are transmitted to the second system, and the first message indicates. A second information processing apparatus that transfers a second message indicating the response of the second system to the request to the first information processing apparatus, and a second information processing apparatus.
Information processing system with.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020161590A JP2022054500A (en) | 2020-09-28 | 2020-09-28 | Information processing program, information processing method, information processing device, and information processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020161590A JP2022054500A (en) | 2020-09-28 | 2020-09-28 | Information processing program, information processing method, information processing device, and information processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022054500A true JP2022054500A (en) | 2022-04-07 |
Family
ID=80998062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020161590A Pending JP2022054500A (en) | 2020-09-28 | 2020-09-28 | Information processing program, information processing method, information processing device, and information processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022054500A (en) |
-
2020
- 2020-09-28 JP JP2020161590A patent/JP2022054500A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628658B (en) | License management method and device for container | |
US9288213B2 (en) | System and service providing apparatus | |
CN111698228A (en) | System access authority granting method, device, server and storage medium | |
JP4186987B2 (en) | Database access control method, database access control device, database access control program, and recording medium storing the program | |
JP6390123B2 (en) | Information processing system and authentication information providing method | |
US7478220B2 (en) | Method, apparatus, and product for prohibiting unauthorized access of data stored on storage drives | |
CN112433817B (en) | Information configuration method, direct storage access method and related device | |
CN102404314A (en) | Remote resources single-point sign on | |
JP4855516B2 (en) | Access control program, access control device, and access control method | |
US9438629B2 (en) | Sensitive information leakage prevention system, sensitive information leakage prevention method, and computer-readable recording medium | |
JP2013045278A (en) | Access management device | |
US11063922B2 (en) | Virtual content repository | |
US20220070206A1 (en) | Secure device selection based on sensitive content detection | |
CN113342711B (en) | Page table updating method and device and related equipment | |
CN108521424B (en) | Distributed data processing method for heterogeneous terminal equipment | |
US20190361726A1 (en) | Computer system and resource access control method | |
EP2429146B1 (en) | Method and apparatus for authenticating access by a service | |
JP4345309B2 (en) | Network storage device | |
US20220385596A1 (en) | Protecting integration between resources of different services using service-generated dependency tags | |
CN108616517B (en) | High-reliability cloud platform service providing method | |
JP2022054500A (en) | Information processing program, information processing method, information processing device, and information processing system | |
JP5949552B2 (en) | Access control information generation system | |
CN112416525B (en) | Device driver initialization method, direct storage access method and related device | |
CN108449358B (en) | Cloud-based low-delay secure computing method | |
JP2020009274A (en) | Application information providing system and application information providing method |