JP2005346570A - Authentication system, authentication method, and computer program - Google Patents
Authentication system, authentication method, and computer program Download PDFInfo
- Publication number
- JP2005346570A JP2005346570A JP2004167538A JP2004167538A JP2005346570A JP 2005346570 A JP2005346570 A JP 2005346570A JP 2004167538 A JP2004167538 A JP 2004167538A JP 2004167538 A JP2004167538 A JP 2004167538A JP 2005346570 A JP2005346570 A JP 2005346570A
- Authority
- JP
- Japan
- Prior art keywords
- user
- authentication
- server
- identifier
- information
- 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
Abstract
【課題】 複数のアプリケーションサーバに対するユーザの認証を一括して行えるようにするシングルサインオンの機能をユーザに提供するに際し、そのユーザの認証情報を容易に管理することができるようにする。
【解決手段】 それぞれ異なるサービスを提供する複数のWebアプリケーションサーバ1002、1004は、ユーザ情報データベース1003、1005を用いて、各々のサービスの利用者を管理する。一方、各Webアプリケーションサーバ1002、1004の利用者の認証を中継する認証サーバ1006は、識別情報管理データベース1007を用いて複数のWebアプリケーションサーバ1002、1004間でユーザを一意に識別し、各Webアプリケーションサーバ1002、1004の利用者の認証処理を中継するとともにシングルサインオン(SSO)を利用者に提供する。
【選択図】 図2PROBLEM TO BE SOLVED: To easily manage user authentication information when providing a user with a single sign-on function that enables user authentication to a plurality of application servers collectively.
A plurality of Web application servers 1002 and 1004 that provide different services manage users of each service using user information databases 1003 and 1005, respectively. On the other hand, the authentication server 1006 that relays the authentication of the users of the Web application servers 1002 and 1004 uses the identification information management database 1007 to uniquely identify the user among the plurality of Web application servers 1002 and 1004, and It relays the user authentication processing of the servers 1002 and 1004 and provides the user with single sign-on (SSO).
[Selection] Figure 2
Description
本発明は、認証システム、認証方法及びコンピュータプログラムに関し、特に、アプリケーションの利用者を、ネットワークを介して認証するために用いて好適なものである。 The present invention relates to an authentication system, an authentication method, and a computer program, and is particularly suitable for use in authenticating a user of an application via a network.
従来、利用者が、Webアプリケーションサーバにログインするときには、Webアプリケーションサーバは、あらかじめ利用者に対して発行したユーザID及びパスワードと、前記ログイン時に利用者端末から送信されたユーザID及びパスワードとが一致するかどうかを検証し、一致すれば利用者を認証し、そのログインを許可していた。 Conventionally, when a user logs in to a Web application server, the Web application server matches the user ID and password issued to the user in advance with the user ID and password transmitted from the user terminal at the time of login. If it matches, the user is authenticated and the login is permitted.
また、利用者が、複数のWebアプリケーションサーバを利用するときに、それらのうちの一つにログインが許可されることで他のWebアプリケーションサーバにも自動的にログインが許可されるSSO(シングルサインオン)と呼ばれる機能がある。 In addition, when a user uses a plurality of web application servers, an SSO (single sign) in which another web application server is automatically permitted to log in when one of them is permitted to log in. There is a function called On).
特許文献1に記載されているように、一般的に、前記SSOを実現するためには、ユーザID及びパスワードを集約的に管理し、一元的に利用者を認証する認証サーバが用いられている。そして、各アプリケーションサーバは、ユーザID及びパスワード以外の利用者情報(例えば、氏名、住所、電話番号など)を管理していた。
As described in
しかしながら、前述したように、従来の技術では、認証サーバが認証情報を集約的に管理している。したがって、既存のアプリケーションサーバが新たにSSO(シングルサインオン)に参加する際には、そのアプリケーションサーバが予め保持していたユーザID及びパスワードなどの認証情報を認証サーバが管理する認証情報へ移行する必要があり多くの時間と手間がかかる。
また、前記SSO(シングルサインオン)に参加するアプリケーションサーバで提供されるサービス毎にサービスの提供者が異なったり、提供されるサービスのセキュリティレベルも様々であったりする。したがって、全てのアプリケーションサーバの利用者の認証情報を、ある特定の認証サーバで集約的に管理することは、非常に困難なことである。
However, as described above, in the conventional technology, the authentication server collectively manages the authentication information. Therefore, when an existing application server newly participates in SSO (single sign-on), the authentication information such as the user ID and password held in advance by the application server is transferred to the authentication information managed by the authentication server. It takes a lot of time and effort.
In addition, service providers are different for each service provided by an application server participating in the SSO (single sign-on), and the security level of the provided service is various. Therefore, it is very difficult to centrally manage user authentication information of all application servers with a specific authentication server.
一方、前記SSO(シングルサインオン)の標準規格策定団体として、「Liberty Alliance Project」が知られている(http://www.projectliberty.org/)。この「Liberty Alliance」によると、認証サーバにあたるアイデンティティプロバイダ(Identity Provider;IdP)と、アプリケーションサーバにあたるサービスプロバイダ(Service Provide;SP)との間で認証情報の授受を行うことで前記SSO(シングルサインオン)を実現する。また、この「Liberty Alliance」の仕様によると、前記SSO(シングルサインオン)を利用する利用者は、一旦、前記IdP(アイデンティティプロバイダ)にログインすることで、複数のアプリケーションサーバに対するSSO(シングルサインオン)が可能になる。即ち、前記IdP(アイデンティティプロバイダ)は、独立したアプリケーションサービスとして認証情報を持つことが必要であった。 On the other hand, “Liberty Alliance Project” is known (http://www.projectliberty.org/) as a standard setting organization for the SSO (single sign-on). According to the “Liberty Alliance”, the authentication information is exchanged between an identity provider (IdP) corresponding to an authentication server and a service provider (Service Provide; SP) corresponding to an application server, whereby the SSO (single sign-on) is performed. ). Further, according to the specification of the “Liberty Alliance”, a user who uses the SSO (single sign-on) once logs in to the IdP (identity provider) to thereby perform SSO (single sign-on) on a plurality of application servers. ) Becomes possible. That is, the IdP (identity provider) needs to have authentication information as an independent application service.
本発明は、前述の問題点に鑑みてなされたものであり、複数のアプリケーションサーバに対するユーザの認証を一括して行えるようにするシングルサインオンの機能をユーザに提供するに際し、そのユーザの認証情報を容易に管理することができるようにすることを目的とする。 The present invention has been made in view of the above-described problems, and provides a user with a single sign-on function that enables user authentication to a plurality of application servers in a lump. It is intended to be able to manage easily.
本発明の認証システムは、クライアント端末にサービスを提供する複数のアプリケーションサーバと、前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバとを有し、前記認証サーバは、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を管理する識別情報管理手段を有し、前記複数のアプリケーションサーバは、前記クライアント端末のユーザを認証するための認証情報を管理する認証情報管理手段を有することを特徴とする。
また、本発明の他の特徴とするところは、クライアント端末と、前記クライアント端末にサービスを提供する複数のアプリケーションサーバと、前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバとを有する認証システムであって、前記複数のアプリケーションサーバに個別に接続され、前記クライアント端末のユーザを認証するためのユーザ認証情報を含むユーザ情報を格納する複数のユーザ情報データベースと、前記認証サーバに接続され、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を格納する識別情報管理データベースとを有し、前記複数のアプリケーションサーバの各々は、前記ユーザ認証情報を含むユーザ情報を、前記ユーザ情報データベースを用いて管理する認証情報管理手段と、前記認証サーバからの認証要求に基づいて、前記ユーザ情報データベースに登録されているユーザ認証情報を取得して、前記クライアント端末のユーザを認証する認証手段と、前記識別情報に含まれているユーザ識別子を前記認証サーバから取得して、前記クライアント端末のユーザを識別するユーザ識別手段とを有し、前記認証サーバは、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするためのユニークな識別子と、前記複数のアプリケーションサーバ毎に前記識別情報管理ベースに登録された前記ユーザ識別子とを紐付け、その紐付けた情報を前記識別情報として管理する識別情報管理手段と、前記アプリケーションサーバを介して前記クライアント端末からユーザ認証情報と、前記アプリケーションサーバを識別するためのサーバ識別子を受け付け、受け付けたユーザ認証情報の認証要求を前記サーバ識別子が示す前記アプリケーションサーバに行う中継認証手段と、前記複数のアプリケーションサーバの何れかから、前記ユーザ識別子の取得要求があった場合には、その取得要求元であるアプリケーションサーバに対して登録されているユニークな識別子に紐付けられたユーザ識別子を、そのユーザ識別子の取得要求元であるアプリケーションサーバに通知するユーザ識別子通知手段とを有することを特徴とする。
The authentication system of the present invention has a plurality of application servers that provide services to client terminals, and an authentication server for collectively performing authentication of the plurality of application servers of users of the client terminals, The authentication server has identification information management means for managing identification information for uniquely identifying a user of the client terminal among the plurality of application servers, and the plurality of application servers include the identification server It has an authentication information management means for managing authentication information for authenticating a user of a client terminal.
According to another aspect of the present invention, a client terminal, a plurality of application servers that provide services to the client terminal, and a user of the client terminal are collectively authenticated for the plurality of application servers. A plurality of user information for storing user information including user authentication information that is individually connected to the plurality of application servers and that authenticates the user of the client terminal. A database, and an identification information management database for storing identification information for uniquely identifying a user of the client terminal among the plurality of application servers connected to the authentication server. Each of the application servers Acquire user authentication information registered in the user information database based on authentication information management means for managing user information including the user authentication information using the user information database and an authentication request from the authentication server. Authentication means for authenticating the user of the client terminal; and user identification means for acquiring the user identifier included in the identification information from the authentication server and identifying the user of the client terminal; The authentication server is registered in the identification information management base for each of the plurality of application servers and a unique identifier for uniquely identifying a user of the client terminal among the plurality of application servers. The user identifier is linked, and the linked information is used as the identification information. An identification information management means to manage, user authentication information from the client terminal via the application server, and a server identifier for identifying the application server are received, and the server identifier indicates an authentication request for the received user authentication information When there is a request for acquisition of the user identifier from any one of the plurality of application servers and relay authentication means to be performed on the application server, a unique registered for the application server that is the acquisition request source User identifier notifying means for notifying the user identifier associated with the identifier to the application server that is the acquisition request source of the user identifier.
本発明の認証方法は、クライアント端末にサービスを提供する複数のアプリケーションサーバと、前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバとを用いて、前記クライアント端末のユーザを認証する認証方法であって、前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を管理する識別情報管理ステップを行い、前記複数のアプリケーションサーバが、前記クライアント端末のユーザを認証するための認証情報を管理する認証情報管理ステップを行うことを特徴とする。
また、本発明の他の特徴とするところは、クライアント端末にサービスを提供する複数のアプリケーションサーバと、前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバとを用いて、前記クライアント端末のユーザを認証する認証方法であって、前記複数のアプリケーションサーバの各々が、前記クライアント端末のユーザを認証するためのユーザ認証情報を含むユーザ情報を管理する認証情報管理ステップと、前記認証サーバが、前記アプリケーションサーバを介して前記クライアント端末からユーザ認証情報と前記アプリケーションサーバを識別するためのサーバ識別子を受け付け、受け付けたユーザ認証情報の認証要求を前記サーバ識別子が示すアプリケーションサーバに行う中継認証ステップと、前記認証サーバからの認証要求に基づいて、その認証要求を受けたアプリケーションサーバが、前記ユーザ認証情報を取得して、前記クライアント端末のユーザを認証する認証ステップと、前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするためのユニークな識別子と、前記複数のアプリケーションサーバ毎に登録された前記ユーザ識別子とを紐付け、その紐付けた情報を識別情報として管理する識別情報管理ステップと、前記認証サーバが、前記複数のアプリケーションサーバの何れかから、前記ユーザ識別子の取得要求があった場合には、その取得要求元であるアプリケーションサーバに対して登録されているユニークな識別子に紐付けられたユーザ識別子を、そのユーザ識別子の取得要求元であるアプリケーションサーバに通知するユーザ識別子通知ステップと、前記アプリケーションサーバが、前記認証サーバから通知された前記ユーザ識別子を取得して、前記クライアント端末のユーザを識別するユーザ識別ステップとを有することを特徴とする。
The authentication method of the present invention uses a plurality of application servers that provide services to client terminals, and an authentication server that collectively performs authentication for the plurality of application servers of users of the client terminals, An authentication method for authenticating a user of the client terminal, wherein the authentication server manages identification information for uniquely identifying the user of the client terminal among the plurality of application servers. A management step is performed, and the plurality of application servers perform an authentication information management step of managing authentication information for authenticating a user of the client terminal.
According to another aspect of the present invention, a plurality of application servers that provide services to the client terminal and an authentication for collectively performing authentication of the user of the client terminal with respect to the plurality of application servers. An authentication method for authenticating a user of the client terminal using a server, wherein each of the plurality of application servers manages user information including user authentication information for authenticating the user of the client terminal An information management step, wherein the authentication server receives user authentication information and a server identifier for identifying the application server from the client terminal via the application server, and the server identifier receives an authentication request for the received user authentication information. Application shown A relay authentication step performed on the server, an application server that receives the authentication request based on an authentication request from the authentication server acquires the user authentication information and authenticates a user of the client terminal; The authentication server associates a unique identifier for uniquely identifying the user of the client terminal among the plurality of application servers and the user identifier registered for each of the plurality of application servers. And an identification information management step for managing the associated information as identification information, and if the authentication server has requested acquisition of the user identifier from any of the plurality of application servers, the acquisition request The union registered for the original application server A user identifier notifying step of notifying a user identifier associated with a unique identifier to an application server that is a request source of the user identifier, and the application server acquiring the user identifier notified from the authentication server And a user identification step for identifying the user of the client terminal.
本発明のコンピュータプログラムは、クライアント端末にサービスを提供する複数のアプリケーションサーバと、前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバとを用いて、前記クライアント端末のユーザを認証することをコンピュータに実行させるためのコンピュータプログラムであって、前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を管理する識別情報管理ステップを行い、前記複数のアプリケーションサーバが、前記クライアント端末のユーザを認証するための認証情報を管理する認証情報管理ステップを行うことをコンピュータに実行させることを特徴とする。
また、本発明の他の特徴とするところは、クライアント端末にサービスを提供する複数のアプリケーションサーバと、前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバとを用いて、前記クライアント端末のユーザを認証することをコンピュータに実行させるためのコンピュータプログラムであって、前記複数のアプリケーションサーバの各々が、前記クライアント端末のユーザを認証するためのユーザ認証情報を含むユーザ情報を管理する認証情報管理ステップと、前記認証サーバが、アプリケーションサーバを介して前記クライアント端末からユーザ認証情報と前記アプリケーションサーバを識別するためのサーバ識別子を受け付け、受け付けたユーザ認証情報の認証要求を前記サーバ識別子が示すアプリケーションサーバに行う中継認証ステップと、前記認証サーバからの認証要求に基づいて、その認証要求を受けたアプリケーションサーバが、前記ユーザ認証情報を取得して、前記クライアント端末のユーザを認証する認証ステップと、前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするためのユニークな識別子と、前記複数のアプリケーションサーバ毎に登録された前記ユーザ識別子とを紐付け、その紐付けた情報を識別情報として管理する識別情報管理ステップと、前記認証サーバが、前記複数のアプリケーションサーバの何れかから、前記ユーザ識別子の取得要求があった場合には、その取得要求元であるアプリケーションサーバに対して登録されているユニークな識別子に紐付けられたユーザ識別子を、そのユーザ識別子の取得要求元であるアプリケーションサーバに通知するユーザ識別子通知ステップと、前記アプリケーションサーバが、前記認証サーバから通知された前記ユーザ識別子を取得して、前記クライアント端末のユーザを識別するユーザ識別ステップとをコンピュータに実行させることを特徴とする。
The computer program of the present invention uses a plurality of application servers that provide services to a client terminal, and an authentication server for collectively performing authentication for the plurality of application servers of a user of the client terminal, A computer program for causing a computer to authenticate a user of the client terminal, wherein the authentication server uniquely identifies the user of the client terminal among the plurality of application servers. An identification information management step for managing the identification information of the client terminal, and causing the plurality of application servers to execute an authentication information management step for managing authentication information for authenticating a user of the client terminal. To.
According to another aspect of the present invention, a plurality of application servers that provide services to the client terminal and an authentication for collectively performing authentication of the user of the client terminal with respect to the plurality of application servers. A computer program for causing a computer to authenticate a user of the client terminal using a server, wherein each of the plurality of application servers authenticates the user of the client terminal Authentication information management step for managing user information including: user authentication information received by the authentication server from the client terminal via the application server and receiving a server identifier for identifying the application server A relay authentication step for making an authentication request to the application server indicated by the server identifier, and based on the authentication request from the authentication server, the application server that has received the authentication request acquires the user authentication information, and the client terminal An authentication step for authenticating the user, a unique identifier for allowing the authentication server to uniquely identify the user of the client terminal among the plurality of application servers, and for each of the plurality of application servers An identification information management step for associating the registered user identifier and managing the associated information as identification information, and when the authentication server receives an acquisition request for the user identifier from any of the plurality of application servers. If there is an application, the acquisition request source A user identifier notifying step of notifying a user identifier associated with a unique identifier registered to the application server to the application server that is the acquisition request source of the user identifier, and the application server from the authentication server The notified user identifier is acquired, and a user identifying step for identifying the user of the client terminal is executed by a computer.
本発明によれば、クライアント端末にサービスを提供する複数のアプリケーションサーバが、前記クライアント端末のユーザを認証するための認証情報を管理し、前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を管理するようにしたので、シングルサイトオン(SSO)の対象となる全てのアプリケーションサーバが持つユーザの認証情報を統一化したり、特定の認証サーバで管理したりすることなく、SSOの機能をクライアント端末のユーザに提供することができるようになる。 According to the present invention, a plurality of application servers that provide services to client terminals manage authentication information for authenticating users of the client terminals, and authentication of the users of the client terminals to the plurality of application servers is performed collectively. Since the authentication server for performing the management manages identification information for uniquely identifying the user of the client terminal among the plurality of application servers, the single site on ( It is possible to provide the SSO function to the user of the client terminal without unifying user authentication information held by all application servers that are subject to (SSO) or managing by a specific authentication server. .
次に、本発明の一実施形態を、図面に基づいて説明する。
図1は、本発明の実施形態を示し、インターネットを用いた認証システムの構成の一例を表した図である。
図1において、インターネット1008上には、インターネットサービスプロバイダー(Internet Service Provider; ISP)などの接続手段を用いて世界的規模でコンピュータが相互に通信可能に接続される。各コンピュータは、TCP/IPなどの接続プロトコルで相互に通信可能である。このような構成のシステムにおいて、HTTP(Hypertext Transfer Protocol)を用いたWWW(World Wide Web)サービスは、多くの利用者に利用されている。
Next, an embodiment of the present invention will be described based on the drawings.
FIG. 1 is a diagram showing an example of the configuration of an authentication system using the Internet according to an embodiment of the present invention.
In FIG. 1, computers are connected on the Internet 1008 so that they can communicate with each other on a global scale using connection means such as an Internet Service Provider (ISP). The computers can communicate with each other using a connection protocol such as TCP / IP. In a system having such a configuration, a WWW (World Wide Web) service using HTTP (Hypertext Transfer Protocol) is used by many users.
図1は、以上のようにしてインターネット1008上に接続されたクライアントコンピュータ1001と、クライアントコンピュータ1001を利用する利用者が利用できる複数のWebアプリケーションサーバ1002、1004とが、インターネット1008を介して相互に接続されている様子を表す。Webアプリケーションサーバ1002、1004には、それぞれ、各Webアプリケーションサーバ1002、1004からサービスの提供を受ける利用者の情報(ユーザ情報)が登録されるユーザ情報データベース1003、1005が接続されている。
FIG. 1 shows that a
また、図1の認証サーバ1006は、前述した複数のWebアプリケーションサーバ1002、1004における利用者の認証を仲介するサーバである。認証サーバ1006には、利用者の識別情報が登録される識別情報管理データベース1007が接続されている。
Also, the
図2は、図1に示した本実施形態の認証システムの更に詳細な構成の一例を示す図である。なお、図2では、1台のWebアプリケーションサーバ1002だけを示しているが、図1に示したWebアプリケーションサーバ1004もWebアプリケーションサーバ1002と同様の構成を有している。さらに、図2では、ユーザ情報データベース1003だけを示しているが、図1に示したユーザ情報データベース1005もユーザ情報データベース1003と同様の構成を有している。
FIG. 2 is a diagram showing an example of a more detailed configuration of the authentication system of the present embodiment shown in FIG. 2 shows only one
図2において、クライアントコンピュータ1001には、ユーザエージェント2002が導入されている。ユーザエージェント2002としては、Netscape(登録商標)や、Mozilla(登録商標)など、一般的に入手可能なものを利用することができる。ユーザエージェント2002は、利用者が利用を所望するWebアプリケーションサーバ1002、1004に、前記HTTPを主としたプロトコルで接続を行う。
In FIG. 2, a user agent 2002 is installed in the
Webアプリケーションサーバ1002、1004は、Webサーバ部2004と、利用者の認証を行う認証エージェント2005と、Webアプリケーション本体2006とを備えて構成される。ユーザエージェント2002から発せられたHTTP要求は、Webサーバ部2004によって受信される。そうすると、Webサーバ部2004は、受信したHTTP要求の内容を解析する。
Each of the
このようにしてWebサーバ部2004によって内容が解析されたHTTP要求は、認証エージェント2005において行われる認証処理を経てはじめて、Webアプリケーション本体2006に転送される。
The HTTP request whose contents are analyzed by the Web server unit 2004 in this way is transferred to the Web application
認証エージェント2005は、認証情報管理部2005a、認証処理部2005b、及びユーザ識別部2005cを備えて構成される。
一般的に、Webアプリケーションサーバ1002、1004には、利用者を登録するために、アプリケーション毎に用意されたユーザ情報データベース1003、1005が接続される。本実施形態のユーザ情報データベース1003、1005は、市販あるいは無料で手に入れることができるリレーショナルデータベース管理サーバ上に配置される。また、ユーザ情報データベース1003、1005は、データベースベンダーの独自プロトコル、あるいはJDBCなど標準技術を用いた接続方式により、Webアプリケーションサーバ1002、1004に接続される。
The
Generally,
認証情報管理部2005aは、ユーザ情報を取得、追加、変更、削除するために、ユーザ情報データベース1003に接続される。
また、認証情報管理部2005aは、特定のユーザが登録したユーザ情報の中のユーザを識別するためのユーザ識別子(以下、ユーザIDと称する)が変更又は削除された場合には、後述する認証サーバ1006の識別情報管理部2012に識別情報変更要求を送信する。
The authentication
In addition, the authentication
認証サーバ1006の識別情報管理部2012は、前記送信された識別情報変更要求に基づいて、識別情報管理データベース1007中に、前記変更又は削除されたユーザIDを含む識別情報が存在するか否かを判断する。この判断の結果、識別情報管理データベース1007中に、前記変更又は削除されたユーザIDを含む識別情報が存在する場合、その識別情報を、前記送信された識別情報変更要求に応じて変更又は削除する。
The identification
認証処理部2005bは、主に利用者が入力したユーザIDとパスワードとをユーザ情報データベース1003、1005に問合せ、前記利用者を認証する機能を有する。本実施形態においては、認証処理部2005bは、後述する認証サーバ1006の中継認証処理部2011から送信された中継認証要求を受信し、受信した中継認証要求に基づいて、ユーザIDや、パスワード等の認証情報をユーザ情報データベース1003、1005から受け取り、利用者を認証する。
The
ユーザ識別部2005cは、利用者を識別するための後述する認証フォームをクライアントコンピュータ1001に送信する。
The
具体的に説明すると、この認証フォームは、ユーザエージェント2002を介して利用者に対して送信される。そして、利用者は、ユーザIDや、パスワード等の認証情報を認証フォームに入力する。認証フォームに入力された認証情報は、認証サーバ1006へ送信される。
More specifically, this authentication form is transmitted to the user via the user agent 2002. And a user inputs authentication information, such as a user ID and a password, into an authentication form. The authentication information input to the authentication form is transmitted to the
一方、ユーザ識別部2005cは、認証サーバ1006からユーザ確認情報を受け取った場合には、後述する認証サーバ1006のユーザ識別子通知部2010にユーザ確認情報を送信する。そして、ユーザ認識部2005cは、そのユーザ確認情報に基づくユーザIDを認証サーバ1006のユーザ識別子通知部2010から取得する。
前記ユーザ確認情報は、後述する認証サーバ1006のユーザ識別子通知部2010が、ある特定のユーザの各アプリケーションサーバ1002、1004上のユーザIDを通知するために、ユーザIDと紐付けられた短ストリングとして生成される。
On the other hand, when receiving the user confirmation information from the
The user confirmation information is a short string associated with the user ID so that a user
本実施形態においては、前記ユーザ確認情報は、認証サーバ1006からユーザエージェント2002を介してWebアプリケーションサーバ1002、1004にHTTPリダイレクトすることによりユーザ識別部2005cで受け取られる。このようにすることにより、後述する認証フォームを送信することなくユーザエージェントを利用する利用者を(ユーザ確認情報により)識別することができる。なお、前記HTTPリダイレクトとは、WWWでデータの送受信に使われるHTTPにおけるサーバからの応答の種類の一つで、URL(Uniform Resource Locator)が変更されたことを知らせることをいう。
In this embodiment, the user confirmation information is received by the
認証情報管理部2005aと認証サーバ1006の識別情報管理部2012との間、認証処理部2005bと認証サーバ1006の中間認証処理部2011との間、及びユーザ識別部2005cと認証サーバ1006のユーザ識別子通知部2010との間の接続は、例えば、W3C(World Wide Web Consortium)が定めるSOAP1.1(Simple Object Access Protocol Version1.1)によるRPC(Remote Produce Call)によって行われる。
User identifier notification between the authentication
ユーザ情報データベース1003、1005は、ユーザIDや、パスワードをはじめとした、利用者に固有の情報を格納するテーブルとして実現される。このユーザ情報データベース1003は、リレーショナルデータベース管理サーバに対してSQL(Structured Query Language)などの問合せ言語を発行することによって、所望のユーザIDを持つ利用者のユーザ情報を取得、変更、削除することができるように構成されている。
The
認証サーバ1006は、各Webアプリケーションサーバ1002、1004に対して、利用者の認証を中継するものである。
認証サーバ1006は、Webサーバ部2009、ユーザ識別子通知部2010、中継認証処理部2011、及び識別情報管理部2012を備えて構成される。
The
The
認証サーバ1006に対して、ユーザエージェント2002からユーザの認証要求が行われた場合、Webサーバ部2009によって、その認証要求が受信される。受信された認証要求は、Webサーバ部2009でその内容が解析され、中継認証処理部2011に転送される。
When a user authentication request is made to the
本実施形態の認証システムにおける特徴の一つは、認証サーバ1006がユーザ情報データベースを持たないことである。認証サーバ1006は、中継認証処理部2011により、対象となるWebアプリケーションサーバ1002、1004の認証エージェント2005に認証を依頼する。本実施形態では、中継認証処理部2011は、受け取ったユーザの認証情報を、前述したSOAPによるRPCにより、認証エージェント2005内の認証処理部2005bに送信してユーザの認証要求を行う。
One of the features of the authentication system of this embodiment is that the
ユーザ識別子通知部2010は、Webアプリケーションサーバ1002、1004のユーザ識別部2005cから送信されたユーザ確認情報によるユーザIDの取得要求を受け付け、ユーザ確認情報に基づくユーザIDをWebアプリケーションサーバ1002、1004のユーザ識別部2005cに送信する。
The user
また、ユーザ識別子通知部2010は、利用者が、中継認証処理部2011を介して特定のWebアプリケーションサーバ1002、1004によって認証された場合に、ユーザ確認情報を生成する。
また、ユーザ識別子通知部2010は、利用者が、中継認証処理部2011を介して特定のWebアプリケーションサーバ1002によって認証された後に、その特定のWebアプリケーションサーバ1002とは異なるWebアプリケーションサーバ1004に接続する際にも、ユーザ確認情報を生成する。
そして、ユーザ識別子通知部2010は、HTTPリダイレクトによりユーザエージェント2002を介して利用者が接続しようとするWebアプリケーションサーバ1004に、前記生成したユーザ確認情報を送信する。
識別情報管理部2012は、識別情報管理データベース1007に対して利用者の識別情報(ユーザ識別情報)を生成、変更、削除する処理を担う。
In addition, the user
The user
Then, the user
The identification
識別情報管理データベース1007は、認証サーバ1006において、後述する利用者の識別情報を格納するためのテーブルとして実現される。この利用者の識別情報は、リレーショナルデータベース管理サーバに対してSQLなどの問合せ言語を発行することによって取得、変更、削除することができるようになっている。
The identification
図3は、ユーザ情報データベース1003、1005で管理される、ユーザ情報テーブルの登録内容の一例を概念的に示す図である。
認証情報管理部2005aは、利用者を識別するためのユーザIDや、パスワード等の認証情報を含む利用者に固有の情報を、このユーザ情報テーブル3001を用いることにより管理することができるが、本実施形態においては、ユーザ情報テーブル3001により、ユーザIDとパスワードとを管理する場合を例に挙げて説明する。なお、Webアプリケーション1002、1004を識別するためのサービスIDなども、このユーザ情報テーブル3001を用いて管理することができる。
FIG. 3 is a diagram conceptually illustrating an example of registered contents of the user information table managed by the
The authentication
ユーザ情報データベース1003、1005は、各Webアプリケーションサーバ1002、1004で個別に管理されるため、同一の利用者でもWebアプリケーションサーバ1002、1004が異なるとユーザIDが異なる場合がある。
Since the
図4は、識別情報管理データベース1007で管理される、識別情報管理テーブルの登録内容の一例を概念的に示す図である。本実施形態においては、識別情報管理テーブル4000に登録される識別情報は、複数のWebアプリケーションサーバ1002、1004に登録された特定の利用者を一意に識別するためのユニーク識別子(以下、SSOIDと称する)4001と、Webアプリケーションサーバ1002、1004を利用する利用者のユーザID4002と、Webアプリケーションサーバ1002、1004を識別するサービスID(ServiceID)4003とにより構成される。
FIG. 4 is a diagram conceptually illustrating an example of registered contents of the identification information management table managed by the identification
図4に示す識別情報管理テーブル4000おいて、一行目は、ある利用者が、サービスIDが“serviceA”で識別されるWebアプリケーションサーバ1002において、ユーザIDを“ichiro”で登録していることを示す。同様に2行目は、サービスIDが“serviceB”で識別されるWebアプリケーションサーバ1004において、ユーザIDを“y−ichiro”で登録していることを示す。これら二つのユーザID(“ichiro”、“y−ichiro”)が同一のSSOID(“ssoid01”)に紐付けられて管理されることで、認証サーバ1006において、ユーザIDが“ichiro”である利用者と、ユーザIDが“y−ichiro”である利用者とは同一の利用者であると判断される。
In the identification information management table 4000 shown in FIG. 4, the first line indicates that a user has registered a user ID “ichiro” in the
図5は、Webアプリケーションサーバ1002、1004が利用者を認証する際にユーザエージェント2002に送信される認証フォームの一例を示した図である。
利用者は、図5に示す認証フォームに従い、ユーザIDやパスワードといったWebアプリケーションサーバ1002、1004へ接続するための認証情報を入力する。
図5(a)は、認証フォームを生成するスクリプトであるHTML(HyperText Markup Language)5000aの一例を示す。また、図5(b)は、図5(a)のHTML5000aにより生成された認証フォームの認証画面5000bの一例を示す。この認証画面5000bは、ユーザエージェント2002によりクライアントコンピュータ1001のディスプレイに表示される。
FIG. 5 is a diagram illustrating an example of an authentication form transmitted to the user agent 2002 when the
In accordance with the authentication form shown in FIG. 5, the user inputs authentication information for connecting to the
FIG. 5A shows an example of an HTML (HyperText Markup Language) 5000a which is a script for generating an authentication form. FIG. 5B shows an example of an authentication
図5(a)に示すHTML5000aにおいて、5001は、認証サーバ1006へ認証情報を送信するためのフォーム送信先アドレス(URL)である。認証フォームに入力された認証情報は、利用者が、クライアントコンピュータ1001のマウス等を操作して、認証画面5000bの“Submit”ボタン5011を押すことにより、認証サーバ1006へ送信される。送信された認証情報は、認証サーバ1006のWebサーバ部2009を介して、中継認証処理部2011が受信する。そして、中継認証処理部2011は、受信した認証情報を、認証エージェント2005内の認証処理部2005bに送信してユーザの認証要求を行う。
In the
5002は、利用者が入力する認証情報を定義するためのスクリプトである。本実施形態においては、ユーザIDとパスワードとが、認証情報として定義される。
5003は、認証サーバ1006において、クライアントコンピュータ1001から受信した認証情報により利用者が正常に認証された場合のWebアプリケーションサーバ1002、1004のリダイレクト先を示すスクリプトである。
5004は、認証サーバ1006において、クライアントコンピュータ1001から受信した認証情報により利用者が正常に認証されなかった場合のWebアプリケーションサーバ1002、1004のリダイレクト先を示すスクリプトである。
5005は、認証フォームを生成したWebアプリケーションサーバ1002、1004を識別するためのサービスIDを示すスクリプトである。
A
A
A
認証サーバ1006の中継認証処理部2011は、図6に示すサービス情報テーブル6000を記述した構成情報記述ファイルを読み込むことにより、各Webアプリケーションサーバ1002、1004の認証処理部2005bのアクセス先を取得する。このサービス情報テーブル6000は、各Webアプリケーションサーバ1002、1004を識別するサービスID6001と、そのWebアプリケーションサーバ1002、1004に対応する認証処理部2005bのアクセス先(SOAP End Point)6002とにより構成される。
The relay
次に、本実施形態における認証システムにおいて、認証サーバ1006を介してWebアプリケーションサーバ1002、1004へ接続する利用者の認証を行う方法と、Webアプリケーションサーバ1002、1004にアクセスする利用者を識別する方法とを、図7〜図10のフローチャートを用いて説明する。
Next, in the authentication system according to the present embodiment, a method of authenticating a user who connects to the
図7は、利用者が、ユーザエージェント2002を介してWebアプリケーションサーバ1002、1004に接続した場合に、Webアプリケーションサーバ1002、1004が、認証サーバ1006を介して、その利用者を識別する際の認証システムの動作の一例を説明するフローチャートである。
FIG. 7 shows the authentication when the
まず、クライアントコンピュータ1001に配設されたマウスやキーボードなどを用いて利用者が所定の操作を行うと、クライアントコンピュータ1001にインストールされたユーザエージェント2002は、Webアプリケーションサーバ1002、1004に接続要求(リクエスト)を行う(ステップS7001)。
First, when a user performs a predetermined operation using a mouse or a keyboard disposed on the
この接続要求は、主として、利用者がクライアントコンピュータ1001のマウスやキーボードなどを操作して、URL(Uniform Resource Locator)をユーザエージェント2002に対して入力することによって行なわれる。ユーザエージェント2002から送信された接続要求は、Webアプリケーションサーバ1002、1004のWebサーバ部2004によって受信され、認証エージェント2005内のユーザ識別部2005cに転送される。
This connection request is mainly made when a user operates a mouse or a keyboard of the
ユーザ識別部2005cは、ユーザエージェント2002からの接続要求を受信すると、まず接続要求が認証処理を行うためのログインページへの接続要求であるか否かを判断する(ステップS7002)。
このステップS7002において、ユーザエージェント2002からの接続要求がログインページへの接続要求であれば、利用者に認証情報を要求する必要があるため、後述するステップS7012に処理を進める。
Upon receiving the connection request from the user agent 2002, the
In this step S7002, if the connection request from the user agent 2002 is a request to connect to the login page, it is necessary to request authentication information from the user, so the process proceeds to step S7012, which will be described later.
一方、ステップS7002において、ユーザエージェント2002からの接続要求がログインページへの接続要求でない場合は、ユーザ識別部2005cは、利用者が既に認証済みであるか否かの判断、即ち、ログインページを表示せずにWebアプリケーションサーバ1002、1004を利用させて良いか否かの判断を、すでに接続されたセッションが存在するか否かで判断する(ステップS7003)。
On the other hand, if the connection request from the user agent 2002 is not a request to connect to the login page in step S7002, the
本実施形態においては、有効なセッションの存在確認は、Cookieと呼ばれる技術を使用することで実現する。Cookieは、Webサーバ部2004とユーザエージェント2002との間で、前回の接続状態を持続的に保持するための技術として広く用いられているものである。本実施形態では、セッションを識別するユーザエージェント識別子(以下、セッションIDと称する)をセッションCookieとして保持する。セッションCookieとして保持されるセッションIDは、Webアプリケーションサーバ1002、1004とユーザエージェント2002との間に確立したセッションに対して1対1に生成されるセッションオブジェクトを一意に識別できる識別子である。
In the present embodiment, the existence confirmation of a valid session is realized by using a technique called Cookie. Cookie is widely used as a technique for continuously maintaining the previous connection state between the Web server unit 2004 and the user agent 2002. In this embodiment, a user agent identifier for identifying a session (hereinafter referred to as a session ID) is held as a session cookie. The session ID held as the session cookie is an identifier that can uniquely identify a session object generated one-on-one with respect to a session established between the
セッションCookieは、ユーザエージェント2002が起動して初めてWebアプリケーションサーバ1002、1004にアクセスした際の応答に対して発行される。一般に、Webアプリケーションサーバ1002、1004には、利用者が操作するためのログアウトボタンが設けられており、利用者がこのログアウトボタンを押すことで、セッションを終了することができる。そして、このセッションの終了に伴って、Webアプリケーションサーバ1002、1004におけるセッションオブジェクトも破棄される。
The session cookie is issued in response to a response when accessing the
ステップS7003において、有効なセッションIDが確認された場合には、ユーザ識別部2005cは、すでに認証済みの利用者であると判断して、認証エージェントの処理を終了し、Webアプリケーション本体2006へ処理要求を転送する(ステップS7004)。
If a valid session ID is confirmed in step S7003, the
一方、ステップS7003において有効なセッションIDが確認されない場合には、ユーザ識別部2005cは、ユーザエージェント2002からの接続要求にユーザ確認情報が含まれるか否かを判断する(ステップS7005)。
On the other hand, if a valid session ID is not confirmed in step S7003, the
このステップS7005において、ユーザ確認情報が含まれていないと判断された場合には、ユーザ識別部2005cは、利用者の認証状況を確認するために認証サーバ1006へユーザエージェントを転送し(HTTPリダイレクトを行い)、ユーザ認証の確認要求を行う。ユーザエージェントを認証サーバ2008へ転送する際には、転送元であるWebアプリケーションサーバ1002、1004を示すサービスIDがURLパラメータとして付加される(ステップS7009)。
If it is determined in step S7005 that the user confirmation information is not included, the
ユーザ認証の確認要求は、認証サーバ1006のWebサーバ部2009を介してユーザ識別子通知部2010が受け取る。ユーザ識別子通知部2010は、認証サーバ1006と転送されたユーザエージェントとの間におけるセッション情報を、セッションIDを取得することにより確認する(ステップS7010)。ここで取得されるセッションIDは、認証サーバ1006とユーザエージェントとの間に確立したセッションに対して1対1に生成されるセッションオブジェクトを一意に識別できる識別子である。
The user
セッションCookieは、ユーザエージェント2002が起動して初めて認証サーバ1006を介してWebアプリケーションサーバ1002、1004に認証された際に発行される。
そして、ステップS7010において、有効なセッションIDが取得された場合には、ユーザ確認情報(ユーザID)を取得する際の認証システムの動作の一例を説明するフローチャート(図8)に進む。
The session cookie is issued when the
In step S7010, when a valid session ID is acquired, the process proceeds to a flowchart (FIG. 8) for explaining an example of the operation of the authentication system when acquiring user confirmation information (user ID).
一方、ステップS7010において、有効なセッションIDが取得されない場合には、ユーザ識別子通知部2010は、Webアプリケーションサーバ1002、1004のログインページにユーザエージェントを転送する(ステップS7011)。
ユーザエージェントがログインページに転送されると、ユーザ識別部2005cは、図5に示した認証フォームに基づいてログインページを生成し(ステップS7012)、生成したログインページを、Webサーバ部2004を介してユーザエージェント2002に送信する(ステップS7013)。
ユーザエージェント2002がログインページを受信すると、中継認証を行う際の認証システムの動作の一例を説明するフローチャート(図9)に進む。
On the other hand, if a valid session ID is not acquired in step S7010, the user
When the user agent is transferred to the login page, the
When the user agent 2002 receives the login page, the process proceeds to a flowchart (FIG. 9) for explaining an example of the operation of the authentication system when relay authentication is performed.
前記ステップS7005において、ユーザ確認情報が取得された場合には、ユーザ識別部2005cは、認証サーバ1006のユーザ識別子通知部2010に、ユーザ確認情報に従うユーザIDを取得するため、ユーザ確認情報を送信し、ユーザIDの通知要求を行う。
ユーザIDの通知要求を受信した認証サーバ1006の識別子通知部2010は、ユーザIDの通知要求内のユーザ確認情報に対応するユーザIDを要求元のユーザ識別部2005cに通知する(ステップS7006)。
When the user confirmation information is acquired in step S7005, the
The
ユーザ識別部2005cは、認証サーバ1006から利用者のユーザIDを受信する(ステップS7007)。そして、認証フォームを掲示することなく利用者を識別して、Webアプリケーション本体2006へのアクセスを許可する。そして、利用者が利用するユーザエージェント2002との間にセッションIDを生成して新しいセッションを開始する(ステップS7008)。
The
図8は、Webアプリケーションサーバ1002、1004がユーザエージェント2002を利用する利用者を識別するために、認証サーバ1006にユーザエージェントを転送し、ユーザ認証の確認要求を行い、利用者のユーザ確認情報を取得するまでの認証システムの動作の一例を説明するフローチャートである。
図7のステップS7010において、ユーザ認証の確認要求を行うWebアプリケーションサーバ1002、1004からユーザエージェントが認証サーバ1006に転送され、ユーザ識別子通知部2010により有効なセッションIDが取得された場合、ユーザ識別子通知部1010は、そのセッションIDに対応するセッションオブジェクトからSSOIDを取得する(ステップS8001)。
FIG. 8 shows that the
In step S7010 of FIG. 7, when a user agent is transferred from the
後述する通り、認証サーバ1006において、ユーザエージェント2002から送信された認証情報により利用者を認証した際に、その認証情報のユーザIDと認証先のWebアプリケーションサーバ1002、1004を識別するサービスIDに紐付けられているSSOIDがセッションオブジェクトに付加される。
As will be described later, when the user is authenticated by the authentication information transmitted from the user agent 2002 in the
ユーザ識別子通知部2010は、識別情報管理部2012を介して取得したSSOIDと、認証確認要求に含まれる要求元のWebアプリケーションサーバ1002、1004を識別するサービスIDとが紐付けられている識別情報を、識別情報管理データベース1007で管理される識別情報管理テーブル4000から取得し、取得した識別情報内のユーザIDを得る(ステップS8002)。
The user
このステップS8002において、ユーザIDが得られない場合には、ユーザ識別子通知部2010は、Webアプリケーションサーバ1002、1004のログインページにユーザエージェントを転送する。ユーザエージェントがログインページに転送されると、ユーザ識別部2005cは、図5に示した認証フォームに基づいたログインページを生成し(ステップS8003)、生成したログインページを、Webサーバ部2004を介してユーザエージェント2002に送信する(ステップS8004)。
If the user ID cannot be obtained in step S8002, the user
ユーザエージェント2002がログインページを受信すると、中継認証を行う際の認証システムの動作の一例を説明するフローチャート(図9)に進む。 When the user agent 2002 receives the login page, the process proceeds to a flowchart (FIG. 9) for explaining an example of the operation of the authentication system when relay authentication is performed.
一方、ステップS8002において、ユーザIDが得られた場合には、ユーザ識別子通知部2010は、得られたユーザIDに対応するユーザ確認情報を生成する(ステップS8005)。
ユーザ確認情報を生成すると、ユーザ識別子通知部2010は、ユーザ確認情報をURLパラメータとしてユーザエージェント2002へ転送する(ステップS8006)。
以降、図7に示すように、ステップS8006で転送されたユーザ確認情報をもってユーザエージェント2002がアプリケーションサーバ1002、1004にリクエスト(接続要求)を送信するため、図7のステップS7007において、Webアプリケーションサーバ1002、1004は、ユーザエージェント2002を利用する利用者を識別することができる。
On the other hand, when the user ID is obtained in step S8002, the user
When the user confirmation information is generated, the user
Thereafter, as shown in FIG. 7, since the user agent 2002 transmits a request (connection request) to the
図9は、図7及び図8のフローチャートでユーザエージェント2002にログインページが送信された後に、ログインページに従った利用者の認証情報を認証サーバ1006が受け取って、利用者を認証する際の認証システムの動作の一例を説明するフローチャートである。
まず、ログインページをユーザエージェント2002が受け取ると、図5(b)に示すような認証画面5000bが、クライアントコンピュータ1001のディスプレイに表示される。利用者は、認証画面5000bに従い、接続しようとするWebアプリケーションサーバ1002、1003に対する認証情報を入力し、Submitボタン5011を押す。
FIG. 9 shows the authentication when the
First, when the user agent 2002 receives the login page, an
ここで、認証情報は、事前に利用者によりアプリケーションサーバ1002、1004に登録されているものである。本実施形態においては、認証情報は、ユーザIDとパスワードとにより構成される。
Here, the authentication information is registered in advance in the
利用者により認証情報が入力され、Submitボタン5011が押されると、図5(a)に示したように、認証情報及びログインページを生成し、ログインページを送信したWebアプリケーションサーバ1002、1004を識別するサービスIDが認証サーバ1006に送信される(ステップS9001)。
When the authentication information is input by the user and the Submit
認証サーバ1006に送信された認証情報は、Webサーバ部2009を介して中継認証処理部2011が受け取る。
中継認証処理部2011は、受け取ったサービスIDに対応するWebアプリケーションサーバ1002、1004の認証処理部2005bのアクセス先を図6に示したサービス情報テーブル6000から取得し、受け取った認証情報中のユーザIDを、取得したアクセス先に送信し、認証要求を行う(ステップS9002)。
認証要求を受け取ったWebアプリケーションサーバ1002、1004の認証処理部2005bは、認証要求を解析しユーザIDを取得する(ステップS9003)。
The authentication information transmitted to the
The relay
Upon receiving the authentication request, the
アプリケーションサーバ1002、1004の認証処理部2005bと認証サーバ1006の中継認証処理部2011は、前述したとおり、W3C(World Wide Web Consortium)が定めるSOAP1.1によるRPCによって接続される。
As described above, the
ユーザIDを取得した認証処理部2005bは、そのユーザIDに紐付けられている認証情報をユーザ情報データベース1003、1005から取得し、認証サーバ1006の中継認証処理部2011に送信する(ステップS9004)。
中継認証処理部2011は、アプリケーションサーバ1002、1004の認証処理部2005bから受け取った認証情報と、ユーザエージェント2002から取得した認証情報とが一致するかどうかを判断する。本実施形態においては、双方から受け取ったパスワードが一致するかどうかを判断して、認証情報が一致するかどうかを判断する(ステップS9005)。
The
The relay
このステップS9005において、認証情報が一致しなかった場合、中継認証処理部2011は、認証情報を送信したユーザエージェント2002をログインページの認証フォームで指定されている認証失敗時のURL(図5(a)スクリプト5004に記述されているURL)へ転送する(ステップS9006)。
一方、ステップS9005において、認証情報が一致した場合、SSOIDを生成する際の認証システムの動作の一例を説明するフローチャート(図10)に進む。
In step S9005, if the authentication information does not match, the relay
On the other hand, if the authentication information matches in step S9005, the process proceeds to a flowchart (FIG. 10) for explaining an example of the operation of the authentication system when generating the SSOID.
図10は、図9のステップS9005において、認証情報が一致した場合、複数のWebアプリケーションサーバ1002、1004間で、利用者を一意に特定するためのSSOIDを取得、もしくは生成するとともに、ログインページを送信し利用者を認証しようとするWebアプリケーションサーバ1002、1004に利用者のユーザIDを通知するためのユーザ確認情報を生成して、ユーザエージェント2002へ送信する際の認証システムの動作の一例を説明するフローチャートである。
FIG. 10 shows that when authentication information matches in step S9005 of FIG. 9, an SSOID for uniquely identifying a user is acquired or generated between the plurality of
図9のステップS9005において、認証サーバ1006の中継認証処理部2011により、ユーザエージェント2002を介して利用者から受け取った認証情報が正しいと判断された場合、中継認証処理部2011は、ユーザIDとサービスIDとをユーザ識別子通知部2010に転送する。ユーザ識別子通知部2010は、ユーザIDとサービスIDとをキーにして、識別情報管理部2012を介して識別情報管理データベース1007から識別情報を検索し、SSOID(1)を取得する(ステップS1101)。
In step S9005 of FIG. 9, when the relay
このステップS1101において、識別情報が検索されずSSOID(1)が取得できない場合には、ユーザ識別子通知部2010は、新規にSSOIDを発行し、ユーザIDとサービスIDとに紐付けて、識別情報管理データベース1007内の識別情報管理テーブル4000に、識別情報を新規に登録しステップS1107に進む(ステップS1102)。
If the identification information is not searched in step S1101 and the SSOID (1) cannot be acquired, the user
一方、ステップS1101において、識別情報が検索されSSOID(1)が取得された場合には、ユーザ識別子通知部2010は、認証情報を送信したユーザエージェント2002と認証サーバ1006との間に有効なセッションが確立されているか否かを判断する(ステップS1103)。この判断の結果、有効なセッションが確立されていない場合には、後述するステップS1107に進む。
On the other hand, when the identification information is searched in step S1101 and the SSOID (1) is acquired, the user
一方、ステップS1103において、有効なセッションが確立されていると判断された場合には、ユーザ識別子通知部2010は、セッション情報からSSOID(2)を取得する(ステップS1104)。
On the other hand, when it is determined in step S1103 that a valid session has been established, the user
次に、ユーザ識別子通知部2010は、識別情報管理データベース1007から取得したSSOID(1)と、セッション情報から取得したSSOID(2)とが同一のものか否かを判断する(ステップS1105)。この判断の結果、二つのSSOIDが同一のものであればステップS1107に進む。
Next, the user
一方、ステップS1105において、SSOID(1)とSSOID(2)とが異なる場合、SSOID(1)を含む、識別情報管理データベース1007内の識別情報管理テーブル4000に登録されているすべての識別情報のSSOIDをSSOID(2)に変更し、SSOID(1)を含む全ての識別情報を識別情報管理テーブル4000から削除する(ステップS1106)。
なお、ある利用者が、複数のWebアプリケーションサーバ1002、1004においてそれぞれはじめて認証される際に、認証時のユーザエージェント2002と認証サーバ1006との間で確立されるセッションIDが異なる場合、認証サーバ1006のユーザ識別子通知部2010においては、SSOIDに紐付けられる認証情報(ユーザID)とサービスIDとがそれぞれ異なるように識別情報が生成される。
On the other hand, if SSOID (1) and SSOID (2) are different in step S1105, SSOIDs of all identification information registered in identification information management table 4000 in identification
When a user is authenticated for the first time in a plurality of
ここで、各識別情報が生成された後、認証サーバ1006とユーザエージェント2002との間でセッションが確立している最中に、複数のWebアプリケーションサーバ1002、1004にアクセスした際には、SSOIDが異なる利用者の識別情報を特定のSSOIDに統一するようにしている。このようにして、複数のWebアプリケーションサーバ1002、1004間で利用者を一意に特定するための識別情報を自動生成することが本実施形態の認証システムの特徴の一つである。
Here, after each identification information is generated, when accessing a plurality of
以上のようにしてSSOIDの取得処理及び生成処理が終了すると、ユーザ識別子通知部2010は、認証サーバ1006とユーザエージェント2002との間のセッション情報にSSOIDを付加し、ユーザ確認情報を生成する(ステップS1107)。なお、セッション情報が既に存在する場合にはそのセッション情報を利用し、存在しない場合には新たにセッション情報を生成する。
When the SSOID acquisition process and the generation process are completed as described above, the user
ステップS1107において、ユーザ確認情報が生成され、有効なセッションが確立されると、ユーザ識別子通知部2010は、認証確認の要求元であるWebアプリケーションサーバ1002、1004へユーザ確認情報をURLパラメータとしてユーザエージェント2002へ転送する(ステップS11008)。
なお、ユーザ確認情報の転送先は、図5(a)に示したHTML5000aのスクリプト5003で指定されている認証成功時のURLである。
In step S1107, when user confirmation information is generated and a valid session is established, the user
The transfer destination of the user confirmation information is the URL at the time of successful authentication specified in the
以上、図7〜図10を用いて本実施形態の認証システムにおける利用者の認証方法、識別方法、及び識別子生成方法を説明した。本実施形態では、Webアプリケーションサーバ1002、1004が、利用者のユーザ識別子(ユーザID)を取得するためにユーザ確認情報を用いて行っているが、このユーザ識別子の取得方法は、標準化団体であるOASIS(Organization for the Advancement of Structured Information Standards)が策定しているSAML(Security Assertion Markup Language)を採用することが望ましい(http://www.oasis−open.org)。
The user authentication method, identification method, and identifier generation method in the authentication system of this embodiment have been described above with reference to FIGS. In this embodiment, the
このSAMLによれば、利用者の認証情報など、機密性の高い情報を安全にWebアプリケーションサーバ1002、1004に転送することができる。前記SAMLの詳細に関しては、OASISが発行する標準仕様書Assertions and Protocol for the OASIS Security Assertion Markup Language (SAML) V1.1、及びBindings and Profiles for OASIS Security Assertion Markup Language (SAML) V1.1で詳細に述べられている。ユーザ識別子の取得方法は、SAMLの仕様の中でもSAML Artifact/Browser Profileと呼ばれる、認証サーバ1006が認証した利用者の認証情報をWebアプリケーションサーバ1002、1004に対して通知する技術を採用することができる。
According to this SAML, highly confidential information such as user authentication information can be safely transferred to the
次に、図11のフローチャートを用いて、Webアプリケーションサーバ1002、1004のユーザ情報データベース1003、1005に登録されている利用者の認証情報が変更される場合に、その変更内容を認証サーバ1006の識別情報管理データベース1007に登録されている関連する識別情報に反映させる際の認証システムの動作の一例を説明する。
Next, when the user authentication information registered in the
利用者は、Webアプリケーションサーバ1002、1003に登録した認証情報を変更する場合、クライアントコンピュータ1001のマウスやキーボードなどを操作子、ユーザエージェント2002を介してWebアプリケーションサーバ1002、1004に認証情報変更要求を送信する(ステップS1111)。
本実施形態においては、利用者がWebアプリケーションサーバ1002、1004の利用を解約して認証情報を含むユーザ情報を削除する場合と、利用者が使用するユーザIDを変更する場合に認証情報変更要求がWebアプリケーションサーバ1002、1003に送信されるようにしている。
When changing the authentication information registered in the
In the present embodiment, an authentication information change request is issued when the user cancels the use of the
認証情報変更要求は、Webアプリケーションサーバ1002、1004のWebサーバ部2004を介して認証情報管理部2005aで受け取られる。認証管理情報管理部2005aは、受け取った認証情報変更要求に合わせてユーザ情報データベース1003に登録されている識別情報を変更するための認証情報変更処理を実行する(ステップS1112)。
The authentication information change request is received by the authentication
そして、認証情報管理部2005aは、ユーザ情報データベース1003、1005に登録されている識別情報を変更でき、前記受け取った認証情報変更要求の内容がユーザ情報データベース1003、1005に登録されている識別情報に正常に反映されたか否かを判断する(ステップS1113)。
この判断の結果、前記認証情報変更要求の内容がユーザ情報データベース1003、1005に正常に反映されなかった場合は、認証情報管理部2005aは、Webサーバ部2004を介してユーザエージェント2002にエラーページを送信する(ステップS1114)。
一方、前記認証情報変更要求の内容がユーザ情報データベース1003に正常に反映された場合には、認証情報管理部2005aは、認証サーバ1006へ、変更前の認証情報、変更後の認証情報、及び送信元であるWebアプリケーションサーバ1002、1004を識別するサービスIDを送信し、識別情報変更要求を行う(ステップS1115)。
The authentication
As a result of the determination, if the content of the authentication information change request is not normally reflected in the
On the other hand, when the content of the authentication information change request is normally reflected in the
前記識別情報変更要求は、認証サーバ2008の識別情報管理部2012で受け取られる(ステップS1116)。
なお、Webアプリケーションサーバ1002、1004の認証情報管理部2005aと認証サーバ1006の識別情報管理部2012との間は、W3C(World Wide Web Consortium)が定めるSOAP1.1によるRPCによって接続されている。
The identification information change request is received by the identification
Note that the authentication
識別情報管理部2012は、変更前の認証情報のユーザIDと、サービスIDとをキーに、変更対象となる識別情報が識別情報管理データベース1007に登録されているか否かを判断する(ステップS1117)。この判断の結果、変更対象となる識別情報が識別情報管理データベース1007に登録されていない場合には、そのまま処理を終了する。
一方、変更対象となる識別情報が識別情報管理データベース1007に登録されている場合には、識別情報管理部2012は、その識別情報を取得し、前記受け取った変更後の認証情報に合わせて前記取得した識別情報を更新する(ステップS1118)。具体的に説明すると、変更後の認証情報がユーザIDを変更するものであれば、取得した識別情報のユーザIDを書き換える。また、変更後の認証情報が識別情報を削除するものであれば、取得した識別情報を識別情報管理データベース1007から削除する。
The identification
On the other hand, when the identification information to be changed is registered in the identification
以上のように本実施形態では、それぞれ異なるサービスを提供する複数のWebアプリケーションサーバ1002、1004は、ユーザ情報データベース1003、1005を用いて、各々のサービスの利用者を管理する。一方、各Webアプリケーションサーバ1002、1004の利用者の認証を中継する認証サーバ1006は、識別情報管理データベース1007を用いて複数のWebアプリケーションサーバ1002、1004間で利用者を一意に識別することで、各Webアプリケーションサーバ1002、1004の利用者の認証処理を中継するとともにシングルサインオン(SSO)を利用者に提供する。以上のようにすることで、各Webアプリケーションサーバ1002、1004が、利用者を認証するための認証情報を独自に管理することができるとともに、複数のWebアプリケーションサーバ1002、1004からサービスの提供を受ける同一の利用者を認証サーバ1006で管理することができる。これにより、SSOの対象となる全てのアプリケーションサーバが持つユーザ情報(認証情報)を統一化したり、特定の認証サーバで管理したりすることなくSSO機能を実現したシステムを容易に実現できる。
さらに、認証サーバ1006が管理する識別情報は、各Webアプリケーションサーバ1002、1004において、利用者が認証サーバ1006を介して中継認証される際に自動生成されるようにするとともに、ユーザ情報中の認証情報が変更された際には、認証サーバ1006が管理する識別情報にその変更された内容が反映されるようにした。これにより、認証サーバ1006の運用コストを低減させることができる。
As described above, in the present embodiment, the plurality of
Further, the identification information managed by the
(本発明の他の実施形態)
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
(Other embodiments of the present invention)
In order to operate various devices to realize the functions of the above-described embodiments, a program code of software for realizing the functions of the above-described embodiments is provided to an apparatus or a computer in the system connected to the various devices. What is implemented by operating the various devices according to a program supplied and stored in a computer (CPU or MPU) of the system or apparatus is also included in the scope of the present invention.
また、この場合、前記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。 In this case, the program code of the software itself realizes the functions of the above-described embodiments, and the program code itself and means for supplying the program code to the computer, for example, the program code are stored. The recorded medium constitutes the present invention. As a recording medium for storing the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。 Further, by executing the program code supplied by the computer, not only the functions of the above-described embodiments are realized, but also the OS (operating system) or other application software in which the program code is running on the computer, etc. It goes without saying that the program code is also included in the embodiment of the present invention even when the functions of the above-described embodiment are realized in cooperation with the embodiment.
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。 Further, after the supplied program code is stored in the memory provided in the function expansion board of the computer or the function expansion unit connected to the computer, the CPU provided in the function expansion board or function expansion unit based on the instruction of the program code Needless to say, the present invention includes a case where the functions of the above-described embodiment are realized by performing part or all of the actual processing.
1001 クライアントコンピュータ
1002、1004 Webアプリケーションサーバ
1003、1005 ユーザ情報データベース
1006 認証サーバ
1007 識別情報管理データベース
1008 インターネット
2002 ユーザエージェント
2003 Webアプリケーションサーバ
2004 Webサーバ部
2005 認証エージェント
2005a 認証情報管理部
2005b 認証処理部
2005c ユーザ識別部
2006 Webアプリケーション本体
2009 Webサーバ部
2010 ユーザ識別子通知部
2011 中継認証処理部
2012 識別情報管理部
4000 識別情報管理テーブル
4001 SSOID
4002 ユーザID
4003 サービスID
1001
4002 User ID
4003 Service ID
Claims (30)
前記クライアント端末のユーザの前記複数のアプリケーションサーバに対する認証を一括して行うようにするための認証サーバとを有し、
前記認証サーバは、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を管理する識別情報管理手段を有し、
前記複数のアプリケーションサーバは、前記クライアント端末のユーザを認証するための認証情報を管理する認証情報管理手段を有することを特徴とする認証システム。 A plurality of application servers that provide services to client terminals;
An authentication server for collectively performing authentication on the plurality of application servers of the user of the client terminal;
The authentication server has identification information management means for managing identification information for uniquely identifying a user of the client terminal among the plurality of application servers,
The plurality of application servers include authentication information management means for managing authentication information for authenticating a user of the client terminal.
前記複数のアプリケーションサーバに個別に接続され、前記クライアント端末のユーザを認証するためのユーザ認証情報を含むユーザ情報を格納する複数のユーザ情報データベースと、
前記認証サーバに接続され、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を格納する識別情報管理データベースとを有し、
前記複数のアプリケーションサーバの各々は、前記ユーザ認証情報を含むユーザ情報を、前記ユーザ情報データベースを用いて管理する認証情報管理手段と、
前記認証サーバからの認証要求に基づいて、前記ユーザ情報データベースに登録されているユーザ認証情報を取得して、前記クライアント端末のユーザを認証する認証手段と、
前記識別情報に含まれているユーザ識別子を前記認証サーバから取得して、前記クライアント端末のユーザを識別するユーザ識別手段とを有し、
前記認証サーバは、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするためのユニークな識別子と、前記複数のアプリケーションサーバ毎に前記識別情報管理ベースに登録された前記ユーザ識別子とを紐付け、その紐付けた情報を前記識別情報として管理する識別情報管理手段と、
前記アプリケーションサーバを介して前記クライアント端末からユーザ認証情報と、前記アプリケーションサーバを識別するためのサーバ識別子を受け付け、受け付けたユーザ認証情報の認証要求を前記サーバ識別子が示す前記アプリケーションサーバに行う中継認証手段と、
前記複数のアプリケーションサーバの何れかから、前記ユーザ識別子の取得要求があった場合には、その取得要求元であるアプリケーションサーバに対して登録されているユニークな識別子に紐付けられたユーザ識別子を、そのユーザ識別子の取得要求元であるアプリケーションサーバに通知するユーザ識別子通知手段とを有することを特徴とする認証システム。 An authentication system comprising: a client terminal; a plurality of application servers that provide services to the client terminal; and an authentication server that collectively authenticates the users of the client terminal to the plurality of application servers. And
A plurality of user information databases individually connected to the plurality of application servers and storing user information including user authentication information for authenticating a user of the client terminal;
An identification information management database connected to the authentication server and storing identification information for uniquely identifying a user of the client terminal among the plurality of application servers;
Each of the plurality of application servers includes authentication information management means for managing user information including the user authentication information using the user information database;
Authentication means for acquiring user authentication information registered in the user information database based on an authentication request from the authentication server and authenticating a user of the client terminal;
User identification means for acquiring a user identifier included in the identification information from the authentication server and identifying a user of the client terminal;
The authentication server is registered in the identification information management base for each of the plurality of application servers and a unique identifier for uniquely identifying a user of the client terminal among the plurality of application servers. An identification information management means for linking the user identifier and managing the linked information as the identification information;
Relay authentication means for receiving user authentication information and a server identifier for identifying the application server from the client terminal via the application server, and performing an authentication request for the received user authentication information to the application server indicated by the server identifier When,
When there is an acquisition request for the user identifier from any of the plurality of application servers, a user identifier associated with a unique identifier registered with respect to the application server that is the acquisition request source, An authentication system comprising user identifier notification means for notifying an application server that is a request source of the user identifier.
前記識別情報管理手段は、前記中継認証手段により検証された結果に基づいて、前記識別情報を生成することを特徴とする請求項4又は5に記載の認証システム。 The relay authentication unit verifies the received authentication information,
The authentication system according to claim 4 or 5, wherein the identification information management unit generates the identification information based on a result verified by the relay authentication unit.
前記特定のアプリケーションサーバとは異なる第二のアプリケーションサーバの前記ユーザ識別手段は、前記特定のユーザを識別する際に、前記第二のアプリケーションサーバを識別するためのサーバ識別子を、前記クライアント端末を介して前記認証サーバに転送し、
前記認証サーバの前記ユーザ識別子通知手段は、前記エージェント識別子に関連付けられたユニークな識別子と、前記転送されたサーバ識別子とに基づいて、前記識別情報管理データベースからユーザ識別子を取得することを特徴とする請求項5又は6に記載の認証システム。 The user identifier notifying unit is a unique identifier associated with a user identifier for identifying the user when the specific user using the specific application server is authenticated using the relay authentication unit. To the agent identifier for identifying the user agent used by the user,
The user identification means of a second application server different from the specific application server, when identifying the specific user, sends a server identifier for identifying the second application server via the client terminal. Forward to the authentication server
The user identifier notifying unit of the authentication server acquires a user identifier from the identification information management database based on a unique identifier associated with the agent identifier and the transferred server identifier. The authentication system according to claim 5 or 6.
前記第二のアプリケーションサーバの前記ユーザ識別手段は、前記認証サーバの前記ユーザ識別子通知手段から前記ユーザ確認情報に対応するユーザ識別子を取得することを特徴とする請求項7に記載の認証システム。 The user identifier notifying unit generates user confirmation information associated with the user identifier acquired based on the unique identifier and the transferred server identifier, and the generated user confirmation information is transmitted to the second application. Forward to the user identification means of the server via the client terminal,
The authentication system according to claim 7, wherein the user identification unit of the second application server acquires a user identifier corresponding to the user confirmation information from the user identifier notification unit of the authentication server.
前記認証サーバの前記ユーザ識別子通知手段は、前記ユーザ識別手段によりユーザエージェントが転送された際に、前記エージェント識別子に関連付けられるユニークな識別子が取得されない場合には、前記クライアント端末から認証情報を取得することを特徴とする請求項7に記載の認証システム。 The user identification means of the second application server transfers a user agent to the authentication server when identifying the user of the client terminal,
The user identifier notifying unit of the authentication server acquires authentication information from the client terminal when a unique identifier associated with the agent identifier is not acquired when the user agent is transferred by the user identification unit. The authentication system according to claim 7.
前記認証サーバの前記ユーザ識別子通知手段は、前記ユーザ識別手段によりユーザエージュントが転送された際に、前記エージェント識別子に関連付けられるユニークな識別子と、前記サーバ識別子とから、前記第二のアプリケーションサーバにおけるユーザのユーザ識別子が取得されない場合には、前記クライアント端末から前記第二のアプリケーションサーバにおける認証情報を取得することを特徴とする請求項7に記載の認証システム。 The user identification means of the second application server transfers a user agent to the authentication server when identifying the user of the client terminal,
The user identifier notifying unit of the authentication server includes a unique identifier associated with the agent identifier when the user agent is transferred by the user identifying unit, and the server identifier. 8. The authentication system according to claim 7, wherein if the user identifier of the user is not acquired, authentication information in the second application server is acquired from the client terminal.
前記アプリケーションサーバは、前記ユーザエージェントが前記認証サーバから転送された後に、前記アプリケーションサーバを示す前記サーバ識別子が記載された、前記認証情報を入力するための認証フォームを前記クライアント端末に送信し、
前記認証サーバの中継認証手段は、前記認証フォームに記載された前記サーバ識別子と前記認証フォームに入力された前記認証情報を前記クライアント端末から取得することを特徴とする請求項2〜11の何れか1項に記載の認証システム。 The authentication server forwards the user agent to the application server;
The application server, after the user agent is transferred from the authentication server, transmits the authentication form for inputting the authentication information, in which the server identifier indicating the application server is described, to the client terminal,
The relay authentication unit of the authentication server acquires the server identifier described in the authentication form and the authentication information input in the authentication form from the client terminal. The authentication system according to item 1.
前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を管理する識別情報管理ステップを行い、
前記複数のアプリケーションサーバが、前記クライアント端末のユーザを認証するための認証情報を管理する認証情報管理ステップを行うことを特徴とする認証方法。 Authentication of the user of the client terminal using a plurality of application servers that provide services to the client terminal and an authentication server that collectively authenticates the user of the client terminal to the plurality of application servers Authentication method,
The authentication server performs an identification information management step for managing identification information for uniquely identifying a user of the client terminal among the plurality of application servers,
An authentication method, wherein the plurality of application servers perform an authentication information management step of managing authentication information for authenticating a user of the client terminal.
前記複数のアプリケーションサーバの各々が、前記クライアント端末のユーザを認証するためのユーザ認証情報を含むユーザ情報を管理する認証情報管理ステップと、
前記認証サーバが、前記アプリケーションサーバを介して前記クライアント端末からユーザ認証情報と前記アプリケーションサーバを識別するためのサーバ識別子を受け付け、受け付けたユーザ認証情報の認証要求を前記サーバ識別子が示すアプリケーションサーバに行う中継認証ステップと、
前記認証サーバからの認証要求に基づいて、その認証要求を受けたアプリケーションサーバが、前記ユーザ認証情報を取得して、前記クライアント端末のユーザを認証する認証ステップと、
前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするためのユニークな識別子と、前記複数のアプリケーションサーバ毎に登録された前記ユーザ識別子とを紐付け、その紐付けた情報を識別情報として管理する識別情報管理ステップと、
前記認証サーバが、前記複数のアプリケーションサーバの何れかから、前記ユーザ識別子の取得要求があった場合には、その取得要求元であるアプリケーションサーバに対して登録されているユニークな識別子に紐付けられたユーザ識別子を、そのユーザ識別子の取得要求元であるアプリケーションサーバに通知するユーザ識別子通知ステップと、
前記アプリケーションサーバが、前記認証サーバから通知された前記ユーザ識別子を取得して、前記クライアント端末のユーザを識別するユーザ識別ステップとを有することを特徴とする認証方法。 Authentication of the user of the client terminal using a plurality of application servers that provide services to the client terminal and an authentication server that collectively authenticates the user of the client terminal to the plurality of application servers Authentication method,
An authentication information management step in which each of the plurality of application servers manages user information including user authentication information for authenticating a user of the client terminal;
The authentication server receives user authentication information and a server identifier for identifying the application server from the client terminal via the application server, and sends an authentication request for the received user authentication information to the application server indicated by the server identifier. Relay authentication step;
Based on the authentication request from the authentication server, the application server that has received the authentication request acquires the user authentication information and authenticates the user of the client terminal; and
The authentication server associates a unique identifier for uniquely identifying the user of the client terminal among the plurality of application servers and the user identifier registered for each of the plurality of application servers. An identification information management step for managing the associated information as identification information;
When the authentication server receives an acquisition request for the user identifier from any of the plurality of application servers, the authentication server is associated with a unique identifier registered for the application server that is the acquisition request source. A user identifier notifying step of notifying the application server that is the acquisition request source of the user identifier,
An authentication method comprising: a user identification step in which the application server acquires the user identifier notified from the authentication server and identifies a user of the client terminal.
前記識別情報管理ステップは、前記中継認証ステップにより検証された結果に基づいて、前記識別情報を生成することを特徴とする請求項18又は19に記載の認証方法。 The relay authentication step verifies the received authentication information,
The authentication method according to claim 18 or 19, wherein the identification information management step generates the identification information based on a result verified by the relay authentication step.
前記特定のアプリケーションサーバとは異なる第二のアプリケーションサーバが、前記第二のアプリケーションサーバを識別するためのサーバ識別子を、前記クライアント端末を介して前記認証サーバに転送するサーバ識別子転送ステップと、
前記認証サーバが、前記エージェント識別子に関連付けられたユニークな識別子と、前記転送されたサーバ識別子とに基づいて、前記ユーザ識別子を取得するユーザ識別子取得ステップとを有することを特徴とする請求項19又は20に記載の認証方法。 When a specific user using the specific application server is authenticated by the authentication server, a user agent that uses a unique identifier associated with a user identifier for identifying the user An agent identifier associating step for associating with an agent identifier for identifying
A server identifier transfer step in which a second application server different from the specific application server transfers a server identifier for identifying the second application server to the authentication server via the client terminal;
20. The user authentication acquisition step of acquiring the user identifier based on the unique identifier associated with the agent identifier and the transferred server identifier, wherein the authentication server comprises: 21. The authentication method according to 20.
前記第二のアプリケーションサーバが、前記認証サーバから前記ユーザ確認情報に対応するユーザ識別子を取得する第2のユーザ識別子取得ステップとを有することを特徴とする請求項21に記載の認証方法。 The authentication server generates user confirmation information associated with the user identifier acquired based on the unique identifier and the transferred server identifier, and the generated user confirmation information is sent to the second application server. A user confirmation information transfer step of transferring via the client terminal;
The authentication method according to claim 21, wherein the second application server includes a second user identifier acquisition step of acquiring a user identifier corresponding to the user confirmation information from the authentication server.
前記認証サーバが、前記第二のアプリケーションサーバから前記ユーザエージェントが転送された際に、前記エージェント識別子に関連付けられるユニークな識別子が取得されない場合には、前記クライアント端末から認証情報を取得する認証情報取得ステップとを有することを特徴とする請求項21に記載の認証方法。 A user agent transfer step of transferring a user agent to the authentication server when the second application server identifies a user of the client terminal;
If the authentication server does not acquire a unique identifier associated with the agent identifier when the user agent is transferred from the second application server, the authentication server acquires authentication information from the client terminal. The authentication method according to claim 21, further comprising a step.
前記認証サーバが、前記第二のアプリケーションサーバから前記ユーザエージュントが転送された際に、前記エージェント識別子に関連付けられるユニークな識別子と、前記サーバ識別子とから、前記第二のアプリケーションサーバにおけるユーザのユーザ識別子が取得されない場合には、前記クライアント端末から前記第二のアプリケーションサーバにおける認証情報を取得する認証情報取得ステップとを有することを特徴とする請求項21に記載の認証方法。 A user agent transfer step of transferring a user agent to the authentication server when the second application server identifies a user of the client terminal;
When the authentication server transfers the user agent from the second application server, a unique identifier associated with the agent identifier, and the server identifier, the user of the second application server The authentication method according to claim 21, further comprising an authentication information acquisition step of acquiring authentication information in the second application server from the client terminal when a user identifier is not acquired.
前記アプリケーションサーバが、前記ユーザエージェントが前記認証サーバから転送された後に、前記アプリケーションサーバを示す前期サーバ識別子が記載された、前記認証情報を入力するための認証フォームを前記クライアント端末に送信する認証フォーム送信ステップと、
前記認証サーバが、前記認証フォームに記載された前記サーバ識別子と前記認証フォームに入力された前記認証情報を前記クライアント端末から取得する第2の認証情報取得ステップとを有することを特徴とする請求項16〜25の何れか1項に記載の認証方法。 A second user agent transfer step in which the authentication server transfers the user agent to the application server;
An authentication form for transmitting, to the client terminal, an authentication form for inputting the authentication information, in which the server identifier indicating the application server is written after the user agent is transferred from the authentication server. Sending step;
The authentication server includes a second authentication information acquisition step of acquiring the server identifier described in the authentication form and the authentication information input in the authentication form from the client terminal. The authentication method according to any one of 16 to 25.
前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするための識別情報を管理する識別情報管理ステップを行い、
前記複数のアプリケーションサーバが、前記クライアント端末のユーザを認証するための認証情報を管理する認証情報管理ステップを行うことをコンピュータに実行させることを特徴とするコンピュータプログラム。 Authentication of the user of the client terminal using a plurality of application servers that provide services to the client terminal and an authentication server that collectively authenticates the user of the client terminal to the plurality of application servers A computer program for causing a computer to execute
The authentication server performs an identification information management step for managing identification information for uniquely identifying a user of the client terminal among the plurality of application servers,
A computer program causing a computer to execute an authentication information management step for managing authentication information for authenticating a user of the client terminal by the plurality of application servers.
前記複数のアプリケーションサーバの各々が、前記クライアント端末のユーザを認証するためのユーザ認証情報を含むユーザ情報を管理する認証情報管理ステップと、
前記認証サーバが、アプリケーションサーバを介して前記クライアント端末からユーザ認証情報と前記アプリケーションサーバを識別するためのサーバ識別子を受け付け、受け付けたユーザ認証情報の認証要求を前記サーバ識別子が示すアプリケーションサーバに行う中継認証ステップと、
前記認証サーバからの認証要求に基づいて、その認証要求を受けたアプリケーションサーバが、前記ユーザ認証情報を取得して、前記クライアント端末のユーザを認証する認証ステップと、
前記認証サーバが、前記複数のアプリケーションサーバ間において、前記クライアント端末のユーザが一意に識別されるようにするためのユニークな識別子と、前記複数のアプリケーションサーバ毎に登録された前記ユーザ識別子とを紐付け、その紐付けた情報を識別情報として管理する識別情報管理ステップと、
前記認証サーバが、前記複数のアプリケーションサーバの何れかから、前記ユーザ識別子の取得要求があった場合には、その取得要求元であるアプリケーションサーバに対して登録されているユニークな識別子に紐付けられたユーザ識別子を、そのユーザ識別子の取得要求元であるアプリケーションサーバに通知するユーザ識別子通知ステップと、
前記アプリケーションサーバが、前記認証サーバから通知された前記ユーザ識別子を取得して、前記クライアント端末のユーザを識別するユーザ識別ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。 Authentication of the user of the client terminal using a plurality of application servers that provide services to the client terminal and an authentication server that collectively authenticates the user of the client terminal to the plurality of application servers A computer program for causing a computer to execute
An authentication information management step in which each of the plurality of application servers manages user information including user authentication information for authenticating a user of the client terminal;
The authentication server receives user authentication information and a server identifier for identifying the application server from the client terminal via the application server, and relays the authentication request for the received user authentication information to the application server indicated by the server identifier An authentication step;
Based on the authentication request from the authentication server, the application server that has received the authentication request acquires the user authentication information and authenticates the user of the client terminal; and
The authentication server associates a unique identifier for uniquely identifying the user of the client terminal among the plurality of application servers and the user identifier registered for each of the plurality of application servers. An identification information management step for managing the associated information as identification information;
When the authentication server receives an acquisition request for the user identifier from any of the plurality of application servers, the authentication server is associated with a unique identifier registered for the application server that is the acquisition request source. A user identifier notifying step of notifying the application server that is the acquisition request source of the user identifier,
A computer program, wherein the application server acquires the user identifier notified from the authentication server, and causes a computer to execute a user identification step of identifying a user of the client terminal.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004167538A JP2005346570A (en) | 2004-06-04 | 2004-06-04 | Authentication system, authentication method, and computer program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004167538A JP2005346570A (en) | 2004-06-04 | 2004-06-04 | Authentication system, authentication method, and computer program |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2005346570A true JP2005346570A (en) | 2005-12-15 |
Family
ID=35498863
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004167538A Pending JP2005346570A (en) | 2004-06-04 | 2004-06-04 | Authentication system, authentication method, and computer program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2005346570A (en) |
Cited By (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007293760A (en) * | 2006-04-27 | 2007-11-08 | Hitachi Ltd | Single sign-on linkage method and system using individual authentication |
| JP2010086435A (en) * | 2008-10-02 | 2010-04-15 | Hitachi Ltd | Information processing method and computer |
| US8095972B1 (en) | 2008-10-06 | 2012-01-10 | Southern Company Services, Inc. | Secure authentication for web-based applications |
| US8990575B2 (en) | 2012-03-16 | 2015-03-24 | Samsung Electronics Co., Ltd. | Apparatus and method for electronic signature verification |
| JP2015511356A (en) * | 2012-02-01 | 2015-04-16 | アマゾン テクノロジーズ インク | Account management for multiple network sites |
| US9450941B2 (en) | 2012-02-01 | 2016-09-20 | Amazon Technologies, Inc. | Recovery of managed security credentials |
| US9692740B2 (en) | 2012-02-01 | 2017-06-27 | Amazon Technologies, Inc. | Account management for network sites |
| US9767262B1 (en) | 2011-07-29 | 2017-09-19 | Amazon Technologies, Inc. | Managing security credentials |
| US10362019B2 (en) | 2011-07-29 | 2019-07-23 | Amazon Technologies, Inc. | Managing security credentials |
| US10419417B2 (en) | 2016-09-21 | 2019-09-17 | Kyocera Document Solutions Inc. | Authentication system and authentication method capable of realizing single-sign-on function used for application program on image forming apparatus |
| US10475018B1 (en) | 2013-11-29 | 2019-11-12 | Amazon Technologies, Inc. | Updating account data for multiple account providers |
| US10560447B2 (en) | 2017-01-10 | 2020-02-11 | Kyocera Document Solutions Inc. | Authentication system and authentication method |
| JP2020160873A (en) * | 2019-03-27 | 2020-10-01 | 日本電気株式会社 | System operation lock release system, operation lock coordination agent, server, method, and program |
| US11082422B2 (en) | 2009-08-12 | 2021-08-03 | Amazon Technologies, Inc. | Authentication manager |
| US11444936B2 (en) | 2011-07-29 | 2022-09-13 | Amazon Technologies, Inc. | Managing security credentials |
| JP2024046644A (en) * | 2022-09-22 | 2024-04-03 | コニカ ミノルタ ビジネス ソリューションズ ユー.エス.エー., インコーポレイテッド | Authentication method and system |
| JP7578855B1 (en) | 2024-03-11 | 2024-11-06 | 株式会社Z会 | Authorization server, login management method, and program |
-
2004
- 2004-06-04 JP JP2004167538A patent/JP2005346570A/en active Pending
Cited By (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007293760A (en) * | 2006-04-27 | 2007-11-08 | Hitachi Ltd | Single sign-on linkage method and system using individual authentication |
| JP2010086435A (en) * | 2008-10-02 | 2010-04-15 | Hitachi Ltd | Information processing method and computer |
| US8095972B1 (en) | 2008-10-06 | 2012-01-10 | Southern Company Services, Inc. | Secure authentication for web-based applications |
| US11082422B2 (en) | 2009-08-12 | 2021-08-03 | Amazon Technologies, Inc. | Authentication manager |
| US9767262B1 (en) | 2011-07-29 | 2017-09-19 | Amazon Technologies, Inc. | Managing security credentials |
| US11444936B2 (en) | 2011-07-29 | 2022-09-13 | Amazon Technologies, Inc. | Managing security credentials |
| US10362019B2 (en) | 2011-07-29 | 2019-07-23 | Amazon Technologies, Inc. | Managing security credentials |
| US9660982B2 (en) | 2012-02-01 | 2017-05-23 | Amazon Technologies, Inc. | Reset and recovery of managed security credentials |
| JP2015511356A (en) * | 2012-02-01 | 2015-04-16 | アマゾン テクノロジーズ インク | Account management for multiple network sites |
| US9450941B2 (en) | 2012-02-01 | 2016-09-20 | Amazon Technologies, Inc. | Recovery of managed security credentials |
| US12177201B2 (en) | 2012-02-01 | 2024-12-24 | Amazon Technologies, Inc. | Managing security credentials |
| US11381550B2 (en) | 2012-02-01 | 2022-07-05 | Amazon Technologies, Inc. | Account management using a portable data store |
| US10505914B2 (en) | 2012-02-01 | 2019-12-10 | Amazon Technologies, Inc. | Sharing account information among multiple users |
| US9692740B2 (en) | 2012-02-01 | 2017-06-27 | Amazon Technologies, Inc. | Account management for network sites |
| US8990575B2 (en) | 2012-03-16 | 2015-03-24 | Samsung Electronics Co., Ltd. | Apparatus and method for electronic signature verification |
| US11004054B2 (en) | 2013-11-29 | 2021-05-11 | Amazon Technologies, Inc. | Updating account data for multiple account providers |
| US10475018B1 (en) | 2013-11-29 | 2019-11-12 | Amazon Technologies, Inc. | Updating account data for multiple account providers |
| US10419417B2 (en) | 2016-09-21 | 2019-09-17 | Kyocera Document Solutions Inc. | Authentication system and authentication method capable of realizing single-sign-on function used for application program on image forming apparatus |
| US10560447B2 (en) | 2017-01-10 | 2020-02-11 | Kyocera Document Solutions Inc. | Authentication system and authentication method |
| JP2020160873A (en) * | 2019-03-27 | 2020-10-01 | 日本電気株式会社 | System operation lock release system, operation lock coordination agent, server, method, and program |
| JP7183908B2 (en) | 2019-03-27 | 2022-12-06 | 日本電気株式会社 | System operation lock release system, operation lock cooperation agent, server, method, and program |
| JP2024046644A (en) * | 2022-09-22 | 2024-04-03 | コニカ ミノルタ ビジネス ソリューションズ ユー.エス.エー., インコーポレイテッド | Authentication method and system |
| JP7692967B2 (en) | 2022-09-22 | 2025-06-16 | コニカ ミノルタ ビジネス ソリューションズ ユー.エス.エー., インコーポレイテッド | Authentication method and system |
| JP7578855B1 (en) | 2024-03-11 | 2024-11-06 | 株式会社Z会 | Authorization server, login management method, and program |
| JP2025138218A (en) * | 2024-03-11 | 2025-09-25 | 株式会社Z会 | Authorization server, login management method, program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11706218B2 (en) | Systems and methods for controlling sign-on to web applications | |
| JP4729651B2 (en) | Authentication apparatus, authentication method, and authentication program implementing the method | |
| JP2005346570A (en) | Authentication system, authentication method, and computer program | |
| US20060143189A1 (en) | Database access control method, database access controller, agent processing server, database access control program, and medium recording the program | |
| JP5988699B2 (en) | Cooperation system, its cooperation method, information processing system, and its program. | |
| JP2005526334A (en) | Application generator | |
| JP2007323340A (en) | Account linking system, account linking computer, and account linking method | |
| JP2002334056A (en) | Login agency system and login agency method | |
| JP2020067967A (en) | Information processing system, information processing apparatus, information processing method, and program | |
| JP2006031064A (en) | Session management system and management method | |
| JP2008225573A (en) | Proxy server, program for proxy server, and proxy access method | |
| US9619510B2 (en) | Information processing apparatus and computer-readable medium storing information processing program | |
| JP5903004B2 (en) | Information processing apparatus and authorization information management method | |
| JP5732732B2 (en) | Authentication server device, program, and method | |
| JP2000106552A (en) | Authentication method | |
| KR101186695B1 (en) | Method for interconnecting site based on id federation using federation cookie | |
| JP2020038438A (en) | Management device, management system and program | |
| CN103621039A (en) | A server, a system, a method, a computer program and a computer program product for accessing a server in a computer network | |
| JP2005293161A (en) | Authentication system, authentication method, and computer program | |
| JP2008077614A (en) | Session management program and session management method | |
| JP2005346571A (en) | Authentication system and authentication method | |
| KR101636986B1 (en) | A Integrated interface user authentication method | |
| JP2015191508A (en) | Single sign-on system, single sign-on method | |
| JP2002342270A (en) | Remote access control method and remote access control program | |
| JP2014241113A (en) | Content management device, content management system, content management method, and program |