JP4303988B2 - User authentication method - Google Patents
User authentication method Download PDFInfo
- Publication number
- JP4303988B2 JP4303988B2 JP2003073904A JP2003073904A JP4303988B2 JP 4303988 B2 JP4303988 B2 JP 4303988B2 JP 2003073904 A JP2003073904 A JP 2003073904A JP 2003073904 A JP2003073904 A JP 2003073904A JP 4303988 B2 JP4303988 B2 JP 4303988B2
- Authority
- JP
- Japan
- Prior art keywords
- session
- web
- information
- user authentication
- authentication method
- 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.)
- Expired - Fee Related
Links
Images
Description
【0001】
【発明の属する技術分野】
本発明は、インターネットにおいて、複数回のデータのやり取りを行うことで一つの処理を完結する、Webアプリケーションシステムのユーザ認証に関するものである。
【0002】
【従来の技術】
インターネットの急激な普及により、クライアントマシンに搭載されたWebブラウザ(以下、ブラウザという)を用いてWebサーバと複数回のやり取りを行うことで一つの業務を完結する、オンラインショッピングなどに代表されるWebアプリケーションが多く利用されるようになってきている。
【0003】
また、企業内の業務アプリケーションにおいても、クライアントマシンへの特別なアプリケーションソフトのインストールが不要であることや、バージョン管理の手間が不要などの利点により、クライアント・サーバ型システムに替わり、Webアプリケーションが利用されることが増えてきている。
【0004】
これらのWebアプリケーションにおいては、ユーザIDとパスワードなどによりシステムへログインし、Webアプリケーションの正当なユーザであることを認証してから機能を利用することが一般的である。
【0005】
これらのWebアプリケーションで使用されるHTTP(HyperText Tranfer Protocol)は、要求に対して応答を返すだけで、状態を保持しないプロトコルであり、HTTPプロトコルの機能だけでは、セッションを維持できない。
【0006】
したがって、初回のユーザ認証時に、ユーザ毎に一意に決まる文字列をWebサーバ側で生成し、この文字列をWebサーバとブラウザの間で相互に受け渡しながら処理を行うことにより、Webサーバにおいてユーザを判別し、一連のセッションを維持する方法が知られている。
【0007】
上述の文字列を受け渡す方法としては、ネットスケープ社が提唱し事実上の標準となっているCookieとよばれる仕組みに格納する方法がある(例えば、特許文献1参照。)。
【0008】
また、URL(Uniform Resource Locator)の引数の一部分(Query String)に上述の文字列を付加する方法でもある(例えば、特許文献2参照。)。
【0009】
【特許文献1】
特許第3003997号公報
【特許文献2】
特表2000−508153号公報
【0010】
しかしながら、昨今のソフトウェア製品の高度化・複雑さの増大などの要因によりWebサーバやブラウザにセキュリティ上の欠陥が生じ、従来においては、Cookieが第3者に漏洩する危険性が高くなっている。
【0011】
また、URLの引数は、Webサーバのアクセスログに記録されるため、Webサーバが悪意ある第3者に改ざんされ、別のサーバに誘導されて引数に付加した文字列が盗み読まれる可能性も生じてきている。
【0012】
【発明が解決しようとする課題】
本発明は係る問題を解決するためなされたものであり、ユーザ認証やセッションの維持に使用する情報が漏洩した場合においても、第3者が正規のユーザに成りすまして不正なアクセスを行うことを抑制することを目的とする。
【0013】
【課題を解決するための手段】
本発明の第1の態様は、WebクライアントとWebサーバが通信して一連の業務を実現するWebアプリケーションシステムにおけるセッション中のユーザの認証方法において、前記Webクライアントが、前記Webサーバから当該セッション開始時に通知された第1のセッション情報と前記Webサーバから受信したWebページに格納されている第2のセッション情報を前記Webサーバに送信し、前記Webサーバが、受信した前記第1のセッション情報および前記第2のセッション情報から前記第1のセッション情報および前記第2のセッション情報の逆生成手順により検証用情報を生成し予め記録しておいたセッション維持情報と比較することで当該セッションのユーザを認証するか否かを決定するようにしたものである。
【0014】
本発明の第2の態様は、上述の第1の態様に係るユーザ認証方法において、前記Webサーバが、前記Webクライアントから当該セッションの最初の通信要求により当該セッションを一意に識別可能なセッション維持情報を生成し記録するようにしたものである。
【0015】
本発明の第3の態様は、上述の第1または2の態様に係るユーザ認証方法において、前記Webサーバが、前記セッション維持情報を暗号化し2つに分割して前記第1のセッション情報および前記第2のセッション情報を生成するようにしたものである。
【0016】
本発明の第4の態様は、上述の第1から3の態様に係るユーザ認証方法において、前記第1のセッション情報が、Webクライアントが保持するCookieデータに格納されて当該セッション開始時に前記Webクライアントへ送信されており、前記第2のセッション情報が、前記Webクライアントが要求したWebページに記述されたリンク先のURLの引数として付加されてWebページの要求の都度前記Webクライアントへ送信されるようにしたものである。
【0017】
本発明の第5の態様は、上述の第1から4の態様に係るユーザ認証方法において、前記第1のセッション情報が有効期間を有し、前記Webクライアントは、前記有効期間内においてのみ第1のセッション情報を前記Webサーバに送信するようにしたものである。
【0018】
【発明の実施の形態】
以下、本発明を図示する実施形態に基づいて説明する。図1は、本発明の一実施形態に係わるWebアプリケーションシステムの構成図である。
【0019】
Webアプリケーションシステムは、Webクライアント1とWebサーバ2が、HTTPにより通信を繰り返して、一連の業務を遂行するものである。
【0020】
Webクライアント1には、ブラウザ3が動作しており、継続性が必要なデータをCookie4に保持し、受信したWebページの中にリンク先のURLおよびURL引数5を備えている。
【0021】
Webサーバ2は、HTTPのリクエスト処理6、セッション情報処理7、レスポンス処理8、ユーザ認証処理9、暗号・復号処理10、ユーザ情報11、セッション維持情報12などを備えている。
【0022】
図2は、Webクライアン1のブラウザ3と、Webサーバ2のリクエスト処理6、セッション情報処理7、レスポンス処理8間のデータのやり取り、すなわちセッションの様子を表した模式図である。
【0023】
図3に示す最初のログイン画面において、ブラウザ3から、例えば、ユーザID「user01」とパスワード「passwordX」を入力し、ログインの要求を出す。
【0024】
セッション情報処理7は、入力されたユーザIDとパスワードを、ユーザ認証処理9により、予め記録されているユーザ情報11と照合して、ユーザの認証を行う。
【0025】
ユーザを認証し、正規のユーザであることが確認できた場合、セッション情報処理7は、以降の「user01」とのセッション管理に使用するセッション維持情報(対特定ユーザ間のセッションを一意に特定可能な任意の文字列)を生成し、暗号・復号処理10により暗号化し、ユーザIDなどと一緒にセッション維持情報12へ記録する。
【0026】
セッション情報処理7は、生成したセッション維持情報を任意の部分で2つに分割し、第1のセッション情報と第2のセッション情報を生成する。セッション維持情報、第1のセッション情報、および第2のセッション情報の例を、図4に示す。
【0027】
リクエスト処理6は、ログイン後のユーザ「user01」専用Webページを送信する際に、第1のセッション情報をCookie4へ格納し、第2のセッション情報を「user01」専用Webページに記述されているリンク先のURLのURL引数5に付加して、レスポンス処理8を介してブラウザ3へ送信する。引数が付加されたURLの例を図5に示す。
【0028】
ユーザが、「user01」専用Webページ上に表示されたリンク先を指示し、例えば、コンテンツの要求を出した場合、ブラウザ3は、Cookie4とURL引数5を送信する。
【0029】
セッション情報処理7は、受信したCookie4とURL引数5を結合し、暗号・復号処理10により復号化し、セッション維持情報12と対照することにより、ユーザ「user01」とのセッションであることを確認し、レスポンス処理8が、次の「user01」専用Webページを送信して、セッションを回復する。
【0030】
したがって、ユーザの要求に応じて、動的に専用Webページを生成して送信した場合においても、保持しているCookie4と当該Webページ内のリンク先URLに付加されたURL引数5を対にして送信することにより、Webサーバ2は、セッション維持情報を再構成することができる。
【0031】
【発明の効果】
以上のとおり本発明に係るWebアプリケーションシステムのユーザ認証方法によれば、Webサーバが各ユーザを特定するセッション維持情報を複数に分割し、その全てが揃わない限りセッションを回復させることがないため、漏洩時のなりすましの危険性を抑制することができる。
【0032】
第1のセッション情報は、Cookieによりユーザが保持されており、対となる第2のセッション情報は、当該ユーザの専用Webページに埋め込まれて都度送信されるため、どちらか一方が漏洩したとしても、セッションを回復させることができないため、堅牢性を持ってセッション中のユーザを認証することができる。
【図面の簡単な説明】
【図1】 本発明のWebアプリケーションシステムの構成図である。
【図2】 本発明のセッションの動作を示す模式図である。
【図3】 本発明のログイン要求の入力例である。
【図4】 本発明の生成したセッション維持情報の例である。
【図5】 本発明の引数が付加されたURLの例である。
【符号の説明】
1 Webクライアント
2 Webサーバ
3 ブラウザ
4 Cookie
5 URL引数
6 リクエスト処理
7 セッション情報処理
8 レスポンス処理
9 ユーザ認証処理
10 暗号・復号処理
11 ユーザ情報
12 セッション維持情報[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a user authentication of a Web application system that completes one process by exchanging data a plurality of times on the Internet.
[0002]
[Prior art]
Due to the rapid spread of the Internet, a web browser represented by online shopping or the like that completes one business by exchanging multiple times with a web server using a web browser (hereinafter referred to as a browser) installed in a client machine. Many applications are being used.
[0003]
In addition, for business applications in the enterprise, Web applications can be used instead of client / server systems because of the advantages that special application software does not need to be installed on the client machine and that there is no need for version management. More and more are being done.
[0004]
In these Web applications, it is common to log in to the system with a user ID and password, etc., and authenticate that the user is a valid user of the Web application before using the function.
[0005]
The HTTP (HyperText Tranfer Protocol) used in these Web applications is a protocol that simply returns a response to a request and does not maintain a state, and a session cannot be maintained only by the function of the HTTP protocol.
[0006]
Therefore, at the time of initial user authentication, a character string uniquely determined for each user is generated on the Web server side, and processing is performed while the character string is passed between the Web server and the browser, so that the user can be identified on the Web server. A method for determining and maintaining a series of sessions is known.
[0007]
As a method for delivering the above-described character string, there is a method for storing the character string in a mechanism called Cookie which is proposed by Netscape Corporation and which is a de facto standard (see, for example, Patent Document 1).
[0008]
Moreover, it is also a method of adding the above-mentioned character string to a part (Query String) of an argument of URL (Uniform Resource Locator) (for example, refer to Patent Document 2).
[0009]
[Patent Document 1]
Japanese Patent No. 3003997 [Patent Document 2]
JP 2000-508153 A [0010]
However, security defects have occurred in Web servers and browsers due to factors such as the sophistication and increase in complexity of recent software products, and there has been a high risk of Cookie leaking to third parties.
[0011]
Also, since the URL argument is recorded in the access log of the Web server, the Web server may be altered by a malicious third party, and the character string added to the argument may be stolen and read by another server. It is happening.
[0012]
[Problems to be solved by the invention]
The present invention has been made to solve such a problem, and even when information used for user authentication and session maintenance leaks, it is possible to prevent a third party from impersonating a legitimate user and performing unauthorized access. The purpose is to do.
[0013]
[Means for Solving the Problems]
According to a first aspect of the present invention, in a method for authenticating a user during a session in a Web application system in which a Web client and a Web server communicate to realize a series of tasks, the Web client starts the session from the Web server. The notified first session information and the second session information stored in the web page received from the web server are transmitted to the web server, and the web server receives the received first session information and the The verification information is generated from the second session information by the reverse generation procedure of the first session information and the second session information and is compared with the session maintenance information recorded in advance to authenticate the user of the session. It is determined whether or not to do.
[0014]
According to a second aspect of the present invention, in the user authentication method according to the first aspect described above, the Web server allows the Web server to uniquely identify the session by the initial communication request of the session from the Web client. Is generated and recorded.
[0015]
According to a third aspect of the present invention, in the user authentication method according to the first or second aspect described above, the Web server encrypts the session maintenance information and divides the session maintenance information into two, and the first session information and the Second session information is generated.
[0016]
According to a fourth aspect of the present invention, in the user authentication method according to the first to third aspects described above, the first session information is stored in Cookie data held by the Web client, and the Web client is started when the session starts. The second session information is added as an argument of the URL of the link destination described in the Web page requested by the Web client, and is transmitted to the Web client each time a Web page is requested. It is a thing.
[0017]
According to a fifth aspect of the present invention, in the user authentication method according to the first to fourth aspects described above, the first session information has a valid period, and the Web client is the first in the valid period only. Session information is transmitted to the Web server.
[0018]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described based on the illustrated embodiments. FIG. 1 is a configuration diagram of a Web application system according to an embodiment of the present invention.
[0019]
The Web application system is a system in which the
[0020]
In the
[0021]
The
[0022]
FIG. 2 is a schematic diagram showing the exchange of data between the
[0023]
In the first login screen shown in FIG. 3, for example, the user ID “user01” and the password “passwordX” are input from the
[0024]
The
[0025]
If the user is authenticated and confirmed to be a legitimate user, the
[0026]
The
[0027]
The
[0028]
When the user indicates the link destination displayed on the “user01” dedicated Web page and issues a request for content, for example, the
[0029]
The
[0030]
Therefore, even when a dedicated Web page is dynamically generated and transmitted in response to a user request, the stored
[0031]
【The invention's effect】
As described above, according to the user authentication method of the Web application system according to the present invention, the Web server divides the session maintenance information for identifying each user into a plurality of parts, and the session is not recovered unless all of them are prepared. The risk of impersonation at the time of leakage can be suppressed.
[0032]
The first session information is held by the user by Cookie, and the second session information to be paired is embedded in the dedicated Web page of the user and transmitted each time, so even if one of them leaks Because the session cannot be recovered, the user in the session can be authenticated with robustness.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a Web application system of the present invention.
FIG. 2 is a schematic diagram showing the operation of the session of the present invention.
FIG. 3 is an input example of a login request according to the present invention.
FIG. 4 is an example of session maintenance information generated by the present invention.
FIG. 5 is an example of a URL to which an argument of the present invention is added.
[Explanation of symbols]
1
5
Claims (5)
前記Webクライアントが、
前記Webサーバから当該セッション開始時に通知された第1のセッション情報と、前記Webサーバから受信したWebページに格納されている第2のセッション情報を、前記Webサーバに送信し、
前記Webサーバが、
受信した前記第1のセッション情報および前記第2のセッション情報から、前記第1のセッション情報および前記第2のセッション情報の逆生成手順により検証用情報を生成し、予め記録しておいたセッション維持情報と比較することで、当該セッションのユーザを認証するか否かを決定する、
ことを特徴とするユーザ認証方法。A method for authenticating a user during a session in a web application system in which a web client and a web server communicate to realize a series of tasks,
The web client
Sending the first session information notified from the web server at the start of the session and the second session information stored in the web page received from the web server to the web server;
The web server is
Based on the received first session information and second session information, verification information is generated by a reverse generation procedure of the first session information and the second session information, and the session is recorded in advance. By comparing with the information, decide whether to authenticate the user of the session,
The user authentication method characterized by the above-mentioned.
前記Webサーバが、
前記Webクライアントから当該セッションの最初の通信要求により、当該セッションを一意に識別可能なセッション維持情報を生成し、記録する、
ことを特徴とするユーザ認証方法。The user authentication method according to claim 1,
The web server is
Session maintenance information that can uniquely identify the session is generated and recorded by the first communication request of the session from the Web client.
The user authentication method characterized by the above-mentioned.
前記Webサーバが、
前記セッション維持情報を暗号化し、2つに分割して、前記第1のセッション情報および前記第2のセッション情報を生成する、
ことを特徴とするユーザ認証方法。The user authentication method according to claim 1 or 2,
The web server is
The session maintenance information is encrypted and divided into two to generate the first session information and the second session information.
The user authentication method characterized by the above-mentioned.
前記第1のセッション情報が、
Webクライアントが保持するCookieデータに格納されて、当該セッション開始時に前記Webクライアントへ送信されており、
前記第2のセッション情報が、
前記Webクライアントが要求したWebページに記述されたリンク先のURLの引数として付加されて、Webページの要求の都度前記Webクライアントへ送信される、
ことを特徴とするユーザ認証方法。The user authentication method according to any one of claims 1 to 3,
The first session information is
Stored in Cookie data held by the Web client, and transmitted to the Web client at the start of the session,
The second session information is
It is added as an argument of the URL of the link destination described in the web page requested by the web client, and transmitted to the web client each time a web page is requested.
The user authentication method characterized by the above-mentioned.
前記第1のセッション情報が有効期間を有し、
前記Webクライアントは、前記有効期間内においてのみ、第1のセッション情報を前記Webサーバに送信する、
ことを特徴とするユーザ認証方法。The user authentication method according to any one of claims 1 to 4,
The first session information has a validity period;
The web client transmits first session information to the web server only within the valid period.
The user authentication method characterized by the above-mentioned.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003073904A JP4303988B2 (en) | 2003-03-18 | 2003-03-18 | User authentication method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003073904A JP4303988B2 (en) | 2003-03-18 | 2003-03-18 | User authentication method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004280684A JP2004280684A (en) | 2004-10-07 |
JP4303988B2 true JP4303988B2 (en) | 2009-07-29 |
Family
ID=33289687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003073904A Expired - Fee Related JP4303988B2 (en) | 2003-03-18 | 2003-03-18 | User authentication method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4303988B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4627316B2 (en) * | 2005-04-18 | 2011-02-09 | シャープ株式会社 | Service providing system, authentication method, authentication program, and recording medium therefor |
-
2003
- 2003-03-18 JP JP2003073904A patent/JP4303988B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004280684A (en) | 2004-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7562222B2 (en) | System and method for authenticating entities to users | |
EP2020797B1 (en) | Client-server Opaque token passing apparatus and method | |
WO2017028804A1 (en) | Web real-time communication platform authentication and access method and device | |
US8275984B2 (en) | TLS key and CGI session ID pairing | |
US8209744B2 (en) | Mobile device assisted secure computer network communication | |
US6993596B2 (en) | System and method for user enrollment in an e-community | |
US10547602B2 (en) | Communications methods and apparatus related to web initiated sessions | |
US20060294366A1 (en) | Method and system for establishing a secure connection based on an attribute certificate having user credentials | |
CN109413076B (en) | Domain name resolution method and device | |
US10129214B2 (en) | System and method for secure communication between domains | |
US20120284506A1 (en) | Methods and apparatus for preventing crimeware attacks | |
EP0940960A1 (en) | Authentication between servers | |
CN103179134A (en) | Single sign on method and system based on Cookie and application server thereof | |
KR20060100920A (en) | Trusted third party authentication for web services | |
CN102624740A (en) | Data interaction method, client and server | |
US10257171B2 (en) | Server public key pinning by URL | |
JP2007293760A (en) | Single sign-on cooperation method and system using individual authentication | |
CN111786996B (en) | Cross-domain synchronous login state method and device and cross-domain synchronous login system | |
CN114616795A (en) | Security mechanism for preventing retry or replay attacks | |
JP2001186122A (en) | Authentication system and authentication method | |
Sood et al. | Inverse Cookie-based Virtual Password Authentication Protocol. | |
JP5186648B2 (en) | System and method for facilitating secure online transactions | |
Prapty et al. | Preventing session hijacking using encrypted one-time-cookies | |
Claessens et al. | A tangled world wide web of security issues | |
JP4303988B2 (en) | User authentication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060317 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090325 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090414 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090427 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130501 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |