KR20090106368A - Methods and systems for authentication of a user for sub-locations of a network location - Google Patents

Methods and systems for authentication of a user for sub-locations of a network location Download PDF

Info

Publication number
KR20090106368A
KR20090106368A KR1020090071401A KR20090071401A KR20090106368A KR 20090106368 A KR20090106368 A KR 20090106368A KR 1020090071401 A KR1020090071401 A KR 1020090071401A KR 20090071401 A KR20090071401 A KR 20090071401A KR 20090106368 A KR20090106368 A KR 20090106368A
Authority
KR
South Korea
Prior art keywords
cookie
user
computer
location
sub
Prior art date
Application number
KR1020090071401A
Other languages
Korean (ko)
Other versions
KR101066729B1 (en
Inventor
앤드류 엠. 힘버거
크리스 페아로
루카스 제이. 포츠러
스틸만 티. 산더스
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Priority to KR1020090071401A priority Critical patent/KR101066729B1/en
Publication of KR20090106368A publication Critical patent/KR20090106368A/en
Application granted granted Critical
Publication of KR101066729B1 publication Critical patent/KR101066729B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies

Abstract

PURPOSE: A method and a system for authenticating a user for sub locations of a network location are provided to supply a cookie for user authentication about a sub location of a network location, thereby enabling a hacker to pretend as a user only about the same sub location that the user with ill will already accesses even though a cookie is stolen from the user with ill will. CONSTITUTION: A method for authenticating a user for at least sub locations of a network address comprises the following steps. If a cookie is effective, the second cookie for user authentication about the first sub location of a network address is provided to a user computer(308). When a computer attempts to access a network address after the first attempt, the first cookie is made effective to authenticate a user about the network address. When the computer attempts to access the first sub location after the first attempt, the second cookie is obtained and made effective from a computer to authenticate a user about the first sub location of the network address.

Description

네트워크 위치의 하위 위치에 대한 사용자의 인증을 위한 방법 및 시스템{METHODS AND SYSTEMS FOR AUTHENTICATION OF A USER FOR SUB-LOCATIONS OF A NETWORK LOCATION}METHODS AND SYSTEMS FOR AUTHENTICATION OF A USER FOR SUB-LOCATIONS OF A NETWORK LOCATION}

본 발명은 네트워크 리소스로의 액세스에 대한 사용자의 인증에 관한 것이다. 특히, 본 발명은 네트워크 위치의 하나 이상의 개별 하위 위치에 대한 사용자의 인증에 관한 것이다.The present invention relates to authentication of a user for access to a network resource. In particular, the present invention relates to authentication of a user to one or more individual sub-locations of a network location.

컴퓨터 네트워크는 리소스가 다른 컴퓨터들간에 공유되도록 한다. 예를 들어, 인터넷은 세계 도처의 컴퓨터들이 전자 메일 등의 정보를 교환하도록 한다. 월드 와이드 웹은 인터넷에 접속된 컴퓨터들간의 오디오-비주얼 정보의 교환을 제공한다. 또한, 중앙집중 컴퓨터 서버는 컴퓨터 사용자에 의해 포스트(post)된 정보가 다른 사람이 액세스하도록 저장할 수 있다.Computer networks allow resources to be shared among other computers. For example, the Internet allows computers all over the world to exchange information such as e-mail. The World Wide Web provides for the exchange of audio-visual information between computers connected to the Internet. In addition, a centralized computer server may store information posted by a computer user for others to access.

서버 컴퓨터는 컴퓨터 사용자가 인터넷 도메인 등의 네트워크 위치의 다양한 하위 위치 내에 저장된 정보를 액세스하도록 한다. 네트워크 위치의 하위 위치는 서버 팜(server farm)의 개별 서버 또는 하나 이상의 서버의 개별 디렉토리를 포함할 수 있다. 특정 하위 위치는, 네트워크 위치에 또한 접속된 다른 컴퓨터 사용자 에 의해 액세스되기 위하여 하위 위치에 정보를 포스트하는 사용자의 그룹 또는 특정 컴퓨터 사용자에게 할당될 수 있다. 네트워크를 통한 이러한 정보 공유는 컴퓨터 사용자에게 유리하지만, 다양한 네트워크 위치 및 네트워크 위치의 하위 위치로의 인증되지 않은 액세스를 방지하기 위하여 네트워크를 관리해야 한다.Server computers allow computer users to access information stored within various sub-locations of network locations, such as Internet domains. Sub-locations of network locations may include individual servers in a server farm or separate directories of one or more servers. Specific sub-locations may be assigned to specific computer users or groups of users who post information to sub-locations for access by other computer users who are also connected to network locations. Such sharing of information over a network is advantageous for computer users, but the network must be managed to prevent unauthorized access to various network locations and sub-locations of the network locations.

인증되지 않은 액세스를 방지하기 위하여, 사용자는 네트워크 위치에 대하여 인증을 받는다. 사용자의 인증은 다양한 방법으로 수행될 수 있다. 하나의 방법은 네트워크 위치 및 대응하는 하위 위치로의 액세스가 허용되기 전에 사용자가 사용자 이름 및 패스워드를 입력하는 것이다. 그러나, 사용자가 액세스하려는 네트워크 위치의 수가 증가함에 따라, 모든 위치에 대하여 사용자가 사용자 이름 및 패스워드를 입력해야 하는 요구가 번거로워진다.To prevent unauthorized access, the user is authenticated to the network location. Authentication of a user can be performed in a variety of ways. One method is for the user to enter a username and password before access to the network location and corresponding sub-location is allowed. However, as the number of network locations that a user wants to access increases, the need for the user to enter a username and password for every location becomes cumbersome.

이러한 문제를 처리하기 위하여, 사용자가 사용자 이름 및 패스워드를 한번 입력하면 사용자에게 쿠키가 발행되어, 그 쿠키가 네트워크 위치내의 하위 위치 모두에 대하여, 월드 와이드 웹내의 도메인 등의 네트워크 위치에서 사용자의 식별을 인증하는데 사용될 수 있다. 쿠키는, 사용자의 식별인 하나 이상의 긴 숫자를 포함함으로써 서버가 사용자를 식별하고 소정의 미래에 일반적으로 만료하는 데이터 파일이다. 사용자 이름 및 패스워드에 의한 초기 로그인은 일반적으로 예를 들어 .NETTM PassportTM 등의 기준 사용자 이름 및 패스워드를 유지하는 신뢰성있는 중앙 네트워크 위치를 통해 수행된다. 사용자가 네트워크 위치를 방문하려고 시도하면, 사용자의 컴퓨터는 네트워크 위치에 대한 사용자 컴퓨터에 암호화된 쿠키를 발행하 는 신뢰성있는 네트워크 위치로 진행한다. 그후, 사용자의 컴퓨터는 네트워크 위치의 서버로 되돌아오고, 그후 이 서버는 사용자 컴퓨터에 방금 발행된 쿠키를 체크한다.To address this issue, once a user enters a username and password, a cookie is issued to the user, which identifies the user at a network location, such as a domain within the World Wide Web, for all sub-locations within that network location. Can be used to authenticate. A cookie is a data file in which the server identifies a user and typically expires in some future time by including one or more long numbers that are the identification of the user. Initial login by username and password is typically performed through a trusted central network location that maintains a reference username and password, such as, for example, .NET Passport . When a user attempts to visit a network location, the user's computer proceeds to a trusted network location that issues an encrypted cookie to the user's computer for the network location. The user's computer then returns to a server at a network location, which then checks the cookie just issued to the user's computer.

서버는 사용자 컴퓨터로부터 쿠키를 요구하고, 그후 쿠키를 비밀 키로 해독하고 해독된 쿠키가 만료되었는지를 판정함으로써 쿠키를 유효화하도록 시도한다. 방문한 네트워크 위치의 서버가 성공적으로 쿠키를 유효화하면, 유효화된 쿠키가 네트워크 위치를 액세스하려고 시도한 사용자가 공지되고 신뢰성있는 식별(idendtity)의 사용자임을 확인하므로, 방문한 네트워크 위치는 사용자 시도 액세스를 인증한다. 식별은 해독된 쿠키 내에 포함된 정보에 의해 특정될 수 있다.The server attempts to validate the cookie by requesting a cookie from the user's computer, then decrypting the cookie with the secret key and determining if the decrypted cookie has expired. If the server of the visited network location successfully validates the cookie, the visited network location authenticates the user attempted access, since the validated cookie confirms that the user attempting to access the network location is a user of known and trusted identity. The identification can be specified by the information contained within the decrypted cookie.

사용자가 정보를 포스트할 수 있는 네트워크 위치의 하위 위치에 대하여, 방문한 네트워크 위치에 대한 사용자의 인증에 사용되는 쿠키에 대한 안전 위험은 여전히 존재한다. 방문한 네트워크 위치 내의 하위 위치로 액세스하는 사용자는 다양한 이유로 스크립트 정보를 포스트하여 하위 위치에 액세스하는 다른 사람에게 오디오-비주얼 정보를 제공할 수 있다. 그러나, 악의있는 사용자는, 사용자가 네트워크 위치를 방문할 때 다른 사용자 컴퓨터로부터 업로드되는 쿠키를 훔치는 등의 악의있는 활동을 수행하는 스크립트를 포스트할 수 있다.For sub-locations of the network location where the user can post information, there is still a security risk for the cookies used to authenticate the user to the visited network location. A user who accesses a sub-location within a visited network location may post script information for various reasons to provide audio-visual information to others accessing the sub-location. However, a malicious user may post a script that performs malicious activities, such as stealing cookies uploaded from another user's computer when the user visits a network location.

네트워크 위치를 방문한 다른 사용자의 쿠키를 얻으면, 이들 쿠키를 훔친 악의있는 사용자는 그후 이들 다른 사용자를 사칭하여 사칭된 사용자가 액세스한 네트워크 위치 내의 하위 위치로 액세스할 수 있다. 따라서, 쿠키를 훔친 악의있는 사용자에게, 악의있는 사용자가 사칭된 사용자에 대한 개인적, 재정적, 또는 다른 민감한 정보를 포함하는 활동 및/또는 하위 위치 등을 액세스할 수 없는 활동 및 하위 위치로의 액세스가 부여된다.Once the cookies of other users who have visited the network location are obtained, the malicious user who steals these cookies can then impersonate these other users to access sub-locations within the network location accessed by the impersonated user. As a result, a malicious user who steals a cookie has access to activities and sub-locations where the malicious user cannot access activities and / or sub-locations, including personal, financial, or other sensitive information about the impersonated user. Is given.

본 발명의 실시예는, 하위 위치를 제공하는 네트워크 위치에 대한 사용자를 인증하는 쿠키를 사용하는 것에 더하여, 네트워크 위치의 특정 하위 위치에 대한 사용자의 인증을 위한 쿠키를 제공함으로써 이들 및 다른 문제를 해결하는 것이다. 사용자가 네트워크 위치 및 하위 위치에 로그인하면, 네트워크 위치에 대한 쿠키 및 개별 하위 위치에 대한 쿠키만이 방문한 하위 위치 내에 노출된다. 이들 2개의 쿠키가 하위 위치 내의 악의있는 스크립트를 포스트한 악의있는 사용자에 의해 도난당하면, 쿠키를 훔친 악의있는 사용자는 쿠키를 훔친 사용자가 이미 액세스한 동일한 하위 위치에 대해서만 사용자를 사칭할 수 있다. 쿠키를 훔친 악의있는 사용자는 하위 위치에 특정한 다른 쿠키를 요구하는 다른 하위 위치에 대해서는 사용자를 사칭할 수 없을 것이다.Embodiments of the present invention address these and other problems by providing a cookie for authenticating a user to a particular sub-location of the network location, in addition to using a cookie that authenticates the user to a network location that provides the sub-location. It is. When a user logs in to network locations and sub-locations, only cookies for network locations and cookies for individual sub-locations are exposed within the visited sub-locations. If these two cookies are stolen by a malicious user who has posted a malicious script in a sub-location, the malicious user who steals the cookie may impersonate the user only for the same sub-location already accessed by the stolen user. A malicious user who steals a cookie will not be able to impersonate a user for another sub-location that requires another cookie specific to that sub-location.

일실시예는 네트워크 어드레스의 하위 위치에 대한 컴퓨터의 사용자를 인증 하는 방법이다. 본 방법은 네트워크 어드레스에 대한 사용자 인증을 위한 컴퓨터에 제 1 쿠키를 제공하고 네트워크 어드레스의 제 1 하위 위치에 대한 사용자 인증을 위한 컴퓨터에 제 2 쿠키를 제공하는 것을 포함한다. 컴퓨터가 네트워크 어드레스를 액세스하려고 시도하면, 제 1 쿠키는 네트워크 어드레스에 대한 사용자를 인증하기 위하여 유효화된다. 제 2 쿠키는 네트워크 어드레스의 제 1 하위 위치에 대한 사용자를 인증하기 위하여 유효화된다.One embodiment is a method for authenticating a user of a computer to a lower location of a network address. The method includes providing a first cookie to a computer for user authentication for a network address and providing a second cookie to the computer for user authentication for a first sub-location of the network address. When the computer attempts to access the network address, the first cookie is validated to authenticate the user for the network address. The second cookie is validated to authenticate the user for the first sub-location of the network address.

또다른 실시예는 네트워크 인터페이스 및 프로세싱 장치를 포함하는 컴퓨터 시스템이다. 프로세싱 장치는, 네트워크 인터페이스를 통해 제 1 쿠키를 획득하고 네트워크 어드레스에 대한 사용자를 인증하기 위하여 제 1 쿠키를 유효화하도록 구성된다. 프로세싱 장치는 또한 네트워크 인터페이스를 통해 제 2 쿠키를 획득하고 네트워크 어드레스의 제 1 하위 위치에 대한 사용자를 인증하기 위하여 제 2 쿠키를 유효화하도록 구성된다. Yet another embodiment is a computer system that includes a network interface and a processing device. The processing apparatus is configured to obtain the first cookie via the network interface and to validate the first cookie to authenticate the user for the network address. The processing apparatus is also configured to obtain a second cookie via the network interface and validate the second cookie to authenticate the user for the first sub-location of the network address.

또다른 실시예는 네트워크 어드레스의 하나 이상의 하위 위치를 제공하는 네트워크 어드레스에 서버 컴퓨터를 포함하는 네트워크 시스템이다. 클라이언트 컴퓨터는 네트워크를 통해 서버 컴퓨터와 통신하고, 클라이언트 컴퓨터는 네트워크 어드레스에 대한 제 1 쿠키와 네트워크 어드레스의 하위 위치에 대한 제 2 쿠키를 저장한다. 서버 컴퓨터는 제 1 쿠키를 액세스하고 유효화하여 네트워크 어드레스에 대한 클라이언트 컴퓨터의 사용자를 인증하고, 서버 컴퓨터는 제 2 쿠키를 액세스하고 유효화하여 네트워크 어드레스의 하위 위치에 대한 클라이언트 컴퓨터의 사용자를 인증한다.Another embodiment is a network system that includes a server computer at a network address that provides one or more sub-locations of the network address. The client computer communicates with the server computer via the network, and the client computer stores a first cookie for the network address and a second cookie for a subordinate location of the network address. The server computer accesses and validates the first cookie to authenticate the user of the client computer for the network address, and the server computer accesses and validates the second cookie to authenticate the user of the client computer for the sub-location of the network address.

또다른 실시예는 컴퓨터에 의해 실행될 때 많은 단계를 수행하는 명령을 포함하는 컴퓨터 판독 가능 매체이다. 제 1 쿠키는 컴퓨터의 네트워크 인터페이스를 통해 획득되고 네트워크 어드레스에 대한 사용자를 인증하기 위하여 유효화된다. 제 2 쿠키는 컴퓨터의 네트워크 인터페이스를 통해 획득되고 네트워크 어드레스의 제 1 하위 위치에 대한 사용자를 인증하기 위하여 유효화된다.Yet another embodiment is a computer readable medium containing instructions for performing many steps when executed by a computer. The first cookie is obtained through the computer's network interface and validated for authenticating the user to the network address. The second cookie is obtained through the computer's network interface and validated to authenticate the user for the first sub-location of the network address.

본 발명에 따르면, 하위 위치를 제공하는 네트워크 위치에 대한 사용자를 인증하는 쿠키를 사용하는 것에 더하여, 네트워크 위치의 특정 하위 위치에 대한 사용자의 인증을 위한 쿠키를 제공함으로써, 악의있는 사용자로부터 쿠키를 도난당해도, 악의있는 사용자가 이미 액세스한 동일한 하위 위치에 대해서만 사용자를 사칭할 수 있고 다른 하위 위치에 대해서는 사용자를 사칭할 수 없는 효과가 있다.According to the present invention, in addition to using a cookie that authenticates a user to a network location that provides a sub-location, the cookie is stolen from a malicious user by providing a cookie for authentication of the user to a particular sub-location of the network location. Also in this case, the user can impersonate the user only for the same sub-location already accessed by the malicious user and cannot impersonate the user for the other sub-location.

본 발명의 실시예는, 도 1-4에 도시되고 논의된 바와 같이, 네트워크 위치의 많은 하위 위치에 대한 디렉토리 쿠키 등의 하위 위치 쿠키를 제공한다. 네트워크 위치의 일예는 URL 또는 IP 어드레스 내에서 식별된 도메인이다. 하위 위치 쿠키는, 사용자가 하위 위치를 호스팅하는 네트워크 위치에 대하여 인증되는 것에 더하여 하위 위치에 대하여 인증되도록 제공된다. 따라서, 네트워크 위치에 대한 잘못된 인증을 허용하는 쿠키를 훔친 사용자가 또한 다른 쿠키로 네트워크 위치 내의 하위 위치에 대하여 인증되도록 요구된다.Embodiments of the present invention provide sub-location cookies, such as directory cookies for many sub-locations of network locations, as shown and discussed in FIGS. One example of a network location is a domain identified within a URL or IP address. Sub-location cookies are provided to allow a user to be authenticated for sub-locations in addition to being authenticated for network locations hosting sub-locations. Thus, a user who steals a cookie that permits incorrect authentication to the network location is also required to authenticate to subordinate locations within the network location with other cookies.

도 1은 본 발명의 실시예가 구현될 수 있는 일반적인 네트워크 오퍼레이팅 환경을 도시한다. 클라이언트 컴퓨터(102)는 근거리 통신망, 원거리 통신망, 또는 글로벌 인터넷 등의 네트워크(106)에 링크된다. 클라이언트 컴퓨터(102)는 네트워크(106)에 또한 링크된 많은 서버 컴퓨터와 통신할 수 있다. 예를 들어, 네트워크에 링크된 로그인 서버(108)는, 사용자가 이메일 주소 등의 사용자 이름 및 패스워드로 로그인하도록 하여, 그 네트워크 위치에 대하여 사용자가 사용자 이름 및 패스워드를 다시 입력하지 않고, 사용자가 네트워크 위치에서 인증될 수 있도록 하는 제 1 서버 쿠키를 획득한다. 또한, 로그인 서버(108)는, 클라이언트 컴퓨터의 사용자에게 로그인 쿠키를 발행하여, 사용자가 네트워크 위치를 방문하려고 시도하고 인증을 위한 로그인 서버(180)로 진행할 때, 사용자 이름 및 패스워드의 또다른 입력없이 로그인 쿠키가 로그인 서버(108)에 대한 사용자를 인증하기 위하여 획득되도록 할 수 있다.1 illustrates a typical network operating environment in which embodiments of the invention may be implemented. The client computer 102 is linked to a network 106, such as a local area network, a telecommunications network, or the global internet. Client computer 102 may communicate with many server computers that are also linked to network 106. For example, a login server 108 linked to a network allows a user to log in with a username and password, such as an email address, so that the user does not re-enter the username and password for that network location, Obtain a first server cookie that allows authentication at the location. In addition, the login server 108 issues a login cookie to the user of the client computer so that when the user attempts to visit a network location and proceeds to the login server 180 for authentication, the user does not enter another username and password. A login cookie may be obtained to authenticate the user to the login server 108.

로그인 서버(108)는 기준 사용자 이름 및 패스워드의 기억장치(110)를 액세스할 수 있다. 클라이언트 컴퓨터(102)의 사용자가 먼저 로그인 서버(108)를 방문하여 사용자 이름 및 패스워드를 입력하면, 로그인 서버(108)는 기억장치(110)내의 사용자 이름을 찾아 입력된 패스워드와 저장된 패스워드를 비교할 수 있다. 그들이 매칭되면, 클라이언트 컴퓨터(102)의 사용자는 사용자 이름을 소유하는 사용자로서 인증되고 로그인 쿠키가 로그인 서버(108)로부터 클라이언트 컴퓨터(102)로 제공되고, 클라이언트 컴퓨터가 서비스 서버(112)를 방문하려고 시도한 결과로서 로그인 서버로 진행할때 서버 쿠키가 제공될 수 있다. 로그인 쿠키 및 서버 쿠키는 쿠키를 획득하기 위하여 로그인한 사용자 이름의 소유자에 대응하는 식별자 값 을 포함할 수 있다. 또한, 이들 쿠키는 비밀 키로 암호화될 수 있고 및/또는 만료 시간을 가질 수 있다. 클라이언트 컴퓨터(102)는 기억장치(104)에 쿠키를 저장하여, 클라이언트 컴퓨터(102)가 대응하는 네트워크 위치에 액세스하려고 시도할 때, 기억장치(104)내의 서버 쿠키가 네트워크 위치에서 서버에 의해 획득되어 다양한 방법 중 하나의 방법으로 서버 쿠키를 유효화함으로써 사용자를 인증할 수 있도록 한다. 유효화는 비밀 키로 서버 쿠키를 해독하려고 시도하고 및/또는 서버 쿠키가 그 만료일에 기초하여 만료하지 않았다는 것을 검증하는 것을 포함할 수 있다. 또한, 클라이언트 컴퓨터(102)가 로그인 서버(108)로 다시 진행하면, 로그인 쿠키가 로그인 서버(108)에 의해 획득되어 사용자 이름 및 패스워드의 재입력없이 다시 한번 클라이언트 사용자(102)의 사용자를 인증할 수 있다.The login server 108 can access the storage device 110 of the reference user name and password. When a user of the client computer 102 first visits the login server 108 and inputs a user name and password, the login server 108 can find the user name in the storage device 110 and compare the entered password with the stored password. have. If they match, the user of the client computer 102 is authenticated as the user who owns the username, a login cookie is provided from the login server 108 to the client computer 102, and the client computer attempts to visit the service server 112. As a result of the attempt, a server cookie may be provided when proceeding to the login server. The login cookie and the server cookie may include an identifier value corresponding to the owner of the logged in user name to obtain the cookie. In addition, these cookies can be encrypted with a secret key and / or have an expiration time. Client computer 102 stores the cookie in storage 104 such that when the client computer 102 attempts to access a corresponding network location, a server cookie in storage 104 is obtained by the server at the network location. The user can then authenticate the user by validating the server cookie in one of a variety of ways. Validation may include attempting to decrypt the server cookie with the secret key and / or verifying that the server cookie did not expire based on its expiration date. Also, when client computer 102 proceeds back to login server 108, a login cookie is obtained by login server 108 to authenticate the user of client user 102 once again without re-entering the username and password. Can be.

서비스 서버(112)는, 네트워크(106)에 링크되고 네트워크 위치에서 서버 팜의 개별 서버 등 또는 서버(112)에 의해 확립된 네트워크 위치의 디렉토리(116, 118, 120) 등의 많은 하위 위치로의 액세스를 제공하는 것을 포함하는 서비스를 클라이언트 컴퓨터(102)에 제공한다. 서버 팜의 개별 서버 또는 개별 디렉토리(116, 118, 120)는 문서 등의 클라이언트 컴퓨터(102)에 유용한 많은 정보를 제공하고 개인적 또는 민감한 정보를 액세스할 수 있다. 예를 들어, 사용자가 하위 위치에 대하여 인증되면, 사용자는 사용자가 구입할 때 정보를 재입력하지 않고 하위 위치에 의해 인증된 사용자에 대한 빌링(billing) 정보가 저장되고 적용되는 하위 위치를 통해 온라인 구입할 수 있다. Service server 112 is linked to network 106 and from a network location to many sub-locations, such as individual servers in a server farm, or directories 116, 118, and 120 of network locations established by server 112. Provide the client computer 102 with a service comprising providing access. Individual servers or individual directories 116, 118, 120 in a server farm can provide a lot of information useful to client computers 102, such as documents, and access personal or sensitive information. For example, if a user is authenticated to a sub-location, the user does not re-enter the information when the user makes a purchase, but purchases online through the sub-location where billing information for the user authenticated by the sub-location is stored and applied. Can be.

서비스 서버(112)에 의해 제공된 네트워크 위치로의 인증되지 않은 액세스를 방지하기 위하여, 서버(112)는, 서버(112)로의 액세스를 시도하는 클라이언트 컴퓨터(102)로부터 서버 쿠키를 획득함으로써 서버(112)에 의해 제공된 특정 하위 위치 및 다른 서비스를 액세스하려고 시도하는 사용자를 인증한다. 서버(112)는 기억장치(114)내의 특정 키로 해독을 시도하고 및/또는 서버 쿠키가 만료되지 않았는다는 것을 검증함으로써 상술한 바와 같이 서버 쿠키를 유효화한다. 초기 인증에 더하여 네트워크 위치로의 액세스가 인증을 요구하면, 쿠키의 식별자 정보는 기억장치(114)내에 유지된 식별자 정보와 비교될 수 있다.To prevent unauthorized access to the network location provided by the service server 112, the server 112 obtains a server cookie from the client computer 102 attempting to access the server 112. Authenticate users attempting to access certain sub-locations and other services provided by). The server 112 validates the server cookie as described above by attempting to decrypt with a particular key in storage 114 and / or verifying that the server cookie has not expired. In addition to the initial authentication, if access to the network location requires authentication, the identifier information of the cookie can be compared with the identifier information maintained in the storage 114.

클라이언트 컴퓨터(102)가 서비스 서버(112)의 네트워크 위치를 액세스할 때, 클라이언트 컴퓨터(102)의 사용자가 아직 네트워크 위치에 대한 서버 쿠키를 획득하지 않았으면, 클라이언트 컴퓨터(102)는 로그인 서버(108)로 진행한다. 인증된 후, 클라이언트 컴퓨터(102)는 로그인 서버(108)로부터 서비스 서버(112)로의 질의 스트링(query string)내의 메시지와 서버 쿠키를 가지고 서비스 서버(112)로 진행한다. 이 메시지는 사용자가 로그인 서버(180)에서 방금 인증된 것인지를 표시하고, 사용자가 서버 쿠키를 훔치지 않고 그것을 합법적으로 얻었음을 표시한다. 서비스 서버(112)가 메시지를 수신하고 방금 수신된 서버 쿠키의 유효화를 통해 사용자를 인증하면, 서비스 서버(112)는 인증을 요구하는 하나 이상의 하위 위치에 대하여 인증된 사용자에 대한 하위 위치 쿠키를 생성한다.When the client computer 102 accesses the network location of the service server 112, if the user of the client computer 102 has not yet obtained a server cookie for the network location, the client computer 102 may log in to the login server 108. Proceed to). After authentication, client computer 102 proceeds to service server 112 with a server cookie and a message in a query string from login server 108 to service server 112. This message indicates whether the user has just been authenticated at the login server 180 and indicates that the user has legitimately obtained it without stealing the server cookie. When the service server 112 receives the message and authenticates the user through validation of the server cookie just received, the service server 112 generates a sub-location cookie for the authenticated user for one or more sub-locations requiring authentication. do.

하위 위치 쿠키는 서비스 서버(112)로부터 사용자의 클라이언트 컴퓨터(102)로 제공되어 매스 기억장치 등의 기억장치(104)에 저장된다. 하위 위치 쿠키는, 서비스 서버(112)가 기억장치(114) 내의 또다른 비밀 키로 하위 위치 쿠키를 해독 할 수 있고 및/또는 만료를 체크하여 쿠키를 유효화할 수 있도록, 암호화되고 및/또는 만료 값을 가질 수 있다. 인증된 사용자에 대한 하위 위치에 대하여 인증이 결정되는 임의의 실시예에서, 사용자에 대한 식별자 정보는 또한 이들 하위 위치 쿠키내에 포함될 수 있고 매칭 식별자가 하나 이상의 다양한 하위 위치에 대한 인증과 결합하여 서비스 서버(112)의 기억장치(114)에 저장된다. 사용자가 서버 쿠키를 갖지 않아 사용자가 네트워크 위치를 액세스할 때 인증될 수 없으면, 서비스 서버(112)는 상술한 바와 같이 클라이언트 컴퓨터(102)를 로그인 서버(108)로 다시 진행시키거나 또는 클라이언트 컴퓨터(102)로의 액세스를 단순히 거부할 수 있다.The lower position cookie is provided from the service server 112 to the user's client computer 102 and stored in a storage 104 such as mass storage. The lower location cookie is encrypted and / or expired value such that the service server 112 can decrypt the lower location cookie with another secret key in storage 114 and / or validate the cookie by checking expiration. May have In any embodiment where authentication is determined for sub-locations for an authenticated user, identifier information for the user may also be included in these sub-location cookies and the matching identifier may be combined with authentication for one or more various sub-locations to service servers. It is stored in the storage device 114 of 112. If the user does not have a server cookie and cannot be authenticated when the user accesses a network location, the service server 112 advances the client computer 102 back to the login server 108 or as described above. 102 may simply be denied access.

서버 쿠키의 유효화를 통해 인증된 후 클라이언트 컴퓨터(102)의 사용자가 서비스 서버(112)의 네트워크 위치 내의 특정 하위 위치를 액세스하려고 시도하면, 서비스 서버(112)는 클라이언트 컴퓨터(102)로부터 대응하는 하위 위치 쿠키를 획득한다. 서비스 서버(112)는 해독 및/또는 만료일의 체크 등에 의한 하위 위치 쿠키의 유효화를 시도하여 액세스되는 하위 위치에 대한 클라이언트 컴퓨터(102)의 사용자를 인증한다. 하위 위치 쿠키는 하위 위치 쿠키가 적용되는 하위 위치의 식별자를 포함할 수 있고, 사용자에 대한 서버 쿠키에 또한 사용되는 식별자를 포함하는 다른 많은 정보를 포함할 수 있다. 사용자 식별 정보가 포함된 실시예에 대하여, 하위 위치 쿠키는 서버 쿠키 내에 포함된 사용자의 식별자보다 서비스 서버(112)에 의해 사용자와 관련된 다른 식별자를 포함할 수 있다.If the user of client computer 102 attempts to access a particular sub-location within the network location of service server 112 after being authenticated through the validation of a server cookie, service server 112 may request a corresponding sub-location from client computer 102. Obtain a location cookie. The service server 112 attempts to validate the subordinate location cookie, such as by decryption and / or checking the expiration date, to authenticate the user of the client computer 102 to the subordinate location being accessed. The sub-location cookie may include an identifier of the sub-location to which the sub-location cookie applies, and may include a lot of other information including the identifier also used in the server cookie for the user. For embodiments in which user identification information is included, the lower location cookie may include other identifiers associated with the user by the service server 112 than the identifier of the user included in the server cookie.

사용자가 네트워크 위치를 액세스한 후 어떤 사람이 사용자의 서버 쿠키를 훔치면, 훔친 서버 쿠키는 하위 위치 쿠키를 요구하는 네트워크 위치의 하위 위치 로의 액세스에 필요한 인증을 제공하지 않을 것이다. 합법적인 사용자가 사용자 컴퓨터(102)로부터 얻어진 하위 위치 쿠키로 하위 위치에 대하여 인증되고 사용자가 하위 위치를 방문하는 동안 어떤 사람이 하위 위치 쿠키를 훔치면, 훔친 하위 위치 쿠키는 네트워크 위치의 다른 하위 위치로의 액세스에 필요한 인증을 제공하지 않을 것이다. 훔친 하위 위치 쿠키는 쿠키 도둑이 이미 액세스한 하위 위치에 대하여만 인증을 허용할 것이다.If a user steals the user's server cookie after the user has accessed the network location, the stolen server cookie will not provide the authentication necessary to access the child location of the network location that requires the child location cookie. If a legitimate user is authenticated for a sublocation with a sublocation cookie obtained from the user's computer 102 and someone steals the sublocation cookie while the user is visiting the sublocation, the stolen sublocation cookie is transferred to another sublocation of the network location. Will not provide the necessary authentication for access. Stolen sub-location cookies will only allow authentication for sub-locations the cookie thief has already accessed.

도 2 및 다음의 설명은 본 발명이 서비스 서버 컴퓨터(112)에서 구현될 수 있는 적절한 컴퓨팅 환경의 간략하고 일반적인 설명을 제공하기 위한 것이다. 본 발명은 서버 컴퓨터 상에 오퍼레이팅 시스템을 실행하는 애플리케이션 프로그램과 결합하여 실행하는 프로그램 모듈의 일반적인 컨텍스트로 설명할 것이지만, 당업자는 본 발명이 다른 프로그램 모듈과 결합하여 구현될 수 있음을 인식할 것이다. 일반적으로 프로그램 모듈은 루틴, 프로그램, 컴포넌트, 데이터 구조, 및 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 다른 유형의 구조를 포함한다.2 and the following description are intended to provide a brief, general description of a suitable computing environment in which the present invention may be implemented in a service server computer 112. While the invention will be described in the general context of program modules that execute in conjunction with application programs that execute operating systems on server computers, those skilled in the art will recognize that the invention may be implemented in combination with other program modules. Generally, program modules include routines, programs, components, data structures, and other types of structures that perform particular tasks or implement particular abstract data types.

또한, 본 발명이 핸드헬드(hand-held) 장치, 멀티프로세서 시스템, 마이크로프로세서-베이스드 또는 프로그래머블 소비자 전자장치, 미니컴퓨터, 메인프레임 컴퓨터 등을 포함하는 다른 컴퓨터 시스템 구성으로 실행될 수 있음을 당업자는 이해할 것이다. 도 1의 서버 컴퓨터(112)에 적용되는 본 발명은, 또한 태스크가 단일 컴퓨터에서 보다 오히려 통신 네트워크를 통해 링크된 원격 프로세싱 장치에 의해 수행되는 분산 컴퓨텅 환경에서 실행될 수 있다. 분산 컴퓨팅 환경에서, 프로 그램 모듈은 로컬 및 원격 메모리 기억장치 둘다에 위치할 수 있다.Those skilled in the art will also appreciate that the present invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. I will understand. The invention, applied to the server computer 112 of FIG. 1, may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network rather than on a single computer. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

도 2는 본 발명의 다양한 실시예를 실행하는 서버 컴퓨터(112)에 대한 예시적인 컴퓨터 아키텍처를 나타낸다. 도 2에 도시된 컴퓨터 아키텍처는 중앙 처리 장치(204; "CPU"), 랜덤 액세스 메모리(208; "RAM") 및 리드 온리 메모리(210; "ROM")를 포함하는 시스템 메모리(206), 메모리를 CPU(204)에 결합하는 시스템 버스(212)를 포함하는 종래의 서버 컴퓨터를 나타낸다. 시동하는 동안 컴퓨터 내의 소자들간의 정보를 전송하는 것을 돕는 기본 루틴을 포함하는 기본 입출력 시스템이 ROM(210)에 저장된다. 서버 컴퓨터(112)는, 또한 로그인 및 하위 위치 쿠키 인증 기능을 수행하는 쿠키 애플리케이션 프로그램(218) 등의 애플리케이션 프로그램 및 오퍼레이팅 시스템(216)을 저장하는 매스 기억장치(214)를 포함한다. 매스 기억장치(214)는 또한 하위 위치 쿠키를 발생시키는 쿠키 발생기(224) 및 사용자 컴퓨터로부터 하위 위치 쿠키 및 로그인을 유효화하는 쿠키 체커(226)를 포함하는 쿠키 애플리케이션 프로그램(218)의 2 컴포넌트를 저장한다. 유효화는 매스 기억장치(214)의 쿠키 해독 키 정보(228)를 이용하고 및/또는 쿠키의 만료 값을 체크하여 사용자를 인증할 수 있다. 매스 기억장치(214)는 또한 네트워크 위치에 제공된 다양한 하위 위치에 대한 하위 위치 데이터(230)를 포함할 수 있다.2 illustrates an example computer architecture for a server computer 112 implementing various embodiments of the present invention. The computer architecture shown in FIG. 2 is a system memory 206, memory including a central processing unit 204 (" CPU "), random access memory 208 (" RAM ") and read only memory 210 (" ROM "). To a conventional server computer including a system bus 212 that couples the CPU 204 to the CPU 204. A basic input / output system is stored in ROM 210 that includes a basic routine that assists in transferring information between elements in a computer during startup. The server computer 112 also includes a mass storage 214 that stores an operating system 216 and application programs, such as a cookie application program 218 that performs login and sub-location cookie authentication functions. The mass storage 214 also stores two components of the cookie application program 218 including a cookie generator 224 for generating sub-location cookies and a cookie checker 226 for validating sub-location cookies and logins from the user's computer. do. Validation may use the cookie decryption key information 228 of the mass store 214 and / or check the expiration value of the cookie to authenticate the user. Mass storage 214 may also include sub-location data 230 for various sub-locations provided at network locations.

매스 기억장치(214)는 버스(212)에 접속된 매스 기억장치 제어기(미도시)를 통해 CPU(214)에 접속된다. 매스 기억장치(214)와 그 관련된 컴퓨터 판독 가능 매체는 서버 컴퓨터(112)에 비휘발성 스토리지(storage)를 제공한다. 여기에 포함된 컴퓨터 판독 가능 매체의 설명은 하드 디스크 또는 CD-ROM 드라이브 등의 매스 기 억장치를 지칭하지만, 당업자는 컴퓨터 판독 가능 매체가 서버 컴퓨터(112)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있음을 이해할 것이다.Mass storage 214 is connected to CPU 214 via a mass storage controller (not shown) connected to bus 212. Mass storage 214 and its associated computer readable medium provide non-volatile storage to server computer 112. Although descriptions of computer readable media included herein refer to mass storage devices, such as hard disks or CD-ROM drives, those of ordinary skill in the art will appreciate that any computer readable medium may be used by any server computer 112 that can be accessed. It will be appreciated that it may be a medium.

예로서, 한정되지는 않지만, 컴퓨터 판독 가능 매체는 컴퓨터 기억 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 기억 매체는 임의의 방법 또는 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈 또는 다른 데이터 등의 정보의 기억을 위한 기술로 구현되는 비휘발성, 분리형 및 비분리형 매체를 포함한다. 컴퓨터 기억 매체는 RAM, ROM, EPROM, EEPROM, 플래시 메모리 또는 다른 고체 상태 메모리 기술, CD-ROM, DVD, 또는 다른 광학 스토리지, 자기 카세트, 자기 테이프, 자기 디스크 스토리지 또는 다른 자기 기억 장치, 또는 컴퓨터에 의해 액세스될 수 있고 소망의 정보를 저장하는 데 사용될 수 있는 임의의 다른 매체를 포함하지만, 이에 한정되지 않는다.By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media may be RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device, or computer. Including, but not limited to, any other medium that can be accessed by and used to store desired information.

통신 매체는 일반적으로 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈 또는 반송파 또는 다른 전송 메카니즘 등의 변조 데이터 신호의 다른 데이터를 구현하고 임의의 정보 전송 매체를 포함한다. 용어 "변조 데이터 신호"는 신호의 정보를 인코딩하도록 변경되거나 설정된 하나 이상의 특성을 갖는 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 유선 접속 등의 유선 매체 및 음향, RF, 적외선, 및 다른 무선 매체 등의 무선 매체를 포함하지만 이에 한정되지 않는다. 상술한 것들 중의 임의의 결합도 또한 컴퓨터 판독 가능 매체의 범위내에 포함되어야 한다. 컴퓨터 판독 가능 매체는 또한 컴퓨터 판독 가능 제품으로 지칭된다.Communication media generally embody any other data transmission medium and implement other data in a modulated data signal, such as computer readable instructions, data structures, program modules or carriers or other transmission mechanisms. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed to encode information in the signal. By way of example, communication media includes, but is not limited to, wired media such as a wired network or direct wired connection and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above should also be included within the scope of computer readable media. Computer readable media is also referred to as computer readable product.

본 발명의 다양한 실시예에 따르면, 서버 컴퓨터(112)는 인터넷 등의 네트워크(106)를 통한 원격 컴퓨터로의 논리적 접속을 이용하여 네트워크된 환경에서 동작할 수 있다. 서버 컴퓨터(112)는 버스(212)에 접속된 네트워크 인터페이스 유닛(220)을 통해 네트워크(106)에 접속될 수 있다. 네트워크 인터페이스 유닛(220)은 또한 다른 유형의 네트워크 및 원격 컴퓨터 시스템에 접속하는 데 사용될 수 있다. 서버 컴퓨터(112)는 또한 키보드 또는 마우스(미도시)를 포함하는 다수의 장치로부터의 입력을 수신하고 처리하는 입출력 제어기(222)를 포함할 수 있다. 마찬가지로, 입출력 제어기(222)는 디스플레이 스크린, 프린터, 또는 다른 유형의 출력 장치에 출력을 제공할 수 있다.According to various embodiments of the present invention, server computer 112 may operate in a networked environment using logical connections to remote computers via a network 106 such as the Internet. The server computer 112 may be connected to the network 106 via a network interface unit 220 connected to the bus 212. Network interface unit 220 may also be used to connect to other types of networks and remote computer systems. Server computer 112 may also include an input / output controller 222 that receives and processes input from a number of devices including a keyboard or mouse (not shown). Similarly, input / output controller 222 may provide output to a display screen, printer, or other type of output device.

위에서 간략히 설명한 바와 같이, 네트워킹된 서버 컴퓨터(112)의 동작을 제어하기에 적합한 오퍼레이팅 시스템(216)을 포함하는 다수의 프로그램 모듈 및 데이터 파일은 매스 기억장치(214) 및 서버 컴퓨터(112)의 RAM(208)에 저장될 수 있다. 매스 기억장치(214) 및 RAM(208)은 또한 쿠키 애플리케이션(218) 등의 하나 이상의 애플리케이션 프로그램 및 쿠키 생성기(224), 쿠키 체커(226), 및 쿠키 해독 키 정보(228)를 포함하는 대응하는 컴포넌트를 저장할 수 있다.As briefly described above, a number of program modules and data files, including an operating system 216 suitable for controlling the operation of the networked server computer 112, may be stored in the RAM of the mass storage 214 and the server computer 112. 208 can be stored. Mass storage 214 and RAM 208 may also include one or more application programs, such as cookie application 218 and cookie generator 224, cookie checker 226, and cookie decryption key information 228. You can save the component.

본 발명의 실시예는 쿠키 애플리케이션 프로그램(218)과 결합하여 사용하는 프로그램 모듈을 제공한다. 프로그램 모듈은 논리적 동작을 구현하여 네트워크 위치의 다양한 하위 위치를 액세스하려고 시도하는 사용자를 인증한다. 쿠키 애플리케이션 프로그램(218)에 대한 프로그램 모듈의 논리적 동작의 다양한 실시예는 도 3 및 도 4를 참조하여 이하에서 설명한다. 도 3은 클라이언트 컴퓨터(102), 로그 인 서버(108), 및 서비스 서버(112)가 서비스 서버(112)의 네트워크 위치의 하위 위치에 대한 클라이언트 컴퓨터(102)의 사용자를 인증하기 위하여 상호 작용하는 도 1의 네트워크 환경 내에서 구현되는 논리적 동작을 나타낸다. 도 4는 사용자의 인증을 위한 하위 위치 쿠키를 발생시키고 체크하기 위하여 쿠키 애플리케이션(218) 내에서 구현되는 논리적 동작을 나타낸다.An embodiment of the present invention provides a program module for use in combination with the cookie application program 218. The program module implements logical operations to authenticate users attempting to access various sub-locations of the network location. Various embodiments of the logical operation of the program module for the cookie application program 218 are described below with reference to FIGS. 3 and 4. 3 illustrates that client computer 102, login server 108, and service server 112 interact to authenticate a user of client computer 102 to a sub-location of the network location of service server 112. Represents a logical operation implemented within the network environment of FIG. 4 illustrates a logical operation implemented within cookie application 218 to generate and check sub-location cookies for authentication of a user.

일실시예에 대한 도 3의 예시적인 논리적 동작은 로그인 동작(302)에서 시작하고, 여기서, 클라이언트 컴퓨터(102)는 사용자가 방문하려고 시도하는 서비스 서버(112)로부터 진행되어 사용자 이름 및 패스워드를 입력함으로써 로그인 서버(108)에 로그인한다. 로그인 서버(108)는 사용자 이름과 패스워드를 사용자에 대한 기준 사용자 이름 및 패스워드와 비교한다. 비교가 로그인 증명서에 매칭하는 것을 가리키면, 로그인 서버(108)는 서버 쿠키(제 1 쿠키)를 클라이언트 컴퓨터(102)에 제공한다. 상술한 바와 같이, 이 서버 쿠키는 만료 값을 포함할 수 있고 및/또는 서버 쿠키가 유효화될 수 있도록 서비스 서버(112)에 의해 공지된 키로 암호화될 수 있다. 또한, 상술한 바와 같이, 사용자가 미래에 로그인 서버(108)로 다시 진행하면 로그인 서버(108)는 또한 로그인 서버(108)에 대하여 사용자를 인증하는 로그인 쿠키를 제공할 수 있다.The example logical operation of FIG. 3 for one embodiment begins with a login operation 302, where the client computer 102 proceeds from a service server 112 that the user attempts to visit and enters a username and password. By logging in to the login server 108. The login server 108 compares the username and password with a reference username and password for the user. If the comparison indicates matching the login credentials, the login server 108 provides a server cookie (first cookie) to the client computer 102. As mentioned above, this server cookie may include an expiration value and / or may be encrypted with a known key by the service server 112 so that the server cookie can be validated. In addition, as described above, if the user proceeds back to the login server 108 in the future, the login server 108 may also provide a login cookie that authenticates the user to the login server 108.

클라이언트 컴퓨터(102)가 서버 쿠키를 획득하기 위하여 로그인한 후, 로그인 서버(108)로부터 서비스 서버(112)로 다시 되돌아가면, 클라이언트 컴퓨터(102)는 액세스 동작(306)에서 서비스 서버(112)의 네트워크 위치를 액세스하려고 시도한다. 재진행시, 질의 스트링은 서버 쿠키를 갖는 클라이언트 컴퓨터(102)의 사용 자가 방금 인증되었다는 것을 가리키는 로그인 서버(108)로부터의 메시지를 포함한다. 이때, 서비스 서버(112)는 질의 스트링으로부터의 메시지 및 클라이언트 컴퓨터(102)로부터의 서버 쿠키를 획득하고, 서버 쿠키의 유효화를 시도한다. 서비스 서버(112)는 해독 및/또는 만료하지 않았다는 것을 검증함으로써 서버 쿠키를 유효화하면 인증 동작(308)에서 사용자를 인증한다. 인증시, 서비스 서버(112)는 사용자가 로그인 서버(108)에서 방금 인증된 메시지를 로그인 서버(108)로부터 수신하였으므로, 서비스 서버(112)는 서비스 서버(112)에 제공된 하위 위치의 각각에 대하여 사용자에게 하위 위치 쿠키를 발생 및 제공한다.After client computer 102 logs in to obtain a server cookie, and then returns from login server 108 back to service server 112, client computer 102 may access service server 112 in access operation 306. Attempt to access a network location. Upon resumption, the query string includes a message from login server 108 indicating that the user of client computer 102 with the server cookie has just been authenticated. At this time, the service server 112 obtains a message from the query string and a server cookie from the client computer 102 and attempts to validate the server cookie. The service server 112 validates the server cookie by verifying that it has not been decrypted and / or expired to authenticate the user in the authentication operation 308. Upon authentication, the service server 112 receives a message from the login server 108 that the user has just authenticated at the login server 108, so that the service server 112 for each of the sub-locations provided to the service server 112. Generate and provide sublocation cookies to the user.

일단 하위 위치 쿠키가 특정 서버 쿠키에 대하여 클라이언트 컴퓨터(102)로 제공되었으면, 서비스 서버(112)는 동일한 서버 쿠키로 인증된 클라이언트 컴퓨터(102)가 사용자가 액세스를 시도한 하위 위치에 대한 발행된 하위 위치 쿠키를 가질 것을 요구한다. 이것은 서비스 서버(112)가 또다른 비밀 키에 의한 해독 및/또는 만료하지 않았다는 검증을 통해 하위 위치 쿠키의 유효화를 시도하도록 하여 하위 위치 동작(310)에서 액세스된 하위 위치에 대하여 사용자를 인증한다. 서버 쿠키를 갖는 사용자가 하위 위치 쿠키를 갖지 않으면, 서비스 서버(112)는 로그인 서버(108)에서 사용자가 다시 인증되도록 할 수 있다.Once the sub-location cookie has been provided to the client computer 102 for a particular server cookie, the service server 112 may issue the issued sub-location for the sub-location to which the client computer 102 authenticated with the same server cookie attempted to access the user. Require to have cookies. This allows the service server 112 to attempt to validate the lower location cookie by decrypting with another secret key and / or verifying that it has not expired to authenticate the user for the lower location accessed in the lower location operation 310. If the user with the server cookie does not have a lower location cookie, the service server 112 may cause the user to be authenticated again at the login server 108.

소정의 실시예에서, 서비스 서버(112)는 또한 인증된 사용자가 특정 하위 위치를 액세스하기 위한 인증을 갖는지를 판정하기 위하여 사용자가 인증되었으면 추가의 인증 체크를 제공할 수 있다. 하위 위치 쿠키가 네트워크 위치에서 하위 위치에 대하여 사용자를 인증하지만, 사용자는 소정의 하위 위치에 대한 인증을 갖지 않을 수 있고 그것에 대한 액세스를 거부할 수 있다.In certain embodiments, service server 112 may also provide additional authentication checks once the user has been authenticated to determine if the authenticated user has authorization to access a particular sub-location. Although the lower location cookie authenticates the user for the lower location in the network location, the user may not have authentication for a given lower location and may deny access to it.

도 4는 사용자를 인증하기 위한 쿠키 애플리케이션(218)의 일실시예의 예시적인 논리적 동작을 나타낸다. 논리적 동작은 액세스 동작(402)에서 시작하고, 여기서, 서비스 서버(112)는 클라이언트 컴퓨터(102)로부터 액세스 시도를 수신하고, 액세스 시도는 로그인 서버(108)로부터 서비스 서버(112)로의 재진행일 수 있다. 액세스 시도를 수신하면, 서비스 서버(112)는 해독 및/또는 만료하지 않았다는 검증을 통해 유효화될 수 있는 클라이언트 컴퓨터(102)로부터의 서버 쿠키(제 1 쿠키)를 획득하기 위하여 시도한다. 이때, 서비스 서버(112)는 또한 사용자가 로그인 서버(108)에서 방금 인증된 것을 가리키는 로그인 서버(108)로부터의 임의의 메시지를 획득될 수 있다.4 illustrates an example logical operation of one embodiment of a cookie application 218 for authenticating a user. The logical operation begins at an access operation 402, where the service server 112 receives an access attempt from the client computer 102, and the access attempt is a replay date from the login server 108 to the service server 112. Can be. Upon receiving the access attempt, the service server 112 attempts to obtain a server cookie (first cookie) from the client computer 102 that can be validated through decryption and / or verification that it has not expired. At this time, the service server 112 may also obtain any message from the login server 108 indicating that the user has just been authenticated at the login server 108.

질의 동작(406)은 서버 쿠키가 성공적으로 유효화되었는지를 검출한다. 서버 쿠키가 해독될 수 없거나 만료되었기 때문에 질의 동작(406)이 서버 쿠키의 유효화가 발생하지 않은 것으로 검출하면, 서비스 서버(112)는 재진행 동작(408)에서 클라이언트 컴퓨터(102)가 로그인 서버(108)로 진행하도록 할 수 있다. 다른 방법으로, 서비스 서버(112)는 단순히 사용자에게 액세스를 거부할 수 있다. 질의 동작(406)에서, 서버 쿠키가 성공적으로 유효화된 것을 검출하면, 동작은 질의 동작(410)으로 진행한다.Query operation 406 detects whether the server cookie has been successfully validated. If query operation 406 detects that server cookie validation has not occurred because the server cookie could not be decrypted or has expired, service server 112 causes re-run operation 408 in which client computer 102 determines that login server ( 108). Alternatively, service server 112 may simply deny access to the user. In query operation 406, if it detects that the server cookie has been successfully validated, the operation proceeds to query operation 410.

질의 동작(410)에서, 서비스 서버(112)는 하위 위치 쿠키가 현재 획득된 서버 쿠키에 대하여 클라이언트 컴퓨터(102)에게 이미 제공된 것인지를 테스트한다. 이것은 로그인 서버(108)로부터 서비스 서버(112)로 되돌아온 질의 스트링 내의 메 시지를 참조함으로써 수행될 수 있다. 로그인 서버(108)로부터의 메시지가 수신되었으면, 서비스 서버(112)는 사용자가 서비스 서버(112)의 네트워크 위치에 대하여 로그인 서버(108)에서 방금 인증되었음과 디렉토리 쿠키가 아직 제공되지 않았음을 인식한다. 이 메시지는 또한 서버 쿠키를 부여한 사용자가 서버 쿠키를 훔칠 수 있는 악의있는 사용자가 아니라 합법적인 사용자임을 가리킨다. 로그인 서버(108)로부터 메시지가 부여되지 않았으면, 서비스 서버(112)는 하위 위치 쿠키가 이미 이 서버 쿠키에 대하여 제공된 것처럼 진행하고, 하위 위치 쿠키가 악의있는 사용자에게 발행되는 것을 방지한다.In query operation 410, service server 112 tests whether the lower location cookie has already been provided to client computer 102 for the server cookie currently obtained. This can be done by referring to the message in the query string returned from the login server 108 to the service server 112. If a message from the login server 108 is received, the service server 112 recognizes that the user has just been authenticated at the login server 108 for the network location of the service server 112 and that a directory cookie has not yet been provided. do. This message also indicates that the user granting the server cookie is a legitimate user, not a malicious user who can steal the server cookie. If no message has been granted from the login server 108, then the service server 112 proceeds as if the lower location cookie was already provided for this server cookie and prevents the lower location cookie from being issued to the malicious user.

질의 동작(410)에서, 로그인 서버(108)로부터의 질의 스트링 내의 메시지가 부여되기 때문에 하위 위치 쿠키가 이 서버 쿠키에 대하여 이미 제공되지 않은 것으로 검출되면, 서비스 서버(112)는 발생 동작(412)에서 현재의 서버 쿠키와 관련하여 사용될 하위 위치 쿠키를 발생한다. 서술한 바와 같이, 이 발생된 하위 위치 쿠키의 각각은 대응하는 하위 위치의 식별자를 포함하고, 또한 액세스를 위하여 추가의 인증 체크가 요구되는 사용자의 식별자를 포함할 수 있다. 그후, 이들 발생된 하위 위치 쿠키가 전송 동작(414)에서 클라이언트 컴퓨터(102)로 전송된다. 그후, 액세스되는 하위 위치에 대한 현재의 사용자에 대한 인증이 인증 동작(416)에서 부여된다.In query operation 410, if it is detected that a lower location cookie has not already been provided for this server cookie because a message in the query string from login server 108 is granted, then service server 112 generates an action 412. Generates a sublocation cookie to be used in relation to the current server cookie. As noted, each of these generated sub-location cookies may include an identifier of the corresponding sub-location and may also include an identifier of the user for which further authentication checks are required for access. These generated lower location cookies are then sent to client computer 102 in a transfer operation 414. Thereafter, authentication for the current user for the subordinate location being accessed is granted in authentication operation 416.

질의 동작(410)에서, 액세스 시도에 대한 로그인 서버(108)로부터의 메시지를 수신하지 않아 하위 위치 쿠키가 이 서버 쿠키에 대하여 이미 수신된 것으로 검출되면, 서비스 서버(112)는 쿠키 동작(418)에서 현재 액세스되는 하위 위치에 대 한 하위 위치 쿠키를 획득하기 위해 시도한다. 서버 쿠키에 대하여 상술한 바와 같이, 클라이언트 컴퓨터(102)의 하위 위치 쿠키는 키가 하위 위치 쿠키를 해독하는 데 사용되어 유효화될 수 있도록 서비스 서버(112)에 공지된 키로 암호화될 수 있다. 또한, 관련 하위 위치는 하위 위치 쿠키에서 식별된다. 그후, 질의 동작(420)은 현재의 하위 위치에 대한 하위 위치 쿠키가 해독 및/또는 만료되지 않았다는 검증과, 액세스되는 하위 위치와 쿠키에서 식별된 하위 위치의 비교에 의해 유효화되었는지를 검출한다. In query operation 410, if no message is received from the login server 108 for the access attempt and it is detected that a lower location cookie has already been received for this server cookie, the service server 112 performs a cookie operation 418. Attempts to obtain a sublocation cookie for the sublocation currently accessed. As discussed above with respect to the server cookie, the subordinate location cookie of the client computer 102 may be encrypted with a key known to the service server 112 so that the key can be used to decrypt the subordinate location cookie. In addition, relevant sub-locations are identified in sub-location cookies. The query operation 420 then detects whether the sub-location cookie for the current sub-location has been validated by verifying that the sub-location cookie has not been decrypted and / or expired and comparing the sub-location being accessed with the sub-location identified in the cookie.

질의 동작(420)에서, 이 하위 위치에 대하여 유효화될 수 있는 하위 위치 쿠키가 없는 것으로 검출되면, 서비스 서버(112)는 거절 동작(422)에서 사용자에게 하위 위치에 대한 인증을 거부하여 현재의 사용자가 이 하위 위치를 액세스할 수 없도록 한다. 이것은 서버 쿠키 및 가능하면 또다른 하위 위치로의 디렉토리 쿠키를 훔칠 수 있는 악의있는 사용자가 현재의 하위 위치를 액세스하는 것을 방지한다. 질의 동작(420)에서, 하위 위치 쿠키가 이 하위 위치에 대하여 인증된 것으로 검출되면, 서비스 서버(112)는 인증 동작(416)에서 사용자에게 하위 위치에 대한 인증을 부여한다. 필요하면, 인증된 사용자는 이 인증된 사용자가 관심있는 하위 위치를 액세스하는 것을 허용하는지를 판정하기 위하여 하위 위치에 대한 인증 룰에 대하여 참조될 수 있다.If in query operation 420 it is detected that there is no lower location cookie that can be validated for this lower location, the service server 112 rejects the user for authentication to the lower location in rejection operation 422 and the current user. Does not allow this sublocation to be accessed. This prevents a malicious user from stealing the server cookie and possibly a directory cookie to another sub-location from accessing the current sub-location. In query operation 420, if the lower location cookie is detected as authenticated for this lower location, service server 112 grants the user authentication for the lower location in authentication operation 416. FIG. If necessary, an authenticated user can be referenced against the authentication rules for the subordinate location to determine if it allows the authenticated user to access the subordinate location of interest.

본 발명은 예시적인 실시예를 참조하여 도시하고 설명하였지만, 당업자는 형태 및 상세 항목에 있어서 다양한 다른 변화가 본 발명의 사상과 범위를 벗어나지 않는 한도내에서 가능함을 이해할 것이다.While the invention has been illustrated and described with reference to exemplary embodiments, those skilled in the art will recognize that various other changes in form and detail may be made without departing from the spirit and scope of the invention.

도 1은 본 발명의 실시예에 대한 네트워크 오퍼레이팅 환경을 나타내는 도면.1 illustrates a network operating environment for an embodiment of the invention.

도 2는 본 발명의 일실시예에 따른 네트워크 위치의 서버 컴퓨터의 컴포넌트를 나타내는 도면.2 illustrates a component of a server computer at a network location in accordance with one embodiment of the present invention.

도 3은 본 발명의 일실시예에 따른 클라이언트 컴퓨터의 사용자를 인증하기 위하여 서버, 서비스 서버, 및 클라이언트 컴퓨터 사이의 도 1의 네트워크내에서 발생되는 상호작용의 논리적 동작을 나타내는 도면.3 illustrates the logical operation of interactions occurring within the network of FIG. 1 between a server, a service server, and a client computer to authenticate a user of a client computer in accordance with an embodiment of the present invention.

도 4는 본 발명의 일실시예에 따른 하나 이상의 하위 위치(sub-location)에 대한 클라이언트 컴퓨터의 사용자를 인증하기 위하여 서비스 서버에 의해 수행된 논리적 동작을 나타내는 도면.4 illustrates a logical operation performed by a service server to authenticate a user of a client computer to one or more sub-locations in accordance with one embodiment of the present invention.

*도면의 주요부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *

102: 클라이언트 컴퓨터102: client computer

106: 네트워크106: network

108: 로그인 서버108: login server

110: 기억장치110: storage device

112: 서비스 서버112: service server

Claims (36)

네트워크 어드레스의 하나 이상의 하위 위치(sub-location)에 대하여 컴퓨터의 사용자를 인증하는 방법에 있어서,A method of authenticating a user of a computer to one or more sub-locations of a network address, the method comprising: 네트워크 어드레스에 대한 사용자 인증을 위하여 제1 쿠키를 컴퓨터로 제공하는 단계;Providing a first cookie to a computer for user authentication to a network address; 상기 사용자 컴퓨터가 상기 제1 쿠키를 수신한 후 상기 사용자가 제1 하위 위치를 처음으로 액세스하려고 시도할 때, 상기 제1 쿠키를 유효화하면 상기 네트워크 어드레스의 상기 제1 하위 위치에 대한 사용자 인증을 위하여 제2 쿠키를 상기 사용자 컴퓨터로 제공하는 단계;When the user attempts to access the first sub-location for the first time after the user computer receives the first cookie, validating the first cookie for user authentication to the first sub-location of the network address. Providing a second cookie to the user computer; 상기 첫 번째 시도 이후 상기 컴퓨터가 상기 네트워크 어드레스를 액세스하려고 시도할 때, 상기 제1 쿠키를 유효화하여 상기 네트워크 어드레스에 대하여 사용자를 인증하는 단계; 및When the computer attempts to access the network address after the first attempt, validating the first cookie to authenticate the user against the network address; And 상기 첫 번째 시도 이후 상기 컴퓨터가 상기 제1 하위 위치를 액세스하려고 시도할 때, 상기 컴퓨터로부터 상기 제2 쿠키를 획득하고 유효화하여 상기 네트워크 어드레스의 상기 제1 하위 위치에 대하여 상기 사용자를 인증하는 단계When the computer attempts to access the first sub-location after the first attempt, obtaining and validating the second cookie from the computer to authenticate the user to the first sub-location of the network address. 를 포함하는 방법.How to include. 제1항에 있어서, 상기 제2 쿠키는 상기 컴퓨터가 상기 네트워크 어드레스의 상기 제1 하위 위치를 액세스하려고 시도하면 유효화되는 방법.The method of claim 1, wherein the second cookie is validated when the computer attempts to access the first sub-location of the network address. 제1항에 있어서, 상기 네트워크 어드레스는 월드 와이드 웹의 도메인인 방법.The method of claim 1 wherein the network address is a domain of the world wide web. 제1항에 있어서, 상기 제2 쿠키는 상기 네트워크 어드레스 및 상기 네트워크 어드레스 내의 상기 하위 위치를 호스팅(hosting)하는 서버에 공지된 키로 암호화되는 방법.The method of claim 1, wherein the second cookie is encrypted with a key known to a server hosting the network address and the sub-location within the network address. 제1항에 있어서, 상기 제2 쿠키는 사용자 식별자 및 상기 네트워크 어드레스의 상기 제1 하위 위치의 식별자를 특정하는 방법.The method of claim 1, wherein the second cookie specifies a user identifier and an identifier of the first sub-location of the network address. 제1항에 있어서, 상기 제2 쿠키는 만료 값을 포함하는 방법.The method of claim 1, wherein the second cookie comprises an expiration value. 제1항에 있어서, The method of claim 1, 상기 네트워크 어드레스의 추가의 하위 위치에 대한 사용자 인증을 위하여 상기 컴퓨터에 추가의 쿠키를 제공하는 단계; 및Providing additional cookies to the computer for user authentication of additional sub-locations of the network address; And 상기 추가의 쿠키를 유효화하여 상기 네트워크 어드레스의 상기 추가의 하위 위치에 대하여 상기 사용자를 인증하는 단계Validating the additional cookie to authenticate the user with respect to the additional sub-location of the network address 를 더 포함하는 방법.How to include more. 제1항에 있어서, The method of claim 1, 상기 네트워크 어드레스의 추가의 하위 위치에 대해 유효화될 수 있는 추가의 쿠키를 검색하는 단계; 및Retrieving additional cookies that may be validated for further sub-locations of the network address; And 상기 추가의 쿠키가 발견되지 않으면, 상기 네트워크 어드레스의 상기 추가의 하위 위치에 대하여 상기 사용자의 인증을 거부하는 단계If the additional cookie is not found, denying authentication of the user to the additional sub-location of the network address 를 더 포함하는 방법.How to include more. 제1항에 있어서, The method of claim 1, 상기 사용자 컴퓨터로부터 사용자 이름 및 패스워드를 획득하는 단계;Obtaining a username and password from the user computer; 상기 사용자 이름 및 패스워드를 기준 사용자 이름 및 패스워드와 비교하는 단계; 및Comparing the username and password with a reference username and password; And 상기 사용자 이름 및 패스워드가 상기 기준 사용자 이름 및 패스워드가 매칭되면 상기 제1 쿠키를 제공하는 단계Providing the first cookie if the user name and password match the reference user name and password 를 더 포함하는 방법.How to include more. 제9항에 있어서, The method of claim 9, 상기 사용자 이름 및 패스워드를 상기 기준 사용자 이름 및 패스워드와 비교하는 단계는 제2 네트워크 위치에서 발생하고, 상기 제1 쿠키는 상기 제2 네트워크 위치로부터 상기 사용자 컴퓨터로 제공되는 방법.Comparing the username and password with the reference username and password occurs at a second network location, and wherein the first cookie is provided to the user computer from the second network location. 네트워크 인터페이스; 및Network interface; And 프로세싱 장치Processing unit 를 포함하며,Including; 상기 프로세싱 장치는 네트워크 어드레스에 대한 사용자 인증을 위하여 상기 네트워크 인터페이스를 통해 제1 쿠키를 획득하고, 상기 제1 쿠키를 유효화하여 상기 네트워크 어드레스에 대하여 사용자를 인증하도록 구성되며,The processing device is configured to obtain a first cookie through the network interface for user authentication to a network address, to validate the first cookie to authenticate a user to the network address, 상기 프로세싱 장치는 또한, 상기 제1 쿠키가 상기 네트워크 인터페이스를 통해 처음으로 획득된 때, 상기 제1 쿠키를 유효화하면 상기 네트워크 어드레스의 제1 하위 위치에 대한 사용자 인증을 위하여 상기 네트워크 인터페이스를 통해 제2 쿠키를 제공하고, 상기 첫 번째 시도 이후 상기 제1 쿠키가 상기 네트워크 인터페이스를 통해 획득된 때, 상기 네트워크 인터페이스를 통해 상기 제2 쿠키를 획득하고 유효화하여 상기 네트워크 어드레스의 상기 제1 하위 위치에 대하여 상기 사용자를 인증하도록 구성된, 컴퓨터 시스템.The processing apparatus may also further include, when the first cookie is obtained for the first time through the network interface, upon validating the first cookie, the second cookie through the network interface for user authentication to a first sub-location of the network address. Providing a cookie, and when the first cookie is obtained through the network interface after the first attempt, obtaining and validating the second cookie through the network interface to provide the cookie with respect to the first sub-location of the network address. A computer system configured to authenticate a user. 제11항에 있어서,The method of claim 11, 상기 프로세싱 장치는 상기 네트워크 어드레스의 상기 제1 하위 위치를 액세스하려는 시도를 수신한 직후 상기 제2 쿠키를 유효화하는 컴퓨터 시스템.The processing device to validate the second cookie immediately after receiving an attempt to access the first sub-location of the network address. 제11항에 있어서, 상기 네트워크 어드레스는 월드 와이드 웹의 도메인인 컴퓨터 시스템.12. The computer system of claim 11 wherein the network address is a domain of the world wide web. 제11항에 있어서, 상기 제2 쿠키를 해독하는 키를 포함하는 기억장치를 더 포함하는 컴퓨터 시스템.12. The computer system of claim 11 further comprising a storage device comprising a key to decrypt the second cookie. 제11항에 있어서, 상기 제2 쿠키는 사용자 식별자 및 상기 네트워크 어드레스의 상기 제1 하위 위치의 식별자를 특정하는 컴퓨터 시스템.12. The computer system of claim 11 wherein the second cookie specifies a user identifier and an identifier of the first sub-location of the network address. 제11항에 있어서, 상기 제2 쿠키는 만료 값을 포함하는 컴퓨터 시스템.12. The computer system of claim 11 wherein the second cookie comprises an expiration value. 제11항에 있어서, 상기 프로세싱 장치는 또한, 상기 네트워크 인터페이스를 통해 상기 네트워크 어드레스의 추가의 하위 위치에 대해 추가의 쿠키를 획득하고 상기 추가의 쿠키를 유효화하여 상기 네트워크 어드레스의 상기 추가의 하위 위치에 대하여 상기 사용자를 인증하도록 구성된 컴퓨터 시스템.12. The apparatus of claim 11, wherein the processing device is further configured to obtain an additional cookie for the further sub-location of the network address via the network interface and to validate the additional cookie to the additional sub-location of the network address. A computer system configured to authenticate the user to the user. 제11항에 있어서, 상기 프로세싱 장치는 또한, 추가의 하위 위치에 대해 유효화될 수 있는 추가의 쿠키를 상기 네트워크 인터페이스를 통해 검색하고, 상기 추가의 쿠키가 발견되지 않으면, 상기 네트워크 어드레스의 상기 추가의 하위 위치에 대하여 상기 사용자의 인증을 거부하도록 구성되는 컴퓨터 시스템.12. The apparatus of claim 11, wherein the processing device is further configured to retrieve, via the network interface, additional cookies that may be validated for additional sub-locations, and if the additional cookies are not found. And deny authentication of the user to subordinate locations. 제11항에 있어서, 상기 하위 위치는 상기 네트워크 어드레스에서의 서버의 디렉토리인 컴퓨터 시스템.12. The computer system of claim 11 wherein the subordinate location is a directory of a server at the network address. 네트워크 어드레스의 하나 이상의 하위 위치를 제공하는 네트워크 어드레스의 서버 컴퓨터; 및A server computer of a network address providing one or more sub-locations of the network address; And 네트워크를 통해 상기 서버 컴퓨터와 통신하는 클라이언트 컴퓨터Client computer communicating with the server computer over a network 를 포함하고,Including, 상기 클라이언트 컴퓨터는 상기 네트워크 어드레스에 대한 제1 쿠키, 상기 네트워크 어드레스의 하위 위치에 대한 제2 쿠키를 저장하고,The client computer stores a first cookie for the network address, a second cookie for a lower position of the network address, 상기 서버 컴퓨터는The server computer 상기 제1 쿠키를 액세스하고 유효화하여 상기 네트워크 어드레스에 대하여 상기 클라이언트 컴퓨터의 사용자를 인증하고,Access and validate the first cookie to authenticate a user of the client computer against the network address, 상기 클라이언트 컴퓨터가 상기 제1 쿠키를 수신한 후 상기 네트워크 위치를 처음으로 액세스하려고 시도할 때, 상기 제1 쿠키를 유효화하면 상기 제2 쿠키를 상기 클라이언트 컴퓨터로 제공하며,When the client computer attempts to access the network location for the first time after receiving the first cookie, validating the first cookie provides the second cookie to the client computer, 상기 첫 번째 시도 이후 상기 클라이언트 컴퓨터가 상기 네트워크 위치를 액세스하려고 시도할 때, 상기 클라이언트 컴퓨터로부터 상기 제2 쿠키를 획득하고 유효화하여 상기 네트워크 어드레스의 상기 제1 하위 위치에 대하여 상기 클라이언트 컴퓨터의 상기 사용자를 인증하는, 네트워크 시스템.When the client computer attempts to access the network location after the first attempt, the second cookie is obtained and validated from the client computer to inform the user of the client computer with respect to the first sub-location of the network address. Certified network system. 제20항에 있어서, The method of claim 20, 상기 서버 컴퓨터는 상기 클라이언트 컴퓨터가 상기 네트워크 어드레스의 상기 제1 하위 위치를 액세스하려고 시도할 때 상기 제2 쿠키를 유효화하는 네트워크 시스템.The server computer validates the second cookie when the client computer attempts to access the first sub-location of the network address. 제20항에 있어서, 상기 네트워크 어드레스는 월드 와이드 웹의 도메인인 네트워크 시스템.21. The network system of claim 20 wherein the network address is a domain of the world wide web. 제20항에 있어서, 상기 제2 쿠키는 상기 서버 컴퓨터에 공지된 키로 암호화되는 네트워크 시스템.21. The network system of claim 20, wherein said second cookie is encrypted with a key known to said server computer. 제20항에 있어서, 상기 제2 쿠키는 사용자 식별자 및 상기 네트워크 어드레스의 상기 제1 하위 위치의 식별자를 특정하는 네트워크 시스템.21. The network system of claim 20 wherein the second cookie specifies a user identifier and an identifier of the first sub-location of the network address. 제20항에 있어서, 상기 제2 쿠키는 만료 값을 포함하는 네트워크 시스템.21. The network system of claim 20 wherein the second cookie comprises an expiration value. 제20항에 있어서, 상기 클라이언트 컴퓨터는 상기 네트워크 어드레스의 추가의 하위 위치에 대하여 사용자 인증을 위한 추가의 쿠키를 저장하고, 상기 서버 컴퓨터는 상기 추가의 쿠키를 액세스하고 유효화하여 상기 네트워크 어드레스의 상기 추가의 하위 위치에 대하여 상기 사용자를 인증하는 네트워크 시스템.21. The server of claim 20, wherein the client computer stores additional cookies for user authentication for additional sub-locations of the network address, and the server computer accesses and validates the additional cookies to add the network addresses. A network system for authenticating the user with respect to subordinate locations of. 제20항에 있어서, 상기 서버 컴퓨터는 상기 네트워크 어드레스의 추가의 하위 위치에 대하여 유효화될 수 있는 추가의 쿠키를 상기 클라이언트 컴퓨터로부터 검색하고 상기 추가의 쿠키가 발견되지 않으면 상기 추가의 하위 위치에 대하여 상기 사용자의 인증을 거부하는 네트워크 시스템.21. The server of claim 20, wherein the server computer retrieves from the client computer an additional cookie that can be validated for an additional sub-location of the network address, and if the additional cookie is not found, for the additional sub-location. A network system that refuses to authenticate a user. 제20항에 있어서, 상기 클라이언트 컴퓨터로부터 사용자 이름 및 패스워드를 획득하고, 상기 사용자 이름 및 패스워드를 기준 사용자 이름 및 패스워드와 비교하며, 상기 사용자 이름 및 패스워드가 상기 기준 사용자 이름 및 패스워드와 매칭되면 상기 제1 쿠키를 상기 클라이언트 컴퓨터에 제공하는 제2 서버 컴퓨터를 더 포함하는 네트워크 시스템.21. The method of claim 20, further comprising: obtaining a user name and password from the client computer, comparing the user name and password with a reference user name and password, and if the user name and password match the reference user name and password; And a second server computer for providing a cookie to the client computer. 컴퓨터에 의해 실행될 때,When run by computer, 컴퓨터의 네트워크 인터페이스를 통해 네트워크 어드레스에 대한 사용자 인증을 위해 제1 쿠키를 획득하는 단계;Obtaining a first cookie for authenticating a user to a network address through a network interface of the computer; 상기 제1 쿠키를 유효화하여 상기 네트워크 어드레스에 대하여 사용자를 인증하는 단계;Validating the first cookie to authenticate a user against the network address; 상기 컴퓨터가 상기 제1 쿠키를 처음으로 수신하고 상기 제1 하위 위치를 처음으로 액세스하려는 시도를 수신한 때, 상기 제1 쿠키를 유효화하면 제2 쿠키를 상기 네트워크 인터페이스를 통해 제공하는 단계; 및When the computer receives the first cookie for the first time and receives an attempt to access the first sub-location for the first time, providing a second cookie through the network interface upon validating the first cookie; And 상기 첫 번째 시도 이후 상기 사용자가 상기 제1 하위 위치를 액세스하려고 시도할 때, 상기 네트워크 인터페이스를 통해 상기 제2 쿠키를 획득하고 유효화하여 상기 네트워크 어드레스의 상기 제1 하위 위치에 대하여 상기 사용자를 인증하는 단계When the user attempts to access the first sub-location after the first attempt, acquiring and validating the second cookie via the network interface to authenticate the user to the first sub-location of the network address. step 를 컴퓨터로 하여금 수행하게 하는 명령어들을 포함하는 컴퓨터 판독 가능 매체.Computer-readable media comprising instructions for causing a computer to perform. 제29항에 있어서, 상기 네트워크 어드레스는 월드 와이드 웹의 도메인인 컴퓨터 판독 가능 매체.30. The computer readable medium of claim 29, wherein the network address is a domain of the world wide web. 제29항에 있어서, 상기 제2 쿠키는 상기 명령어들을 실행하는 상기 컴퓨터에 공지된 키로 암호화되는 컴퓨터 판독 가능 매체.30. The computer readable medium of claim 29, wherein the second cookie is encrypted with a key known to the computer executing the instructions. 제29항에 있어서, 상기 제2 쿠키는 사용자 식별자 및 상기 네트워크 어드레스의 상기 제1 하위 위치의 식별자를 특정하는 컴퓨터 판독 가능 매체.30. The computer readable medium of claim 29, wherein the second cookie specifies a user identifier and an identifier of the first sub-location of the network address. 제29항에 있어서, 상기 제2 쿠키는 만료 값을 포함하는 컴퓨터 판독 가능 매체.30. The computer readable medium of claim 29, wherein the second cookie comprises an expiration value. 제29항에 있어서, 상기 컴퓨터에 의해 실행될 때, 상기 명령어들은,The computer-readable medium of claim 29, wherein when executed by the computer, the instructions are: 상기 네트워크 인터페이스를 통해 상기 네트워크 어드레스의 추가의 하위 위 치에 대한 추가의 쿠키를 획득하는 단계; 및Obtaining an additional cookie for an additional lower location of the network address via the network interface; And 상기 추가의 쿠키를 유효화하여 상기 네트워크 어드레스의 상기 추가의 하위 위치에 대하여 사용자를 인증하는 단계Validating the additional cookie to authenticate a user with respect to the additional sub-location of the network address 의 추가적인 단계를 컴퓨터로 하여금 수행하게 하는 컴퓨터 판독 가능 매체.A computer readable medium for causing a computer to perform the additional step of. 제29항에 있어서, 상기 컴퓨터에 의해 실행될 때, 상기 명령어들은,The computer-readable medium of claim 29, wherein when executed by the computer, the instructions are: 추가의 하위 위치에 대하여 유효화될 수 있는 추가의 쿠키를 상기 네트워크 인터페이스를 통해 검색하는 단계; 및Retrieving, via the network interface, additional cookies that can be validated for additional sub-locations; And 상기 추가의 쿠키가 발견되지 않으면, 상기 네트워크 어드레스의 상기 추가의 하위 위치에 대하여 상기 사용자의 인증을 거부하는 단계If the additional cookie is not found, denying authentication of the user to the additional sub-location of the network address 의 추가적인 단계를 컴퓨터로 하여금 수행하게 하는 컴퓨터 판독 가능 매체.A computer readable medium for causing a computer to perform the additional step of. 제29항에 있어서, 상기 하위 위치는 상기 명령어들을 실행하는 상기 컴퓨터의 네트워크 어드레스에서 서버 컴퓨터들의 팜(farm) 중의 서버 컴퓨터인 컴퓨터 판독 가능 매체.30. The computer readable medium of claim 29, wherein the sub-location is a server computer in a farm of server computers at the network address of the computer executing the instructions.
KR1020090071401A 2002-12-05 2009-08-03 Methods and systems for authentication of a user for sub-locations of a network location KR101066729B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090071401A KR101066729B1 (en) 2002-12-05 2009-08-03 Methods and systems for authentication of a user for sub-locations of a network location

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/310,269 2002-12-05
KR1020090071401A KR101066729B1 (en) 2002-12-05 2009-08-03 Methods and systems for authentication of a user for sub-locations of a network location

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020030087438A Division KR100920871B1 (en) 2002-12-05 2003-12-04 Methods and systems for authentication of a user for sub-locations of a network location

Publications (2)

Publication Number Publication Date
KR20090106368A true KR20090106368A (en) 2009-10-08
KR101066729B1 KR101066729B1 (en) 2011-09-21

Family

ID=41535988

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090071401A KR101066729B1 (en) 2002-12-05 2009-08-03 Methods and systems for authentication of a user for sub-locations of a network location

Country Status (1)

Country Link
KR (1) KR101066729B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100463514B1 (en) * 2000-09-09 2004-12-29 엘지전자 주식회사 operation method of system for perform login and system for the same
JP2002236662A (en) 2001-02-08 2002-08-23 Nec Corp Information processing system and authentication server program

Also Published As

Publication number Publication date
KR101066729B1 (en) 2011-09-21

Similar Documents

Publication Publication Date Title
KR100920871B1 (en) Methods and systems for authentication of a user for sub-locations of a network location
KR101534890B1 (en) Trusted device-specific authentication
US8209394B2 (en) Device-specific identity
US9047458B2 (en) Network access protection
US6668322B1 (en) Access management system and method employing secure credentials
US6807577B1 (en) System and method for network log-on by associating legacy profiles with user certificates
US20080134314A1 (en) Automated security privilege setting for remote system users
US11757877B1 (en) Decentralized application authentication
CA3093444A1 (en) System and method for identity and authorization management
Tiwari et al. Design and Implementation of Enhanced Security Algorithm for Hybrid Cloud using Kerberos
Hasan et al. Please permit me: Stateless delegated authorization in mashups
Binu et al. A mobile based remote user authentication scheme without verifier table for cloud based services
JP6792647B2 (en) Virtual smart card with auditing capability
KR101066729B1 (en) Methods and systems for authentication of a user for sub-locations of a network location
Perlman et al. User-centric PKI
US20230198767A1 (en) Distribution of one-time passwords for multi-factor authentication via blockchain
Uchil Authentication Service Architecture
Sumitra et al. Safe Cloud: Secure and Usable Authentication Framework for Cloud Environment
Saini et al. An Efficient Windows Cardspace identity Management Technique in Cloud Computing
Carmichael et al. Identity Management Whitepaper

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140814

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150819

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160818

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170818

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180816

Year of fee payment: 8