KR101451870B1 - System, method and computer readable recording medium for providing a log in of an application by communizing an authority - Google Patents
System, method and computer readable recording medium for providing a log in of an application by communizing an authority Download PDFInfo
- Publication number
- KR101451870B1 KR101451870B1 KR1020120090441A KR20120090441A KR101451870B1 KR 101451870 B1 KR101451870 B1 KR 101451870B1 KR 1020120090441 A KR1020120090441 A KR 1020120090441A KR 20120090441 A KR20120090441 A KR 20120090441A KR 101451870 B1 KR101451870 B1 KR 101451870B1
- Authority
- KR
- South Korea
- Prior art keywords
- application
- ticket
- token
- unit
- service server
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 107
- 238000012545 processing Methods 0.000 claims abstract description 83
- 230000008569 process Effects 0.000 claims description 29
- 230000005540 biological transmission Effects 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 3
- 230000010365 information processing Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 31
- 230000005856 abnormality Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/41—User authentication where a single sign-on provides access to a plurality of computers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
Abstract
본 발명은 로그인 된 상태의 애플리케이션을 이용하여 다른 애플리케이션에서 로그인할 수 있는 인증 공유에 의한 애플리케이션 로그인 시스템에 관한 것으로, 특히 제1 애플리케이션 및 제2 애플리케이션이 설치되고, 상기 제1 애플리케이션에 대해 로그인 처리된 사용자 단말; 및 상기 사용자 단말로부터 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처, 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 수신된 제1 애플리케이션의 토큰으로부터 식별된 사용자 정보로 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는 서비스 서버를 포함한다.[0001] The present invention relates to an application login system by an authentication sharing method capable of logging in from another application using an application in a logged-in state, and more particularly to an application login system in which a first application and a second application are installed, A user terminal; And receiving a token of the first application, a signature of the first application, a consumer key of the second application, and a signature of the second application from the user terminal, And a service server for performing login processing for the second application.
Description
본 발명은 애플리케이션에 대한 로그인을 제공하기 위한 시스템에 관한 것으로, 보다 상세하게는 로그인 된 상태의 애플리케이션을 이용하여 다른 애플리케이션에서 로그인할 수 있는 인증 공유에 의한 애플리케이션 로그인 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다.BACKGROUND OF THE
오늘날 인터넷의 광범위한 보급은 이제 유선을 넘어 무선 이동통신 기술로의 급발전을 가져오게 되었고, 실생활에 있어서도 휴대폰, PDA, 핸드헬드(Hand-Held) 컴퓨터 등의 휴대용 단말을 통한 인터넷상에서의 정보 검색이 시간과 장소에 구애받지 않고 가능하게 되었다.Today, the widespread use of the Internet has led to the rapid development of wireless mobile communication technology beyond the fixed line, and in the real world, information retrieval on the Internet through portable terminals such as mobile phones, PDAs, and hand- It became possible regardless of time and place.
한편, 최근 출시되는 스마트폰들의 성능이 향상되면서, 일반 휴대폰에서 스마트폰으로 사용자들이 많이 옮겨가고 있는 추세이다. 스마트폰(smart phone)이란 휴대폰에 컴퓨터 지원 기능을 추가한 지능형 휴대폰으로서, 휴대폰 기능에 충실하면서도 개인 휴대 정보 단말기(PDA) 기능, 인터넷 기능, 동영상 재생 기능 등이 추가되며, 다양한 입력 방식과 터치스크린 등이 구비되어 사용에 보다 편리한 인터페이스를 제공한다. 또한, 무선 인터넷 기능의 지원으로 인터넷 및 컴퓨터에 접속되어 이메일, 웹브라우징, 팩스, 뱅킹, 게임 등 단말기로서의 기능도 수행한다. 한편, 스마트폰은 다양한 기능의 수용을 위하여 표준화된 운영 체제(OS) 또는 전용 운영 체제를 갖추기도 한다.On the other hand, as the performance of recently launched smartphones has improved, users are moving a lot from general mobile phones to smart phones. Smart phone is an intelligent mobile phone that adds a computer support function to a mobile phone. It is equipped with a personal digital assistant (PDA) function, internet function, video playback function, Etc., to provide a more convenient interface for use. In addition, with the support of wireless Internet function, it is connected to internet and computer, and also functions as a terminal such as e-mail, web browsing, fax, banking, and game. On the other hand, smart phones have a standard operating system (OS) or a dedicated operating system to accommodate various functions.
이와 같이, 스마트폰 등 다양한 모바일 단말을 통해 다양한 기능의 구현이 가능해짐에 따라, 모바일 단말 내에서 구동되는 다양한 전용 응용 프로그램(application program)들과 콘텐츠(content)들이 개발되고 있다.As such, various functions can be implemented through various mobile terminals such as a smart phone, so that various dedicated application programs and contents are being developed in the mobile terminal.
이러한, 스마트폰에 설치되어 구동되는 전용 애플리케이션은 통상적으로 '앱(App.)'이라고도 하며, 각종 애플리케이션 마켓 등을 통해 유료 또는 무료로 다운로드 받아 스마트폰에 설치하여 사용된다. 따라서, 사용자는 스마트폰에서 특정 애플리케이션 마켓에 접속하여 원하는 애플리케이션을 검색하고, 해당 애플리케이션을 선택하여 다운로드 받아 설치할 수 있다.Such dedicated applications that are installed and operated on a smartphone are commonly referred to as "apps." They are downloaded and installed on smartphones through paid applications or various free applications. Accordingly, a user can access a specific application market on a smart phone, search for a desired application, select the application, download and install the application.
스마트폰에 설치되는 애플리케이션의 종류와 수는 많아지고 있으며, 로그인이 필요한 애플리케이션의 경우 각 애플리케이션에서 일일이 아이디 및 패스워드를 입력하여 로그인 하는 것은 상당한 불편함이 따른다. 또한, 애플리케이션마다 아이디 및 패스워드가 상이할 경우 다수의 아이디와 패스워드를 기억하기가 용이하지 않으며, 잘못된 입력으로 아이디 또는 패스워드를 재설정하여야 하는 불편함이 따르게 된다.The number and type of applications that are installed on smartphones is increasing, and for applications requiring login, it is inconvenient to log in by inputting an ID and password for each application. Also, when the ID and the password are different for each application, it is not easy to memorize a plurality of IDs and passwords, and it is inconvenient to reset the ID or the password by erroneous input.
한편, 이러한 애플리케이션에 대한 로그인을 제공하는 기술로서 대한민국공개특허공보 제2009-0042864호 "애플리케이션 및 인터넷 기반 서비스들에 신뢰성 있는 싱글 사인온 액세스를 제공하는 방법 및 장치(인터디지탈 테크날러지 코포레이션)"(문헌 1)에는 사용자의 장치에 상주하는 안전한 프록시에 단지 한번 사인 온을 한 후에 미리 식별된 사이트 그룹에 속하는 한 사이트에서 다른 사이트로 안전하고 투과적으로 호핑할 수 있게 하는 싱글 사인온 액세스 제공 방법이 개시된다.On the other hand, Korean Patent Laid-Open Publication No. 2009-0042864 entitled " Method and Apparatus Providing Reliable Single Sign-on Access to Applications and Internet-based Services (Interdigital Technology Corp.) "as a technique for providing a login for such applications ) Discloses a method of providing single sign-on access that enables secure and transparent hopping from one site to another site belonging to a previously identified site group after only once signing on to a secure proxy residing on the user's device.
그러나, 자체 로그인 기능을 갖지 않은 애플리케이션에서는 효과적으로 인증을 할 수 있는 방법이 없으며, 동일한 서비스 사업자가 제공하는 복수의 애플리케이션들의 경우 각 애플리케이션에 개별적으로 로그인하는 데에는 상당한 불편함이 따르는 문제가 있다.However, there is no effective authentication method in an application that does not have a self-login function, and in the case of a plurality of applications provided by the same service provider, there is a problem that it is considerably inconvenient to log in to each application individually.
본 발명의 목적은 로그인된 애플리케이션을 매개로 다른 애플리케이션을 로그인시키기 위한 인증 공유에 의한 애플리케이션 로그인 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.It is an object of the present invention to provide an application login system, method and computer-readable recording medium by authentication sharing for logging in another application via a signed application.
또한, 본 발명의 다른 목적은 로그인하고자 하는 제2 애플리케이션에서 로그인된 제1 애플리케이션으로 컨슈머 키(consumer key)를 전송하고 제1 애플리케이션으로부터 인증 토큰(token)을 제공받아 제2 애플리케이션에서 로그인할 수 있는 인증 공유에 의한 애플리케이션 로그인 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.Another object of the present invention is to provide a method and system for transmitting a consumer key to a first application logged in from a second application to be logged in, receiving an authentication token (token) from the first application, An application sign-in system by authentication sharing, a method, and a computer-readable recording medium.
또한, 본 발명의 또 다른 목적은 로그인하고자 하는 제2 애플리케이션에서 로그인된 제1 애플리케이션으로 컨슈머 키를 전송하고 제1 애플리케이션으로부터 서비스 서버에서 생성한 티켓을 제공받아 제2 애플리케이션에서 로그인할 수 있는 인증 공유에 의한 애플리케이션 로그인 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.It is a further object of the present invention to provide a method and apparatus for transmitting a consumer key from a second application to be logged in to a first application that is logged in and receiving a ticket generated by the first application from a service server, And a computer readable recording medium.
또한, 본 발명의 또 다른 목적은 로그인하고자 하는 제2 애플리케이션에서 로그인된 제1 애플리케이션으로 컨슈머 키를 전송하고 제1 애플리케이션으로부터 생성된 서비스 서버에 접속할 수 있는 티켓을 제공받아 제2 애플리케이션에서 로그인할 수 있는 인증 공유에 의한 애플리케이션 로그인 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.Yet another object of the present invention is to provide a method and system for transmitting a consumer key to a first application logged in from a second application to be logged in, receiving a ticket for accessing a service server generated from the first application, And a method and a computer-readable recording medium.
또한, 본 발명의 또 다른 목적은 로그인하고자 하는 제2 애플리케이션에서 로그인된 제1 애플리케이션을 통해 서비스 서버로 컨슈머 키 및 티켓을 전송하고 상기 서비스 서버를 통해 티켓을 검증함으로써 제2 애플리케이션에서 로그인할 수 있는 인증 공유에 의한 애플리케이션 로그인 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.It is still another object of the present invention to provide a method and system for enabling a user to log in from a second application by transmitting a consumer key and a ticket to a service server through a first application logged in from a second application to be logged in, An application sign-in system by authentication sharing, a method, and a computer-readable recording medium.
또한, 본 발명의 또 다른 목적은 로그인하고자 하는 제2 애플리케이션에서 서비스 서버로부터 티켓을 발급받고, 상기 발급된 티켓을 로그인된 제1 애플리케이션을 통해 서비스 서버로부터 인증받음으로써 제2 애플리케이션에서 로그인할 수 있는 인증 공유에 의한 애플리케이션 로그인 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공함에 있다.It is still another object of the present invention to provide a method and system for enabling a user to log in from a second application by issuing a ticket from a service server in a second application to be logged in and authenticating the issued ticket from the service server through the logged- An application sign-in system by authentication sharing, a method, and a computer-readable recording medium.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특유의 효과를 달성하기 위한, 본 발명의 특징적인 구성은 하기와 같다.In order to achieve the above-described object of the present invention and to achieve the specific effects of the present invention described below, the characteristic structure of the present invention is as follows.
본 발명의 일 측면에 따르면, 인증 공유에 의한 애플리케이션 로그인 시스템은, 제1 애플리케이션 및 제2 애플리케이션이 설치되고, 상기 제1 애플리케이션에 대해 로그인 처리된 사용자 단말; 및 상기 사용자 단말로부터 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처, 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 수신된 제1 애플리케이션의 토큰으로부터 식별된 사용자 정보로 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는 서비스 서버를 포함한다.According to an aspect of the present invention, an application login system by authentication sharing includes a user terminal in which a first application and a second application are installed, and a login process is performed for the first application; And receiving a token of the first application, a signature of the first application, a consumer key of the second application, and a signature of the second application from the user terminal, And a service server for performing login processing for the second application.
바람직하게는, 상기 서비스 서버는, 수신된 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처, 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처 중 어느 하나 이상의 유효성을 검사하고, 상기 유효성 검사 결과 유효한 정보일 경우 상기 로그인 처리를 수행한다.Advantageously, the service server checks the validity of at least one of the received token of the first application, the signature of the first application, the consumer key of the second application and the signature of the second application, And performs the login process if the information is valid.
바람직하게는, 상기 서비스 서버는, 상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하여 상기 사용자 단말로 전송한다.Preferably, the service server generates a token and a token secret of the second application in accordance with the login process for the second application, and transmits the token and the token secret to the user terminal.
바람직하게는, 상기 사용자 단말은, 상기 제1 애플리케이션에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션으로 제공한다.Advantageously, the user terminal is configured to receive the token and token secret of the second application from the service server in the first application, to provide the token and token secret of the received second application to the second application do.
바람직하게는, 상기 제1 애플리케이션은, 상기 제2 애플리케이션으로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신한다.Advantageously, the first application receives the consumer key of the second application and the signature of the second application from the second application.
본 발명의 다른 측면에 따르면, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버는, 서비스 서버에 로그인 된 상태인 제1 애플리케이션이 설치된 사용자 단말로부터 제2 애플리케이션에 대한 로그인을 요청받는 요청 수신부; 상기 요청에 따라 상기 사용자 단말로부터 전송된 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션의 컨슈머 키에 대한 유효성을 판단하는 유효성 판단부; 상기 유효성 판단부의 판단 결과 유효한 정보일 경우, 상기 수신된 상기 제1 애플리케이션의 토큰으로부터 로그인된 사용자 정보를 식별하는 사용자 식별부; 및 상기 사용자 식별부에 의해 식별된 사용자 정보로 상기 제2 애플리케이션을 로그인 처리하는 로그인 처리부를 포함한다.According to another aspect of the present invention, a service server for providing an application login service by authentication sharing includes: a request receiving unit for requesting login of a second application from a user terminal installed with a first application that is logged in to a service server; A validity determiner for determining the validity of the token of the first application, the signature of the first application, and the consumer key of the second application transmitted from the user terminal according to the request; A user identification unit for identifying the logged in user information from the received token of the first application when the validity information is valid; And a login processing unit for performing login processing of the second application with the user information identified by the user identification unit.
바람직하게는, 상기 서비스 서버는, 상기 로그인 처리부의 상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하는 토큰 생성부; 및 상기 생성된 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 사용자 단말로 전송하는 토큰 전송부를 더 포함한다.Preferably, the service server further comprises: a token generation unit for generating a token and a token secret of the second application in accordance with a login process for the second application of the login processing unit; And a token transmission unit transmitting the token and the token secret of the generated second application to the user terminal.
바람직하게는, 상기 사용자 단말은, 상기 제1 애플리케이션에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션으로 제공한다.Advantageously, the user terminal is configured to receive the token and token secret of the second application from the service server in the first application, to provide the token and token secret of the received second application to the second application do.
바람직하게는, 상기 제1 애플리케이션은, 상기 제2 애플리케이션으로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 제1 애플리케이션에서 상기 서비스 서버로 상기 수신된 제2 애플리케이션의 시그니처를 더 전송하며, 상기 서비스 서버의 상기 유효성 판단부는, 상기 전송된 제2 애플리케이션의 시그니처의 유효성을 더 판단한다.Advantageously, the first application is configured to receive a consumer key of the second application and a signature of the second application from the second application, and send the signature of the received second application to the service server in the first application, And the validity determination unit of the service server further determines the validity of the signature of the transmitted second application.
바람직하게는, 상기 서비스 서버는, 상기 사용자 식별부의 사용자 정보 식별 이후, 티켓을 생성하여 데이터베이스에 저장하는 티켓 발급부; 상기 티켓 발급부에 의해 생성된 티켓이 사용자 단말의 상기 제1 애플리케이션으로 전송되고, 상기 사용자 단말의 상기 제2 애플리케이션을 통해 상기 전송된 티켓을 수신하는 티켓 수신부; 상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부; 및 상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부를 더 포함하며, 상기 로그인 처리부는, 상기 티켓 판단부의 판단 결과 유효한 티켓을 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행한다.Preferably, the service server further comprises: a ticket issuing unit for generating a ticket after storing the user information of the user identification unit and storing the generated ticket in a database; A ticket receiver for transmitting the ticket generated by the ticket issuing unit to the first application of the user terminal and receiving the transmitted ticket through the second application of the user terminal; A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database; And a ticket determiner for determining whether the received ticket is a valid ticket as a result of the inquiry of the ticket inquiry unit, wherein the login processor performs a login process for the second application when the ticket determiner determines that the ticket is valid do.
바람직하게는, 상기 사용자 단말의 상기 제1 애플리케이션은, 상기 서비스 서버로부터 수신된 티켓을 제2 애플리케이션으로 제공한다.Advantageously, the first application of the user terminal provides a ticket received from the service server to a second application.
바람직하게는, 상기 서비스 서버는, 상기 사용자 식별부의 사용자 정보 식별 이후, 상기 사용자 단말로부터 수신된 상기 제1 애플리케이션에서 생성된 티켓을 데이터베이스에 저장하는 티켓 저장부; 상기 티켓 저장부에 의해 상기 티켓 저장이 이상 없이 완료되었음을 상기 사용자 단말의 제1 애플리케이션으로 통보하는 요청 결과 전송부; 상기 사용자 단말의 상기 제2 애플리케이션을 통해 상기 제1 애플리케이션에서 생성된 티켓을 수신하는 티켓 수신부; 상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부; 및 상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부를 더 포함하며, 상기 로그인 처리부는, 상기 티켓 판단부의 판단 결과 유효한 티켓을 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행한다.Preferably, the service server further comprises: a ticket storage unit for storing, in the database, a ticket generated in the first application received from the user terminal after identifying the user information of the user identification unit; A request result transmission unit for notifying the first application of the user terminal that the ticket storage has been completed by the ticket storage unit abnormally; A ticket receiver for receiving a ticket generated in the first application through the second application of the user terminal; A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database; And a ticket determiner for determining whether the received ticket is a valid ticket as a result of the inquiry of the ticket inquiry unit, wherein the login processor performs a login process for the second application when the ticket determiner determines that the ticket is valid do.
바람직하게는, 상기 사용자 단말의 상기 제1 애플리케이션은, 상기 서비스 서버로부터 상기 티켓 저장이 이상 없이 완료되었음을 통보받음에 따라 상기 생성한 티켓을 제2 애플리케이션으로 제공한다.Advantageously, the first application of the user terminal provides the generated ticket to the second application upon being notified from the service server that the store of the ticket is completed abnormally.
바람직하게는, 상기 서비스 서버는, 상기 사용자 식별부의 사용자 정보 식별 이후, 상기 사용자 단말로부터 수신된 상기 제2 애플리케이션에서 생성된 티켓을 데이터베이스에 저장하는 티켓 저장부; 상기 티켓 저장부에 의해 상기 티켓 저장이 이상 없이 완료되었음을 상기 사용자 단말의 제1 애플리케이션으로 통보하는 요청 결과 전송부; 상기 사용자 단말의 상기 제2 애플리케이션으로부터 상기 제2 애플리케이션에서 생성된 티켓을 수신하는 티켓 수신부; 상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부; 및 상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부를 더 포함하며, 상기 로그인 처리부는, 상기 티켓 판단부의 판단 결과 유효한 티켓을 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행한다.Preferably, the service server further comprises: a ticket storage unit for storing, in the database, a ticket generated in the second application received from the user terminal after identifying the user information in the user identification unit; A request result transmission unit for notifying the first application of the user terminal that the ticket storage has been completed by the ticket storage unit abnormally; A ticket receiver for receiving a ticket generated by the second application from the second application of the user terminal; A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database; And a ticket determiner for determining whether the received ticket is a valid ticket as a result of the inquiry of the ticket inquiry unit, wherein the login processor performs a login process for the second application when the ticket determiner determines that the ticket is valid do.
바람직하게는, 상기 사용자 단말의 상기 제1 애플리케이션은, 상기 서비스 서버로부터 상기 티켓 저장이 이상 없이 완료되었음을 통보받음에 따라 상기 통보 결과를 상기 제2 애플리케이션으로 제공한다.Advantageously, the first application of the user terminal provides the notification result to the second application upon being notified from the service server that the store of the ticket has been completed abnormally.
바람직하게는, 상기 사용자 단말의 상기 제2 애플리케이션은, 티켓을 생성하고, 상기 생성된 티켓을 상기 제1 애플리케이션으로 제공한다.Advantageously, the second application of the user terminal generates a ticket and provides the generated ticket to the first application.
본 발명의 또 다른 측면에 따르면, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버는, 서비스 서버에 로그인 된 상태인 제1 애플리케이션이 설치된 사용자 단말로부터 제2 애플리케이션에 대한 로그인을 요청받는 요청 수신부; 상기 요청에 따라 상기 사용자 단말로부터 전송된 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처에 대한 유효성을 판단하는 제1 유효성 판단부; 상기 제1 유효성 판단부의 판단 결과 유효한 정보일 경우, 티켓을 생성하는 티켓 생성부; 상기 티켓 생성부에 의해 생성된 티켓을 데이터베이스에 저장하는 티켓 저장부; 상기 티켓 생성부에 의해 생성된 티켓을 상기 사용자 단말의 상기 제2 애플리케이션으로 전송하는 티켓 전송부; 상기 사용자 단말의 제1 애플리케이션으로부터 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션에서 수신된 티켓을 수신하는 토큰 수신부; 상기 토큰 수신부의 수신에 따라, 상기 제1 애플리케이션의 토큰 및 상기 제1 애플리케이션의 시그니처에 대한 유효성을 판단하는 제2 유효성 판단부; 상기 제2 유효성 판단부의 판단 결과 유효한 정보일 경우, 상기 수신된 상기 제1 애플리케이션의 토큰으로부터 로그인된 사용자 정보를 식별하는 사용자 식별부; 상기 수신된 티켓을 상기 사용자 식별부에서 확인한 사용자 정보와 매핑하여 데이터베이스에 저장하는 사용자 정보 저장부; 상기 티켓 저장이 이상 없이 완료되었음을 상기 사용자 단말의 제1 애플리케이션으로 통보하는 결과 전송부; 상기 사용자 단말의 상기 제2 애플리케이션으로부터 상기 티켓을 수신하는 티켓 수신부; 상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부; 상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부 및 상기 티켓 판단부의 판단 결과 유효한 티켓을 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는 로그인 처리부를 포함한다.According to another aspect of the present invention, a service server for providing an application login service by authentication sharing includes: a request receiving unit for requesting a login of a second application from a user terminal installed with a first application logged in to a service server; A first validity determining unit for determining validity of a signature of the second application and a consumer key of the second application transmitted from the user terminal according to the request; A ticket generating unit for generating a ticket when the first validity determining unit determines that the information is valid; A ticket storage unit for storing a ticket generated by the ticket creation unit in a database; A ticket transmitting unit for transmitting a ticket generated by the ticket creating unit to the second application of the user terminal; A token receiver for receiving a token of the first application, a signature of the first application and a ticket received in the second application from a first application of the user terminal; A second validity judging unit for judging validity of the token of the first application and the signature of the first application according to the reception of the token receiving unit; A user identification unit for identifying the logged-in user information from the received token of the first application when the second validity information is valid; A user information storage unit for mapping the received ticket to user information identified by the user identification unit and storing the same in a database; A result transmitting unit for notifying the first application of the user terminal that the ticket storage is completed abnormally; A ticket receiver for receiving the ticket from the second application of the user terminal; A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database; A ticket determination unit for determining whether the received ticket is a valid ticket as a result of the inquiry by the ticket inquiry unit, and a login processing unit for performing a login process for the second application if a ticket is valid as a result of the determination by the ticket determination unit.
바람직하게는, 상기 서비스 서버는, 상기 로그인 처리부의 상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하는 토큰 생성부; 및 상기 생성된 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 사용자 단말로 전송하는 토큰 전송부를 더 포함한다.Preferably, the service server further comprises: a token generation unit for generating a token and a token secret of the second application in accordance with a login process for the second application of the login processing unit; And a token transmission unit transmitting the token and the token secret of the generated second application to the user terminal.
본 발명의 또 다른 측면에 따르면, 인증 공유에 의한 애플리케이션 로그인 방법으로서, 서비스 서버에서 수행되는 각 단계가, 요청 수신부에서, 상기 서비스 서버에 로그인 된 상태인 제1 애플리케이션이 설치된 사용자 단말로부터 제2 애플리케이션에 대한 로그인을 요청받는 단계; 유효성 판단부에서, 상기 요청에 따라 상기 사용자 단말로부터 전송된 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션의 컨슈머 키에 대한 유효성을 판단하는 단계; 사용자 식별부에서, 상기 유효성 판단부의 판단 결과 유효한 정보일 경우, 상기 수신된 상기 제1 애플리케이션의 토큰으로부터 로그인된 사용자 정보를 식별하는 단계; 및 로그인 처리부에서, 상기 사용자 식별부에 의해 식별된 사용자 정보로 상기 제2 애플리케이션을 로그인 처리하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of signing an application by authentication sharing, wherein each step performed in a service server comprises: a step in which, in a request receiving unit, Receiving a log-in request for the server; Judging validity of the token of the first application, the signature of the first application, and the consumer key of the second application transmitted from the user terminal according to the request; Identifying the logged-in user information from the received token of the first application if the validity information is valid as a result of the validity determination unit, in the user identification unit; And login processing the second application with the user information identified by the user identification unit in the login processing unit.
바람직하게는, 상기 방법은, 토큰 생성부에서, 상기 로그인 처리부의 상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하는 단계; 및 토큰 전송부에서, 상기 생성된 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 사용자 단말로 전송하는 단계를 더 포함한다.Preferably, the method further comprises: in the token generation unit, generating a token and token secret of the second application in accordance with the login process for the second application of the login processing unit; And transmitting the token and token secret of the generated second application to the user terminal in the token transmitting unit.
바람직하게는, 상기 사용자 단말은, 상기 제1 애플리케이션에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션으로 제공한다.Advantageously, the user terminal is configured to receive the token and token secret of the second application from the service server in the first application, to provide the token and token secret of the received second application to the second application do.
바람직하게는, 상기 제1 애플리케이션은, 상기 제2 애플리케이션으로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 제1 애플리케이션에서 상기 서비스 서버로 상기 수신된 제2 애플리케이션의 시그니처를 더 전송하며, 상기 서비스 서버의 상기 유효성 판단부는, 상기 전송된 제2 애플리케이션의 시그니처의 유효성을 더 판단한다.Advantageously, the first application is configured to receive a consumer key of the second application and a signature of the second application from the second application, and send the signature of the received second application to the service server in the first application, And the validity determination unit of the service server further determines the validity of the signature of the transmitted second application.
본 발명의 또 다른 측면에 따르면, 사용자 단말은, 제1 애플리케이션 및 제2 애플리케이션이 설치되는 사용자 단말에 있어서, 상기 제1 애플리케이션을 실행하고 서비스 서버를 통해 사용자를 상기 제1 애플리케이션에 대해 로그인 처리하며, 상기 제2 애플리케이션으로부터 상기 제2 애플리케이션에 대한 로그인 요청 수신에 따라 상기 서비스 서버로 상기 제2 애플리케이션에 대한 로그인을 요청하고, 상기 서비스 서버로부터 상기 제2 애플리케이션을 위한 로그인 관련 정보를 수신하는 제1 애플리케이션 실행부; 및 상기 제2 애플리케이션을 실행하고, 상기 제1 애플리케이션 실행부로 상기 제2 애플리케이션에 대한 로그인을 요청하며, 상기 로그인 요청에 따라 상기 제1 애플리케이션 실행부로부터 상기 제2 애플리케이션을 위한 로그인 관련 정보를 수신하여 상기 사용자에 대해 로그인 처리하는 제2 애플리케이션 실행부를 포함한다.According to another aspect of the present invention, there is provided a user terminal having a first application and a second application installed therein, the user terminal executing the first application and log-processing the user for the first application through a service server Requesting the service server to log in to the second application in response to receiving a login request for the second application from the second application, An application execution unit; And executing the second application, requesting the first application executing section to log in the second application, receiving login related information for the second application from the first application executing section according to the login request And a second application execution unit for performing login processing for the user.
바람직하게는, 상기 제1 애플리케이션 실행부는, 상기 서비스 서버로 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션의 컨슈머 키를 전송하여 상기 제2 애플리케이션에 대한 로그인을 요청한다.Advantageously, the first application executor sends a login to the second application by sending the token of the first application, the signature of the first application, and the consumer key of the second application to the service server.
바람직하게는, 상기 사용자 단말은, 상기 제1 애플리케이션 실행부에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션 실행부로 제공한다.Advantageously, the user terminal is further configured to: receive the token and token secret of the second application from the service server in the first application execution unit; and transmit the token and token secret of the received second application to the second application To the execution unit.
바람직하게는, 상기 제1 애플리케이션 실행부는, 상기 제2 애플리케이션 실행부로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 서비스 서버로 상기 수신된 제2 애플리케이션의 시그니처를 더 전송한다.Preferably, the first application execution unit receives the signature of the second application and the signature of the second application from the second application execution unit, and transmits the signature of the second application to the service server send.
한편, 상기 인증 공유에 의한 애플리케이션 로그인 방법을 제공받기 위한 정보는 서버 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있다. 이러한 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 프로그램 및 데이터가 저장되는 모든 종류의 기록매체를 포함한다. 그 예로는, 롬(Read Only Memory), 램(Random Access Memory), CD(Compact Disk), DVD(Digital Video Disk)-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들면, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다. 또한, 이러한 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.Meanwhile, the information for providing the application login method by the authentication sharing may be stored in a recording medium readable by the server computer. Such a recording medium includes all kinds of recording media in which programs and data are stored so that they can be read by a computer system. Examples include ROMs (Read Only Memory), Random Access Memory, CD (Compact Disk), DVD (Digital Video Disk) -ROM, magnetic tape, floppy disk, optical data storage device, (For example, transmission over the Internet). Such a recording medium may also be distributed over a networked computer system so that computer readable code in a distributed manner can be stored and executed.
상술한 바와 같이, 본 발명에 따르면 로그인 된 상태의 애플리케이션을 통해 로그인되지 않은 애플리케이션을 용이하게 로그인시킬 수 있는 장점이 있다.As described above, according to the present invention, there is an advantage that an application that has not been logged in can be easily logged in through an application in a logged-in state.
또한, 자체 로그인 기능을 갖지 않은 애플리케이션에서도 로그인된 애플리케이션을 통해 효과적으로 인증함으로써 로그인을 할 수 있는 장점이 있다.In addition, applications that do not have their own login feature can log in by authenticating effectively through the logged-in application.
아울러, 동일한 서비스 사업자가 제공하는 복수의 애플리케이션들의 경우 각 애플리케이션에 개별적으로 로그인하지 않고서도 로그인된 애플리케이션을 통해 용이하게 로그인할 수 있는 장점이 있다.In addition, in the case of a plurality of applications provided by the same service provider, there is an advantage that it is possible to log in easily through a logged-in application without individually logging in each application.
도 1은 본 발명의 실시예에 따른 인증 공유에 의한 애플리케이션 로그인 시스템을 나타내는 도면이다.
도 2는 본 발명의 제1 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다.
도 3은 본 발명의 제1 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다.
도 4는 본 발명의 제2 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다.
도 5은 본 발명의 제2 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다.
도 6은 본 발명의 제3 및 4 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다.
도 7은 본 발명의 제3 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다.
도 8은 본 발명의 제4 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다.
도 9는 본 발명의 제5 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다.
도 10은 본 발명의 제5 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다.
도 11 내지 도 16은 본 발명의 실시예에 따른 로그인된 애플리케이션을 통해 로그인을 제공하는 실제 구현 예를 나타내는 도면이다.1 is a diagram showing an application login system by authentication sharing according to an embodiment of the present invention.
2 is a diagram showing a detailed configuration of a service server providing an application login by authentication sharing according to the first embodiment of the present invention.
3 is a flowchart showing an application login processing procedure in the service server according to the first embodiment of the present invention.
4 is a diagram illustrating a detailed configuration of a service server that provides application login by authentication sharing according to a second embodiment of the present invention.
5 is a flowchart showing an application login processing procedure in the service server according to the second embodiment of the present invention.
6 is a diagram showing a detailed configuration of a service server that provides application login by authentication sharing according to third and fourth embodiments of the present invention.
7 is a flowchart showing an application login processing procedure in the service server according to the third embodiment of the present invention.
8 is a flowchart showing an application login processing procedure in the service server according to the fourth embodiment of the present invention.
9 is a diagram showing a detailed configuration of a service server providing an application login by authentication sharing according to a fifth embodiment of the present invention.
10 is a flowchart showing an application login processing procedure in the service server according to the fifth embodiment of the present invention.
11 through 16 are diagrams illustrating an actual implementation for providing a login through a logged-in application according to an embodiment of the present invention.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는 적절하게 설명된다면 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.The following detailed description of the invention refers to the accompanying drawings, which illustrate, by way of illustration, specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment. It is also to be understood that the position or arrangement of the individual components within each disclosed embodiment may be varied without departing from the spirit and scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is to be limited only by the appended claims, along with the full scope of equivalents to which the claims are entitled, if properly explained. In the drawings, like reference numerals refer to the same or similar functions throughout the several views.
본 발명은 로그인된 애플리케이션을 매개로 다른 애플리케이션(예컨대, 자체 로그인 기능을 가지지 않은 애플리케이션 또는 특정 애플리케이션과 연계된 애플리케이션 등)을 로그인시키기 위한 인증 공유에 의한 애플리케이션 로그인 시스템을 개시한다.The present invention discloses an application login system by authentication sharing for logging in another application (e.g., an application that does not have a self-login capability or an application associated with a specific application) via the logged-in application.
한편, 본 발명에서는 로그인하고자 하는 제2 애플리케이션에서 로그인된 제1 애플리케이션을 통해 또는 직접 서비스 서버로 컨슈머 키(consumer key)를 전송하고, 다양한 실시예에 따라 제1 애플리케이션을 통해 또는 서비스 서버로부터 직접 인증 토큰(token)을 제공받음으로써 제2 애플리케이션에서 로그인할 수 있다.Meanwhile, according to the present invention, a consumer key may be transmitted to a service server through a first application that is logged in from a second application to be logged in, and may be directly authenticated through a first application, You can log in from the second application by receiving a token.
또한, 본 발명의 일부 실시예들에서는 상기 제1 애플리케이션 및 제2 애플리케이션의 인증 공유를 위해 별도의 티켓을 발급하고, 서비스 서버에서 상기 발급된 티켓을 조회함으로써 제2 애플리케이션에 대한 로그인을 처리한다.Further, in some embodiments of the present invention, a separate ticket is issued for sharing the authentication of the first application and the second application, and the login for the second application is processed by inquiring the issued ticket at the service server.
한편, 후술하는 본 발명에서 컨슈머 키(consumer key)는 컨슈머와 프로바이더 간에 공유하는 비밀키로서, 로그인하고자 하는 제2 애플리케이션이 제1 애플리케이션을 통해 또는 직접 서비스 서버로 전송하여 공유하게 되는 비밀키이다. 후술하는 설명에서 컨슈머 키는 발명의 이해를 돕기 위해 사용한 용어로서 본 발명이 이에 한정되지는 않는다.Meanwhile, in the present invention, a consumer key is a secret key that is shared between a consumer and a provider. The second application is a secret key that is transmitted through a first application or directly to a service server to be shared . In the following description, the term " consumer key " is used to facilitate understanding of the present invention, and the present invention is not limited thereto.
또한, 각 애플리케이션(즉, 제1 애플리케이션 또는 제2 애플리케이션)에서 제공하는 시그니처(signature)는 악의의 공격자가 요청 내용의 일부를 변형해서 보내는 것을 방지하기 위해 사용되는 정보로서, 예컨대 해쉬(hash) 함수 등을 이용하여 생성될 수 있다.In addition, the signature provided by each application (i.e., the first application or the second application) is information used to prevent a malicious attacker from modifying a part of the request content, for example, a hash function Or the like.
또한, 후술하는 본 발명에서 '토큰(token)'은 로그인된 애플리케이션의 인증을 위해 서버에서 단말로 제공되는 데이터를 의미하며, 사용자의 인증데이터를 포함하여 구성될 수 있다. 따라서, 정상적으로 로그인된 애플리케이션에는 인증 토큰이 부여되며, 상기 애플리케이션에서는 부여된 인증 토큰을 가지고 로그인 상태를 유지할 수 있다. 아울러, 상기 토큰은 로그인하고자 하는 제2 애플리케이션이 서비스 서버로부터 발급받음으로써 서비스 서버에서 특정 사용자와 연관되어 있는 보호된 자원에 액세스할 수 있다.In the present invention, 'token' means data provided from the server to the terminal for authentication of the logged-in application, and may include authentication data of the user. Therefore, an authentication token is normally given to an application that is normally logged in, and the application can maintain the login state with the authentication token granted. In addition, the token may access protected resources associated with a particular user at the service server by issuing a second application to be logged in from the service server.
또한, '토큰 비밀번호(token secret)'는 로그인하고자 하는 제2 애플리케이션이 서비스 서버로부터 제공된 토큰의 소유권을 확인하기 위해 사용되는 값을 의미하며, 일정 길이의 숫자 또는 문자열 등으로 구성될 수 있다.The 'token secret' refers to a value used by a second application to be logged in to verify the ownership of a token provided from the service server, and may be composed of a predetermined number of digits or a string.
또한, '티켓(ticket)'은 서비스 서버에서 제1 애플리케이션을 통해 제2 애플리케이션 식별하기 위해 임시로 생성 및 사용되는 식별자를 의미하며, 일정 길이의 숫자 또는 문자열 등으로 구성될 수 있다. 본 발명의 각 실시예에 따라 상기 티켓은 제1 애플리케이션 또는 제2 애플리케이션 또는 서비스 서버에서 생성될 수 있다. 이때, 상기 티켓의 생성 주체가 달라짐에 따라서 인증 및 로그인 절차가 달라지게 된다.The 'ticket' is an identifier generated and used temporarily by the service server to identify the second application through the first application. The 'ticket' may consist of a certain number of digits or a string. According to embodiments of the present invention, the ticket may be generated in a first application or a second application or service server. At this time, authentication and log-in procedures differ depending on the subject of the ticket being changed.
한편, 후술하는 본 발명에서는 상기와 같이 본 발명의 이해를 돕기 위해 특정 용어의 정보들(예컨대, 컨슈머 키, 시그니처, 티켓, 토큰, 토큰 비밀번호 등)이 사용되나 본 발명이 상기 용어들에 한정되지는 않으며, 본 발명의 기능을 수행할 수 있는 다른 정보들을 사용하여 본 발명을 구현할 수도 있다.In the following description of the present invention, information of a specific term (for example, a consumer key, a signature, a ticket, a token, a token secret, etc.) is used to facilitate understanding of the present invention. However, And other information that can perform the functions of the present invention may be used to implement the present invention.
또한, 후술하는 설명에서 각종 애플리케이션이 설치되는 '사용자 단말'은 일반적인 데스크톱 컴퓨터뿐만 아니라 스마트폰을 포함하는 개념으로서, 이동 통신 단말기, 데스크톱 컴퓨터, 노트북 컴퓨터, 워크스테이션, 팜톱(palmtop) 컴퓨터, 개인 휴대 정보 단말기(personal digital assistant: PDA), 웹 패드 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기라면 얼마든지 본 발명에 따른 단말로서 채택될 수 있다.In addition, the 'user terminal' in which various applications are installed in the following description includes not only a general desktop computer but also a smart phone including a mobile communication terminal, a desktop computer, a notebook computer, a workstation, a palmtop computer, A digital device having a memory means such as a personal digital assistant (PDA), a web pad, etc. and equipped with a microprocessor for computing ability can be adopted as a terminal according to the present invention.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, so that those skilled in the art can easily carry out the present invention.
먼저, 도 1을 참조하여 본 발명에 따른 인증 공유에 의한 애플리케이션 로그인 시스템 구성을 설명하며, 다음으로 도 2 내지 도 16을 참조하여 본 발명의 각 실시예들에 따른 서비스 서버의 세부 구성, 절차 및 서비스 구현 예를 상세히 설명한다.First, a configuration of an application login system by authentication sharing according to the present invention will be described with reference to FIG. 1, and a detailed configuration, procedure and procedure of a service server according to each embodiment of the present invention will be described with reference to FIG. 2 to FIG. A service implementation example will be described in detail.
인증 공유에 의한 애플리케이션 로그인 시스템Application Login System by Authentication Sharing
도 1은 본 발명의 실시예에 따른 인증 공유에 의한 애플리케이션 로그인 시스템을 나타내는 도면이다. 도 1을 참조하면, 본 발명에 따른 시스템은 사용자 단말(100)(예컨대, 스마트폰), 통신 네트워크(110), 서비스 서버(120) 등을 포함하여 구성될 수 있다.1 is a diagram showing an application login system by authentication sharing according to an embodiment of the present invention. Referring to FIG. 1, a system according to the present invention may include a user terminal 100 (e.g., a smart phone), a
사용자 단말(100) 내에 설치된 제1 애플리케이션(101)은 이미 로그인된 상태의 애플리케이션이며, 본 발명에서는 로그인 기능이 없거나 아직 로그인되지 않은 제2 애플리케이션(102)에서 상기 로그인된 제1 애플리케이션(101)을 이용하여 서비스 서버(120)에 로그인하게 된다.The
한편, 상기 도 1에서는 제1 애플리케이션(101)과 제2 애플리케이션(102)이 동일한 사용자 단말(100) 내에 설치되는 것으로 도시되어 있으나, 각 애플리케이션이 다른 단말에 설치되고 서로 통신함으로써 본 발명이 구현될 수도 있다.1, the
즉, 제2 애플리케이션에서 서비스 서버(120)에 로그인하고자 할 경우, 통상적으로 별도의 아이디 및 패스워드를 입력하여 로그인하여야 하나, 본 발명에서는 이미 로그인된 제1 애플리케이션(101)을 매개로 하여 서비스 서버(120)에 로그인하는 것이 가능하다.That is, in order to log in to the
상기 통신 네트워크(110)는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN; Personal Area Network), 근거리 통신망(LAN; Local Area Network), 도시권 통신망(MAN; Metropolitan Area Network), 광역 통신망(WAN; Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 상기 통신 네트워크(110)는 공지의 월드와이드웹(WWW; World Wide Web)일 수 있으며, 적외선(Infrared Data Association; IrDA) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선전송기술을 이용할 수도 있다.The
이하, 도 2 내지 도 10을 참조하여 본 발명의 각 실시예들에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성 및 서비스 서버에서 수행되는 로그인 처리 절차를 설명하며, 도 11 내지 도 16을 참조하여 본 발명이 실제 서비스에 적용된 실시예를 설명한다.The detailed configuration of the service server providing application login by authentication sharing according to each embodiment of the present invention and the login processing procedure performed in the service server will be described with reference to FIG. 2 to FIG. 10, 16, an embodiment in which the present invention is applied to an actual service will be described.
제1 실시예(기본 First Embodiment (Basic 실시예Example ))
도 2는 본 발명의 제1 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다. 도 2를 참조하면, 본 발명의 제1 실시예에 따라 애플리케이션 로그인을 제공하는 서비스 서버(120)는 요청 수신부(210), 유효성 판단부(220), 사용자 식별부(230), 로그인 처리부(240), 토큰 생성부(250) 및 토큰 전송부(260) 등을 포함하여 구성될 수 있다.2 is a diagram showing a detailed configuration of a service server providing an application login by authentication sharing according to the first embodiment of the present invention. 2, the
상기 사용자 단말(100)에 설치된 제1 애플리케이션(101)은 이미 로그인된 애플리케이션이며, 제2 애플리케이션(102)은 로그인하고자 하는 애플리케이션이다. 따라서, 후술하는 본 발명의 제1 실시예에 따라 상기 제2 애플리케이션(102)은 상기 제1 애플리케이션(101)을 매개로 하여 서비스 서버(120)에 로그인할 수 있다.The
한편, 상기 사용자 단말(100)에는 상기 제1 애플리케이션(101)을 실행하는 제1 애플리케이션 실행부와, 상기 제2 애플리케이션(102)을 실행하는 제2 애플리케이션 실행부를 구비할 수 있으며, 이하 설명에서는 설명의 편의상 상기 제1 애플리케이션 실행부 및 상기 제2 애플리케이션 실행부를 각각 제1 애플리케이션(101) 및 제2 애플리케이션(102)으로 지칭하여 설명하기로 한다.The
먼저, 제2 애플리케이션(102)에서 제1 애플리케이션(101)으로 컨슈머 키 및 시그니처를 전송함으로써 로그인 요청을 한다. 상기 제1 애플리케이션(101)에서는 상기 제2 애플리케이션(102)으로부터 제공된 제2 애플리케이션(102)의 컨슈머 키 및 시그니처에 자신의 토큰 및 시그니처를 포함하여 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.First, a login request is made by transmitting a consumer key and a signature from the
서비스 서버(120)의 요청 수신부(210)에서는 상기 사용자 단말(100)의 제1 애플리케이션(101)으로부터 제1 애플리케이션(101)의 토큰과 시그니처 및 제2 애플리케이션(102)의 컨슈머 키 및 시그니처를 수신함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 수신한다.The request receiving unit 210 of the
유효성 판단부(220)에서는 상기 요청 수신부(210)를 통해 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제1 애플리케이션(101)의 토큰 및 시그니처가 유효한지를 판단하며, 제2 애플리케이션(102)의 컨슈머 키 및 시그니처가 유효한지를 판단한다.The
상기 유효성 판단부(220)의 판단 결과 모두 유효한 정보일 경우, 사용자 식별부(230)에서는 상기 제1 애플리케이션(101)의 토큰으로 사용자 정보 데이터베이스(270)에 저장된 로그인된 사용자의 정보를 확인한다. 그런 다음, 상기 제2 애플리케이션(102)의 컨슈머 키에 대응하여 상기 확인된 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리한다.If all of the validity information is determined to be valid as a result of the
토큰 생성부(250)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성하고, 토큰 전송부(260)를 통해 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.The
사용자 단말(100)의 제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 상기 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 수신하고, 수신된 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션(102)으로 전송함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)에서 생성한 토큰 및 토큰 비밀번호를 이용하여 서비스 서버(120)에 로그인된 상태로 접속할 수 있다.The
도 3은 본 발명의 제1 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다. 한편, 이하 설명에서는 설명의 편의상 로그인된 제1 애플리케이션(101)을 'A'라 칭하고, 상기 제1 애플리케이션(102)을 매개로 로그인하고자 하는 제2 애플리케이션(102)을 'B'라 칭하기로 한다.3 is a flowchart showing an application login processing procedure in the service server according to the first embodiment of the present invention. In the following description, the
도 3을 참조하면, 먼저 제2 애플리케이션(102)(즉, 'B')에서는 자신의 컨슈머 키 및 시그니처를 제1 애플리케이션(101)(즉, 'A')으로 전송함으로써 제1 애플리케이션(101)을 매개로 하는 로그인을 요청한다.Referring to FIG. 3, a
상기 제1 애플리케이션(101)에서는 상기 제2 애플리케이션(102)으로부터 B의 컨슈머 키 및 B의 시그니처를 수신하고, 상기 수신된 B의 컨슈머 키 및 B의 시그니처와 함께 자신의 토큰(즉, A의 토큰) 및 시그니처(즉, A의 시그니처)를 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.The
서비스 서버(102)에서는 상기 제1 애플리케이션(101)으로부터 A의 토큰, A의 시그니처, B의 컨슈머 키 및 B의 시그니처를 수신하고, 수신된 각 정보의 유효성을 확인한다. 즉, A의 토큰에 대한 유효성을 판단(S301)하고, 이상이 없을 경우, A의 시그니처의 유효성을 판단(S302)하며, 이상이 없을 경우, B의 컨슈머 키의 유효성을 판단(S303)하고, 이상이 없을 경우, B의 시그니처의 유효성을 판단(S304)한다. 한편, 상기 유효성 판단의 순서는 변경될 수 있으며, 동시에 수행될 수도 있다.The
상기 유효성 판단 결과 이상이 없을 경우, 상기 A의 토큰으로 현재 제1 애플리케이션(101)에서 로그인된 사용자의 정보(예컨대, 로그인 아이디 및 패스워드)를 확인한다. 그런 다음, 상기 제2 애플리케이션(102)에 대해 상기 확인된 사용자의 정보로 로그인 처리(S305)한다.If there is no abnormality as a result of the validity check, the information of the user currently logged in in the first application 101 (e.g., login ID and password) is confirmed using the token of A. Then, the
한편, 상기 서비스 서버(120)는 상기 로그인 처리에 따라 제2 애플리케이션(102)(즉, B)의 토큰 및 토큰 비밀번호를 생성(S306)하여 제1 애플리케이션(101)으로 전송한다.Meanwhile, the
제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 B의 토큰 및 B의 토큰 비밀번호를 수신하여, 다시 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)으로부터 자신에 대한 토큰(즉, B의 토큰) 및 토큰 비밀번호(B의 토큰 비밀번호)를 수신하여 저장함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)과 서비스 서버(120)는 상기 생성된 B의 토큰 및 B의 비밀번호를 이용하여 로그인된 상태로 접속하게 된다.The
이렇게 함으로써, 사용자는 제2 애플리케이션(102)에서 별도의 로그인 및 패스워드 입력 절차 없이도 이미 로그인된 제1 애플리케이션(101)을 이용하여 서비스 서버(120)에 로그인할 수 있다.By doing so, the user can log in to the
이상으로 제1 실시예에 따른 기본적인 로그인 방법을 설명하였으며, 이하 제2 실시예 및 제5 실시예에 따른 로그인 방법을 설명한다. 한편, 후술하는 제2 내지 제5 실시예에서는 실시예별로 상이한 각 주체에서 생성된 티켓을 이용하여 로그인을 처리하는 방법을 설명한다.The basic login method according to the first embodiment has been described, and the login method according to the second and fifth embodiments will be described below. On the other hand, in the second to fifth embodiments to be described later, a method of processing login using a ticket generated in each of the different subjects according to the embodiment will be described.
제2 Second 실시예Example (A 요청에 의한 서버 생성 티켓 이용)(Using server-generated ticket by A request)
도 4는 본 발명의 제2 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다. 도 4를 참조하면, 본 발명의 제2 실시예에 따라 애플리케이션 로그인을 제공하는 서비스 서버(120)는 요청 수신부(401), 유효성 판단부(402), 사용자 식별부(403), 티켓 발급부(404), 티켓 수신부(405), 티켓 조회부(406), 티켓 판단부(407), 로그인 처리부(408), 토큰 생성부(409) 및 토큰 전송부(410) 등을 포함하여 구성될 수 있다.4 is a diagram illustrating a detailed configuration of a service server that provides application login by authentication sharing according to a second embodiment of the present invention. 4, a
상기 사용자 단말(100)에 설치된 제1 애플리케이션(101)은 이미 로그인된 애플리케이션이며, 제2 애플리케이션(102)은 로그인하고자 하는 애플리케이션이다. 따라서, 후술하는 본 발명의 제2 실시예에 따라 상기 제2 애플리케이션(102)은 상기 제1 애플리케이션(101)을 매개로 하여 서비스 서버(120)에 로그인할 수 있다.The
먼저, 제2 애플리케이션(102)에서 제1 애플리케이션(101)으로 컨슈머 키를 전송함으로써 로그인 요청을 한다. 상기 제1 애플리케이션(101)에서는 상기 제2 애플리케이션(102)으로부터 제공된 제2 애플리케이션(102)의 컨슈머 키에 자신의 토큰 및 시그니처를 포함하여 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.First, a login request is made by transmitting a consumer key from the
서비스 서버(120)의 요청 수신부(401)에서는 상기 사용자 단말(100)의 제1 애플리케이션(101)으로부터 제1 애플리케이션(101)의 토큰과 시그니처 및 제2 애플리케이션(102)의 컨슈머 키를 수신함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 수신한다.The request receiving unit 401 of the
유효성 판단부(402)에서는 상기 요청 수신부(401)를 통해 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제1 애플리케이션(101)의 토큰 및 시그니처가 유효한지를 판단하며, 제2 애플리케이션(102)의 컨슈머 키가 유효한지를 판단한다.The
상기 유효성 판단부(402)의 판단 결과 모두 유효한 정보일 경우, 사용자 식별부(403)에서는 상기 제1 애플리케이션(101)의 토큰으로 사용자 정보 데이터베이스(411)에 저장된 로그인된 사용자의 정보를 확인한다. 그런 다음, 상술한 제1 실시예에서와는 달리 제2 애플리케이션(102)의 확인을 위한 티켓을 발급한다.If all of the validity information is determined to be valid as a result of the
즉, 티켓 발급부(404)에서는 새로운 티켓을 발급하고, 이를 상기 사용자 식별부(403)에서 확인한 사용자 정보와 매핑하여 티켓 정보 데이터베이스(412)에 저장한다. 이때, 상기 발급된 티켓은 사용자 단말(100)의 제1 애플리케이션(101)으로 전송된다.That is, the
다음으로, 상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 서비스 서버(120)로부터 수신된 티켓을 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)을 통해 수신된 티켓을 서비스 서버(120)로 전송함으로써 인증을 요청한다.Next, the
서비스 서버(120)의 티켓 수신부(405)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 티켓 조회부(406)에서는 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 티켓 정보 데이터베이스(412)에 저장된 티켓과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득한다.The
티켓 판단부(407)에서는 상기 티켓의 유효성을 검사한 후, 이상이 없을 경우 로그인 처리부(408)를 통해 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리한다.The
토큰 생성부(408)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성하고, 토큰 전송부(410)를 통해 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.The
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)에서 생성한 토큰 및 토큰 비밀번호를 이용하여 서비스 서버(120)에 로그인된 상태로 접속할 수 있다.The login procedure for the
도 5는 본 발명의 제2 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다. 한편, 이하 설명에서는 제1 실시예에서와 마찬가지로 설명의 편의상 로그인된 제1 애플리케이션(101)을 'A'라 칭하고, 상기 제1 애플리케이션(102)을 매개로 로그인하고자 하는 제2 애플리케이션(102)을 'B'라 칭하기로 한다.5 is a flowchart showing an application login processing procedure in the service server according to the second embodiment of the present invention. In the following description, as in the first embodiment, the
도 5를 참조하면, 먼저 제2 애플리케이션(102)(즉, 'B')에서는 자신의 컨슈머 키를 제1 애플리케이션(101)(즉, 'A')으로 전송함으로써 제1 애플리케이션(101)을 매개로 하는 로그인을 요청한다.5, the second application 102 (i.e., 'B') first communicates the
상기 제1 애플리케이션(101)에서는 상기 제2 애플리케이션(102)으로부터 B의 컨슈머 키를 수신하고, 상기 수신된 B의 컨슈머 키와 함께 자신의 토큰(즉, A의 토큰) 및 시그니처(즉, A의 시그니처)를 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.The
서비스 서버(102)에서는 상기 제1 애플리케이션(101)으로부터 A의 토큰, A의 시그니처, B의 컨슈머 키를 수신하고, 수신된 각 정보의 유효성을 확인한다. 즉, A의 토큰에 대한 유효성을 판단(S501)하고, 이상이 없을 경우, A의 시그니처의 유효성을 판단(S502)하며, 이상이 없을 경우, B의 컨슈머 키의 유효성을 판단(S503)한다. 한편, 상기 유효성 판단의 순서는 변경될 수 있으며, 동시에 수행될 수도 있다.The
상기 유효성 판단 결과 이상이 없을 경우, 상기 A의 토큰으로 현재 제1 애플리케이션(101)에서 로그인된 사용자의 정보(예컨대, 로그인 아이디 및 패스워드)를 확인(S504)한다.If there is no abnormality in the validity determination result, the information (e.g., login ID and password) of the user currently logged in from the
그런 다음, 상술한 바와 같이 본 발명의 제2 실시예에 따라 새로운 티켓을 발급(S505)하고, 이를 상기 사용자 확인한 사용자 정보와 매핑하여 데이터베이스에 저장한다. 이때, 상기 발급된 티켓은 사용자 단말(100)의 제1 애플리케이션(101)으로 전송된다.Then, as described above, a new ticket is issued (S505) according to the second embodiment of the present invention, and the new ticket is mapped to the user information confirmed by the user and stored in the database. At this time, the issued ticket is transmitted to the
다음으로, 상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 서비스 서버(120)로부터 수신된 티켓을 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)을 통해 수신된 티켓을 서비스 서버(120)로 전송함으로써 인증을 요청한다.Next, the
서비스 서버(120)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 데이터베이스에 저장된 티켓과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득(S506)한다. 한편, 이때 본 발명의 실시예에 따라 상기 제2 애플리케이션(102)에서 상기 티켓을 서비스 서버(120)로 전송할 때, 자신의 컨슈머 키 및 시그니처를 함께 전송함으로써 제2 애플리케이션(102)에 대한 인증을 수행하는 절차를 추가할 수도 있다.The
그런 다음, 서비스 서버(120)에서는 상기 티켓의 유효성을 검사(S507)한 후, 이상이 없을 경우 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리(S508)한다.Then, the
그런 다음, 상기 서비스 서버(120)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성(S509)하고, 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.Then, the
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신하여 저장함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)과 서비스 서버(120)는 상기 생성된 B의 토큰 및 B의 비밀번호를 이용하여 로그인된 상태로 접속하게 된다.The
이렇게 함으로써, 사용자는 제2 애플리케이션(102)에서 별도의 로그인 및 패스워드 입력 절차 없이도 이미 로그인된 제1 애플리케이션(101)을 이용하여 서비스 서버(120)에 로그인할 수 있다.By doing so, the user can log in to the
제3 Third 실시예Example (A 생성 티켓 이용)(Using A generation ticket)
도 6은 본 발명의 제3 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다. 도 6을 참조하면, 본 발명의 제3 실시예에 따라 애플리케이션 로그인을 제공하는 서비스 서버(120)는 요청 수신부(601), 유효성 판단부(602), 사용자 식별부(603), 티켓 저장부(604), 요청 결과 전송부(605), 티켓 수신부(606), 티켓 조회부(607), 티켓 판단부(608), 로그인 처리부(609), 토큰 생성부(610) 및 토큰 전송부(611) 등을 포함하여 구성될 수 있다.6 is a diagram showing a detailed configuration of a service server for providing application login by authentication sharing according to a third embodiment of the present invention. 6, a
상기 사용자 단말(100)에 설치된 제1 애플리케이션(101)은 이미 로그인된 애플리케이션이며, 제2 애플리케이션(102)은 로그인하고자 하는 애플리케이션이다. 따라서, 후술하는 본 발명의 제3 실시예에 따라 상기 제2 애플리케이션(102)은 상기 제1 애플리케이션(101)을 매개로 하여 서비스 서버(120)에 로그인할 수 있다.The
먼저, 제2 애플리케이션(102)에서 제1 애플리케이션(101)으로 컨슈머 키를 전송함으로써 로그인 요청을 한다. 상기 제1 애플리케이션(101)은 상기 제2 애플리케이션(102)으로부터 로그인 요청을 수신하고, 새로운 티켓을 생성한다.First, a login request is made by transmitting a consumer key from the
그런 다음, 상기 제1 애플리케이션(101)에서는 상기 제2 애플리케이션(102)으로부터 제공된 제2 애플리케이션(102)의 컨슈머 키에 자신의 토큰 및 시그니처와 자신이 생성한 티켓을 포함하여 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.Then, the
서비스 서버(120)의 요청 수신부(601)에서는 상기 사용자 단말(100)의 제1 애플리케이션(101)으로부터 제1 애플리케이션(101)의 토큰과 시그니처, 제2 애플리케이션(102)의 컨슈머 키 및 제1 애플리케이션(101)에서 생성한 티켓을 수신함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 수신한다.The
유효성 판단부(602)에서는 상기 요청 수신부(601)를 통해 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제1 애플리케이션(101)의 토큰 및 시그니처가 유효한지를 판단하며, 제2 애플리케이션(102)의 컨슈머 키가 유효한지를 판단한다.The
상기 유효성 판단부(602)의 판단 결과 모두 유효한 정보일 경우, 사용자 식별부(603)에서는 상기 제1 애플리케이션(101)의 토큰으로 사용자 정보 데이터베이스(621)에 저장된 로그인된 사용자의 정보를 확인한다. 그런 다음, 상술한 제1 및 제2 실시예에서와는 달리 상기 제1 애플리케이션(101)에서 발급하여 전송된 티켓을 티켓 정보 데이터베이스(622)에 저장한다. 즉, 티켓 저장부(604)에서는 상기 수신된 티켓을 상기 사용자 식별부(603)에서 확인한 사용자 정보와 매핑하여 티켓 정보 데이터베이스(622)에 저장한다. 이와 같이, 상기 티켓이 고유한 값으로서 데이터베이스에 정상적으로 저장이 완료될 경우, 요청 결과 전송부(605)에서는 상기 티켓 저장이 이상 없이 완료되었음을 사용자 단말(100)의 제1 애플리케이션으로 통보한다.If all of the validity information is determined to be valid as a result of the
상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 티켓 저장이 이상 없이 완료되었음을 통보받고, 자신이 생성한 상기 티켓을 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)으로부터 수신된 티켓을 서비스 서버(120)로 전송함으로써 인증을 요청한다.The
서비스 서버(120)의 티켓 수신부(606)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 티켓 조회부(607)에서는 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 티켓 정보 데이터베이스(622)에 저장된 티켓(즉, 제1 애플리케이션(101)으로부터 수신된 티켓)과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득한다.The
티켓 판단부(608)에서는 상기 티켓의 유효성을 검사한 후, 이상이 없을 경우 로그인 처리부(609)를 통해 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리한다.After checking the validity of the ticket, the
토큰 생성부(610)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성하고, 토큰 전송부(611)를 통해 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.The
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)에서 생성한 토큰 및 토큰 비밀번호를 이용하여 서비스 서버(120)에 로그인된 상태로 접속할 수 있다.The login procedure for the
도 7은 본 발명의 제3 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다. 도 7을 참조하면, 먼저 제2 애플리케이션(102)(즉, 'B')에서는 자신의 컨슈머 키를 제1 애플리케이션(101)(즉, 'A')으로 전송함으로써 제1 애플리케이션(101)을 매개로 하는 로그인을 요청한다.7 is a flowchart showing an application login processing procedure in the service server according to the third embodiment of the present invention. Referring to FIG. 7, the
상기 제1 애플리케이션(101)에서는 상기 제2 애플리케이션(102)으로부터 B의 컨슈머 키를 수신하고, 새로운 티켓을 생성한다.The
그런 다음, 상기 수신된 B의 컨슈머 키, 자신의 토큰(즉, A의 토큰) 및 시그니처(즉, A의 시그니처), 및 자신이 생성한 티켓을 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.Then, by transmitting the received B's consumer key, its own token (i.e., the token of A) and the signature (i.e., the signature of A), and the ticket generated by itself to the
서비스 서버(102)에서는 상기 제1 애플리케이션(101)으로부터 A의 토큰, A의 시그니처, B의 컨슈머 키, A가 생성한 티켓을 수신하고, 수신된 각 정보의 유효성을 확인한다. 즉, A의 토큰에 대한 유효성을 판단(S701)하고, 이상이 없을 경우, A의 시그니처의 유효성을 판단(S702)하며, 이상이 없을 경우, B의 컨슈머 키의 유효성을 판단(S703)한다. 한편, 상기 유효성 판단의 순서는 변경될 수 있으며, 동시에 수행될 수도 있다.The
상기 유효성 판단 결과 이상이 없을 경우, 상기 A의 토큰으로 현재 제1 애플리케이션(101)에서 로그인된 사용자의 정보(예컨대, 로그인 아이디 및 패스워드)를 확인(S704)한다.If there is no abnormality in the validity determination result, the information (e.g., login ID and password) of the user currently logged in in the
그런 다음, 상술한 바와 같이 본 발명의 제3 실시예에 따라 상기 A가 생성한 티켓을 상기 사용자 확인한 사용자 정보와 매핑하여 데이터베이스에 저장(S705)한다.Then, according to the third embodiment of the present invention, the ticket generated by the A is mapped to the user information confirmed by the user and stored in the database (S705).
이와 같이, 상기 티켓이 고유한 값으로서 데이터베이스에 정상적으로 저장이 완료될 경우, 상기 서비스 서버(120)는 상기 티켓 저장이 이상 없이 완료되었음을 사용자 단말(100)의 제1 애플리케이션으로 통보(S706)한다.When the ticket is normally stored in the database as a unique value, the
상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 티켓 저장이 이상 없이 완료되었음을 통보받고, 자신이 생성한 상기 티켓을 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)으로부터 수신된 티켓을 서비스 서버(120)로 전송함으로써 인증을 요청한다.The
서비스 서버(120)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 데이터베이스에 저장된 티켓과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득(S707)한다. 한편, 이때 본 발명의 실시예에 따라 상기 제2 애플리케이션(102)에서 상기 티켓을 서비스 서버(120)로 전송할 때, 자신의 컨슈머 키 및 시그니처를 함께 전송함으로써 제2 애플리케이션(102)에 대한 인증을 수행하는 절차를 추가할 수도 있다.The
그런 다음, 서비스 서버(120)에서는 상기 티켓의 유효성을 검사(S708)한 후, 이상이 없을 경우 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리(S709)한다.Then, the
그런 다음, 상기 서비스 서버(120)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성(S710)하고, 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.Then, the
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신하여 저장함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)과 서비스 서버(120)는 상기 생성된 B의 토큰 및 B의 비밀번호를 이용하여 로그인된 상태로 접속하게 된다.The
이렇게 함으로써, 사용자는 제2 애플리케이션(102)에서 별도의 로그인 및 패스워드 입력 절차 없이도 이미 로그인된 제1 애플리케이션(101)을 이용하여 서비스 서버(120)에 로그인할 수 있다.By doing so, the user can log in to the
제4 Fourth 실시예Example (B 생성 티켓 이용)(Using B generation ticket)
본 발명의 제4 실시예는 상술한 본 발명의 제3 실시예와 유사하며, 티켓을 제1 애플리케이션(101) 대신 제2 애플리케이션(102)에서 생성한다는 점에 차이가 있다.The fourth embodiment of the present invention is similar to the third embodiment of the present invention described above except that the ticket is generated in the
따라서, 도 6을 다시 참조하면, 본 발명의 제4 실시예에 따라 제2 애플리케이션(102)에서는 티켓을 생성하고, 제1 애플리케이션(101)으로 컨슈머 키와 상기 생성한 티켓을 함께 전송함으로써 로그인 요청을 한다. 상기 제1 애플리케이션(101)은 상기 제2 애플리케이션(102)으로부터 로그인 요청을 수신하고, 상기 제2 애플리케이션(102)으로부터 제공된 제2 애플리케이션(102)의 컨슈머 키 및 티켓에 자신의 토큰 및 시그니처를 포함하여 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.6, according to the fourth embodiment of the present invention, the
서비스 서버(120)의 요청 수신부(601)에서는 상기 사용자 단말(100)의 제1 애플리케이션(101)으로부터 제1 애플리케이션(101)의 토큰과 시그니처, 제2 애플리케이션(102)의 컨슈머 키 및 제2 애플리케이션(102)에서 생성한 티켓을 수신함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 수신한다.The
유효성 판단부(602)에서는 상기 요청 수신부(601)를 통해 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제1 애플리케이션(101)의 토큰 및 시그니처가 유효한지를 판단하며, 제2 애플리케이션(102)의 컨슈머 키가 유효한지를 판단한다.The
상기 유효성 판단부(602)의 판단 결과 모두 유효한 정보일 경우, 사용자 식별부(603)에서는 상기 제1 애플리케이션(101)의 토큰으로 사용자 정보 데이터베이스(621)에 저장된 로그인된 사용자의 정보를 확인한다. 그런 다음, 상술한 제1 및 제2 실시예에서와는 달리 상기 제2 애플리케이션(102)에서 발급하여 제1 애플리케이션(101)을 통해 전송된 티켓을 티켓 정보 데이터베이스(622)에 저장한다. 즉, 티켓 저장부(604)에서는 상기 수신된 티켓을 상기 사용자 식별부(603)에서 확인한 사용자 정보와 매핑하여 티켓 정보 데이터베이스(622)에 저장한다. 이와 같이, 상기 티켓이 고유한 값으로서 데이터베이스에 정상적으로 저장이 완료될 경우, 요청 결과 전송부(605)에서는 상기 티켓 저장이 이상 없이 완료되었음을 사용자 단말(100)의 제1 애플리케이션으로 통보한다.If all of the validity information is determined to be valid as a result of the
상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 티켓 저장이 이상 없이 완료되었음을 통보받고, 상기 통보 결과를 다시 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)으로부터 티켓 저장이 이상 없음을 통보받고, 자신이 생성한 티켓을 서비스 서버(120)로 전송함으로써 인증을 요청한다.The
서비스 서버(120)의 티켓 수신부(606)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 티켓 조회부(607)에서는 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 티켓 정보 데이터베이스(622)에 저장된 티켓(즉, 제1 애플리케이션(101)을 통해 수신된 티켓)과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득한다.The
티켓 판단부(608)에서는 상기 티켓의 유효성을 검사한 후, 이상이 없을 경우 로그인 처리부(609)를 통해 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리한다.After checking the validity of the ticket, the
토큰 생성부(610)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성하고, 토큰 전송부(611)를 통해 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.The
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)에서 생성한 토큰 및 토큰 비밀번호를 이용하여 서비스 서버(120)에 로그인된 상태로 접속할 수 있다.The login procedure for the
도 8은 본 발명의 제4 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다. 도 8을 참조하면, 먼저 제2 애플리케이션(102)(즉, 'B')에서는 새로운 티켓을 생성하고, 자신의 컨슈머 키를 상기 생성된 티켓과 함께 제1 애플리케이션(101)(즉, 'A')으로 전송함으로써 제1 애플리케이션(101)을 매개로 하는 로그인을 요청한다.8 is a flowchart showing an application login processing procedure in the service server according to the fourth embodiment of the present invention. Referring to FIG. 8, a second application 102 (i.e., 'B') first generates a new ticket and sends its own consumer key to the first application 101 (i.e., 'A' ), Thereby requesting a login via the
상기 제1 애플리케이션(101)에서는 상기 제2 애플리케이션(102)으로부터 B의 컨슈머 키 및 B가 생성한 티켓을 수신하고, 상기 수신된 B의 컨슈머 키 및 B가 생성한 티켓과 함께 자신의 토큰(즉, A의 토큰) 및 시그니처(즉, A의 시그니처)를 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.The
서비스 서버(102)에서는 상기 제1 애플리케이션(101)으로부터 A의 토큰, A의 시그니처, B의 컨슈머 키, B가 생성한 티켓을 수신하고, 수신된 각 정보의 유효성을 확인한다. 즉, A의 토큰에 대한 유효성을 판단(S801)하고, 이상이 없을 경우, A의 시그니처의 유효성을 판단(S802)하며, 이상이 없을 경우, B의 컨슈머 키의 유효성을 판단(S803)한다. 한편, 상기 유효성 판단의 순서는 변경될 수 있으며, 동시에 수행될 수도 있다.The
상기 유효성 판단 결과 이상이 없을 경우, 상기 A의 토큰으로 현재 제1 애플리케이션(101)에서 로그인된 사용자의 정보(예컨대, 로그인 아이디 및 패스워드)를 확인(S804)한다.If there is no abnormality as a result of the validity determination, the information (e.g., login ID and password) of the user who is currently logged in from the
그런 다음, 상술한 바와 같이 본 발명의 제3 실시예에 따라 상기 B가 생성한 티켓을 상기 사용자 확인한 사용자 정보와 매핑하여 데이터베이스에 저장(S805)한다.Then, according to the third embodiment of the present invention, the ticket generated by the B is mapped to the user information confirmed by the user and stored in the database (S805).
이와 같이, 상기 티켓이 고유한 값으로서 데이터베이스에 정상적으로 저장이 완료될 경우, 상기 서비스 서버(120)는 상기 티켓 저장이 이상 없이 완료되었음을 사용자 단말(100)의 제1 애플리케이션으로 통보(S806)한다.When the ticket is normally stored in the database as a unique value, the
상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 티켓 저장이 이상 없이 완료되었음을 통보받고, 상기 통보 결과를 다시 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)으로부터 자신이 생성한 티켓의 저장이 서비스 서버(120)에 이상 없이 완료되었음을 확인하고, 자신이 생성한 티켓을 서비스 서버(120)로 전송함으로써 인증을 요청한다.The
서비스 서버(120)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 데이터베이스에 저장된 티켓과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득(S807)한다. 한편, 이때 본 발명의 실시예에 따라 상기 제2 애플리케이션(102)에서 상기 티켓을 서비스 서버(120)로 전송할 때, 자신의 컨슈머 키 및 시그니처를 함께 전송함으로써 제2 애플리케이션(102)에 대한 인증을 수행하는 절차를 추가할 수도 있다.The
그런 다음, 서비스 서버(120)에서는 상기 티켓의 유효성을 검사(S808)한 후, 이상이 없을 경우 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리(S809)한다.Then, the
그런 다음, 상기 서비스 서버(120)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성(S810)하고, 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.Then, the
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신하여 저장함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)과 서비스 서버(120)는 상기 생성된 B의 토큰 및 B의 비밀번호를 이용하여 로그인된 상태로 접속하게 된다.The
이렇게 함으로써, 사용자는 제2 애플리케이션(102)에서 별도의 로그인 및 패스워드 입력 절차 없이도 이미 로그인된 제1 애플리케이션(101)을 이용하여 서비스 서버(120)에 로그인할 수 있다.By doing so, the user can log in to the
제5 Fifth 실시예Example (B 요청에 의한 서버 생성 티켓 이용)(Using server-generated ticket by B request)
도 9는 본 발명의 제5 실시예에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성을 나타내는 도면이다. 도 9를 참조하면, 본 발명의 제5 실시예에 따라 애플리케이션 로그인을 제공하는 서비스 서버(120)는 요청 수신부(901), 제1 유효성 판단부(902), 티켓 생성부(903), 티켓 저장부(904), 티켓 전송부(905), 토큰 수신부(906), 제2 유효성 판단부(907), 사용자 식별부(908), 사용자 정보 저장부(909), 결과 전송부(910), 티켓 수신부(911), 티켓 조회부(912), 티켓 판단부(913), 로그인 처리부(914), 토큰 생성부(915) 및 토큰 전송부(916) 등을 포함하여 구성될 수 있다.9 is a diagram showing a detailed configuration of a service server providing an application login by authentication sharing according to a fifth embodiment of the present invention. Referring to FIG. 9, a
상기 사용자 단말(100)에 설치된 제1 애플리케이션(101)은 이미 로그인된 애플리케이션이며, 제2 애플리케이션(102)은 로그인하고자 하는 애플리케이션이다. 따라서, 후술하는 본 발명의 제5 실시예에 따라 상기 제2 애플리케이션(102)은 상기 제1 애플리케이션(101)을 매개로 하여 서비스 서버(120)에 로그인할 수 있다.The
먼저, 제2 애플리케이션(102)에서 서비스 서버(120)로 컨슈머 키 및 시그니처를 전송함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 한다.First, a login request is made to the
상기 서비스 서버(120)의 요청 수신부(901)에서는 상기 사용자 단말(100)의 제2 애플리케이션(102)으로부터 로그인 요청을 수신하며, 제1 유효성 판단부(902)에서는 상기 요청 수신부(901)를 통해 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제2 애플리케이션(102)의 컨슈머 키 및 시그니처가 유효한지를 판단한다.The
상기 제2 유효성 판단부(902)의 판단 결과 모두 유효한 정보일 경우, 티켓 생성부(903)에서는 새로운 티켓을 생성하며, 티켓 저장부(904)에서는 상기 생성된 티켓을 티켓 정보 데이터베이스(921)에 저장한다. 그런 다음, 티켓 전송부(905)에서는 상기 생성한 티켓을 사용자 단말(100)의 제2 애플리케이션(102)으로 전송한다.If all of the validity information is valid, the
상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 수신된 티켓을 제1 애플리케이션(101)으로 전송함으로써 티켓에 대한 사용자 정보 매핑 절차를 수행한다.The
즉, 상기 제2 애플리케이션(102)으로부터 서비스 서버(120)에서 생성한 티켓을 수신한 제1 애플리케이션(101)은 상기 제2 애플리케이션(102)으로부터 제공된 티켓과 자신의 토큰(즉, A의 토큰) 및 시그니처(즉, A의 시그니처)를 포함하여 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.That is, the
서비스 서버(120)의 토큰 수신부(906)에서는 상기 사용자 단말(100)의 제1 애플리케이션(101)으로부터 제1 애플리케이션(101)의 토큰을 수신하고, 이와 함께 A의 시그니처 및 자신이 생성한 티켓을 수신함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 수신한다.The
제2 유효성 판단부(907)에서는 상기 토큰 수신부(906)를 통해 A의 토큰과 함께 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제1 애플리케이션(101)의 토큰 및 시그니처가 유효한지를 판단한다.The second validity determination unit 907 determines the validity of various information received together with the token A through the
상기 제2 유효성 판단부(907)의 판단 결과 모두 유효한 정보일 경우, 사용자 식별부(908)에서는 상기 제1 애플리케이션(101)의 토큰으로 사용자 정보 데이터베이스(922)에 저장된 로그인된 사용자의 정보를 확인한다. 그런 다음, 사용자 정보 저장부(909)에서는 상기 수신된 티켓(즉, 자신이 생성한 티켓)을 상기 사용자 식별부(908)에서 확인한 사용자 정보와 매핑하여 티켓 정보 데이터베이스(921)에 저장한다. 이와 같이, 상기 티켓이 고유한 값으로서 데이터베이스에 정상적으로 저장이 완료될 경우, 결과 전송부(910)에서는 상기 티켓 저장이 이상 없이 완료되었음을 사용자 단말(100)의 제1 애플리케이션으로 통보한다.If all of the determination result of the second validity determination unit 907 is valid, the
상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 티켓 저장이 이상 없이 완료되었음을 통보받고, 상기 통보 결과를 다시 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)으로부터 티켓 저장이 이상 없음을 통보받고, 상기 티켓(즉, 서비스 서버로부터 제공받은 티켓)을 다시 서비스 서버(120)로 전송함으로써 인증을 요청한다.The
서비스 서버(120)의 티켓 수신부(911)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 티켓 조회부(912)에서는 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 티켓 정보 데이터베이스(921)에 저장된 티켓(즉, 자신이 생성한 티켓)과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득한다.The ticket receiving unit 911 of the
티켓 판단부(913)에서는 상기 티켓의 유효성을 검사한 후, 이상이 없을 경우 로그인 처리부(914)를 통해 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리한다.After checking the validity of the ticket, the
토큰 생성부(915)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성하고, 토큰 전송부(916)를 통해 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.The
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)에서 생성한 토큰 및 토큰 비밀번호를 이용하여 서비스 서버(120)에 로그인된 상태로 접속할 수 있다.The login procedure for the
도 10은 본 발명의 제5 실시예에 따른 서비스 서버에서의 애플리케이션 로그인 처리 절차를 나타내는 흐름도이다. 도 10을 참조하면, 먼저, 제2 애플리케이션(102)에서 서비스 서버(120)로 컨슈머 키 및 시그니처를 전송함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 한다.10 is a flowchart showing an application login processing procedure in the service server according to the fifth embodiment of the present invention. Referring to FIG. 10, first, a login request is made to the
상기 서비스 서버(120)에서는 상기 사용자 단말(100)의 제2 애플리케이션(102)으로부터 B의 컨슈머 키 및 B의 시그니처를 수신하고, 상기 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제2 애플리케이션(102)의 컨슈머 키 및 시그니처가 유효한지를 판단(S1006)한다.The
상기 판단 결과 모두 유효한 정보일 경우, 서비스 서버(120)에서는 새로운 티켓을 생성(S1007)하며, 상기 생성된 티켓을 데이터베이스(921)에 저장한다. 그런 다음, 상기 생성한 티켓을 사용자 단말(100)의 제2 애플리케이션(102)으로 전송한다.If all of the determination results are valid, the
상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 수신된 티켓을 제1 애플리케이션(101)으로 전송함으로써 티켓에 대한 사용자 정보 매핑 절차를 수행한다.The
즉, 상기 제2 애플리케이션(102)으로부터 서비스 서버(120)에서 생성한 티켓을 수신한 제1 애플리케이션(101)은 상기 제2 애플리케이션(102)으로부터 제공된 티켓과 자신의 토큰(즉, A의 토큰) 및 시그니처(즉, A의 시그니처)를 포함하여 서비스 서버(120)로 전송함으로써 제2 애플리케이션(102)에 대한 로그인을 요청한다.That is, the
서비스 서버(120)에서는 상기 사용자 단말(100)의 제1 애플리케이션(101)으로부터 제1 애플리케이션(101)의 토큰을 수신하고, 이와 함께 A의 시그니처 및 자신이 생성한 티켓을 수신함으로써 제2 애플리케이션(102)에 대한 로그인 요청을 수신한다.The
그런 다음, 상기 서비스 서버(120)에서는 상기 A의 토큰과 함께 수신된 각종 정보들의 유효성을 판단한다. 예컨대, 상기 제1 애플리케이션(101)의 토큰 및 시그니처가 유효한지를 판단(S1001, S1002)한다.Then, the
상기 판단 결과 모두 유효한 정보일 경우, 상기 제1 애플리케이션(101)의 토큰으로 데이터베이스에 저장된 로그인된 사용자의 정보를 확인(S1003)한다. 그런 다음, 상기 수신된 티켓(즉, 자신이 생성한 티켓)을 상기 확인한 사용자 정보와 매핑하여 데이터베이스에 저장(S1004)한다. 이와 같이, 상기 티켓이 고유한 값으로서 데이터베이스에 정상적으로 저장이 완료될 경우(S1005), 상기 티켓 저장이 이상 없이 완료되었음을 사용자 단말(100)의 제1 애플리케이션으로 통보한다.If all of the above-mentioned judgments are valid information, the information of the logged-in user stored in the database is confirmed as a token of the first application 101 (S1003). Then, the received ticket (i.e., the ticket generated by itself) is mapped to the confirmed user information and stored in the database (S1004). When the ticket is normally stored in the database as a unique value (S1005), the first application of the
상기 사용자 단말(100)의 제1 애플리케이션(101)에서는 상기 서비스 서버(120)로부터 티켓 저장이 이상 없이 완료되었음을 통보받고, 상기 통보 결과를 다시 제2 애플리케이션(102)으로 제공한다. 제2 애플리케이션(102)에서는 상기 제1 애플리케이션(101)으로부터 티켓 저장이 이상 없음을 통보받고, 상기 티켓(즉, 서비스 서버로부터 제공받은 티켓)을 다시 서비스 서버(120)로 전송함으로써 인증을 요청한다.The
서비스 서버(120)에서는 상기 제2 애플리케이션(102)으로부터 티켓을 수신하고, 상기 제2 애플리케이션(102)으로부터 수신된 티켓을 데이터베이스에 저장된 티켓(즉, 자신이 생성한 티켓)과 비교하여 해당 티켓에 매핑되는 사용자 정보를 획득(S1008)한다.The
그런 다음, 서비스 서버(120)에서는 상기 티켓의 유효성을 검사한 후(S1009), 이상이 없을 경우 로그인 처리부(914)를 통해 상기 획득한 사용자 정보로 상기 제2 애플리케이션(102)을 로그인 처리(S1010)한다.Then, the
그런 다음, 서비스 서버(120)에서는 상기 로그인 처리한 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 생성(S1011)하고, 상기 생성된 토큰 및 토큰 비밀번호를 사용자 단말(100)로 전송한다.Then, the
사용자 단말(100)의 제2 애플리케이션(102)에서는 상기 서비스 서버(120)로부터 제2 애플리케이션(102)을 위한 토큰 및 토큰 비밀번호를 직접 수신함으로써 제2 애플리케이션(102)에 대한 로그인 절차가 완료된다. 따라서, 상기 제2 애플리케이션(102)에서는 상기 서비스 서버(120)에서 생성한 토큰 및 토큰 비밀번호를 이용하여 서비스 서버(120)에 로그인된 상태로 접속할 수 있다.The login procedure for the
이상으로, 도 2 내지 도 10을 참조하여 본 발명의 각 실시예들에 따른 인증 공유에 의한 애플리케이션 로그인을 제공하는 서비스 서버의 세부 구성 및 서비스 서버에서 수행되는 로그인 처리 절차를 설명하였다. 다음으로, 도 11 내지 도 16을 참조하여 본 발명이 실제 서비스에 적용된 실시예를 설명한다.The detailed configuration of the service server providing the application login by the authentication sharing according to each embodiment of the present invention and the login processing procedure performed in the service server have been described with reference to FIG. 2 through FIG. Next, an embodiment in which the present invention is applied to an actual service will be described with reference to FIGS. 11 to 16. FIG.
도 11 내지 도 16은 본 발명의 실시예에 따른 로그인된 애플리케이션을 통해 로그인을 제공하는 실제 구현 예를 나타내는 도면이다. 후술하는 실시예는 스마트폰 등에 설치되어 사용되는 네이버 애플리케이션을 예로 들어 설명한다. 예컨대, 로그인된 제1 애플리케이션은 네이버 애플리케이션이 되며, 상기 제1 애플리케이션을 매개로 하여 로그인을 수행할 제2 애플리케이션은 N 드라이브 등의 애플리케이션이 된다.11 through 16 are diagrams illustrating an actual implementation for providing a login through a logged-in application according to an embodiment of the present invention. The following embodiments will be described taking an example of a Naver application installed in a smart phone or the like. For example, the first application that is logged in becomes a Naver application, and the second application that performs login through the first application becomes an application such as an N drive.
도 11을 참조하면, 네이버 애플리케이션을 통해 간편 로그인 설정이 될 경우, 해당 로그인 설정된 아이디로 본 발명의 실시예에 따라 다른 애플리케이션의 인증이 수행될 수 있다. 예컨대, 네이버의 N 드라이브에서 간편 로그인을 선택하면, 별도의 아이디 및 패스워드 입력 절차 없이도 이미 로그인된 네이버 애플리케이션의 아이디(도 11에서는 'mjbelle84')로 자동 로그인 될 수 있다. 이때, 상술한 바와 같이 본 발명의 실시예에 따라 네이버 애플리케이션에서 개별 애플리케이션(예컨대, N 드라이브 애플리케이션)으로 식별된 사용자 정보가 복사되며, 사용자는 도시된 바와 같이 자동으로 전환되는 화면을 통해 로그인이 완료되었음을 확인할 수 있다.Referring to FIG. 11, when simple log-in is set through the Naver application, authentication of another application can be performed according to the embodiment of the present invention with the log-in ID set in the login. For example, if a simple log-in is selected at the N-drive of the neighbor, the log-in can be automatically logged into the ID of the already-registered Naver application ('mjbelle84' in FIG. 11) without a separate ID and password input procedure. At this time, according to the embodiment of the present invention, as described above, the user information identified as an individual application (for example, N drive application) in the Naver application is copied, and the user logs in through the screen .
도 12를 참조하면, 종래에는 개별 애플리케이션에 로그인하고자 할 때, 각 애플리케이션마다 아이디 및 패스워드를 입력하여 로그인하여야 했으나, 본 발명의 실시예에 따라 이미 로그인된 제1 애플리케이션과 연동하여 해당 로그인된 아이디로 간편하게 로그인될 수 있다.12, conventionally, when an individual application is to be logged in, it is necessary to log in by inputting an ID and a password for each application. However, according to the embodiment of the present invention, It can be easily logged in.
또한, 도 13을 참조하면, 사용자 단말(예컨대, 스마트폰)에 설치된 복수의 애플리케이션들 중에서 사용자가 특정 애플리케이션에 대한 바로 가기를 실행하거나 이미 로그인된 제1 애플리케이션(예컨대, 네이버 애플리케이션) 내에서 접근을 시도할 경우, 해당 제3자 파티 애플리케이션(즉, 제2 애플리케이션)의 메인 화면이 실행된다. 이때, 상기 제2 애플리케이션의 메인 화면에는 제1 애플리케이션의 아이디로 로그인할 수 있는 메뉴가 표시될 수 있으며, 상기 제1 애플리케이션을 통한 로그인을 선택할 경우, 본 발명의 실시예에 따라 도시된 바와 같이 별도의 아이디 및 패스워드 입력 없이 자동 로그인될 수 있다.13, when a user executes a shortcut to a specific application among a plurality of applications installed on a user terminal (e.g., a smart phone) or accesses a first application (e.g., a Naver application) If so, the main screen of the corresponding third party application (i.e., the second application) is executed. At this time, a menu for logging in with the first application's ID may be displayed on the main screen of the second application, and when the login through the first application is selected, as illustrated in the embodiment of the present invention, Can be automatically logged in without an ID and password input.
한편, 본 발명의 실시예에 따라 간편 로그인 계정이 등록되어 있을 경우에는 도 13에서와 같이 자동 로그인 절차를 진행하지만, 간편 로그인 계정이 등록되어 있지 않을 경우에는 도 14에 도시된 바와 같이 간편 로그인 계정 등록 절차를 진행하도록 구현할 수 있다.Meanwhile, when the simple login account is registered according to the embodiment of the present invention, the automatic login procedure is performed as shown in FIG. 13, but when the simple login account is not registered, as shown in FIG. 14, It can be implemented to proceed with the registration procedure.
도 15는 제1 애플리케이션이 설치되지 않은 상태에서 제2 애플리케이션의 로그인을 실행할 경우, 제1 애플리케이션의 설치 절차를 진행하는 예를 도시한다. 즉, 도 15에 도시된 바와 같이 제2 애플리케이션의 실행 시, 제1 애플리케이션이 설치되지 않은 상태일 경우, 각종 해당 애플리케이션 마켓을 통해 제1 애플리케이션의 설치가 진행된 후 다시 제2 애플리케이션의 로그인 절차가 본 발명의 실시예에 따라 진행될 수 있다.FIG. 15 shows an example of proceeding to the installation procedure of the first application when the login of the second application is executed without installing the first application. That is, when the second application is executed and the first application is not installed, as shown in FIG. 15, after the installation of the first application proceeds through various application markets, May proceed according to an embodiment of the invention.
도 16은 신규 이용자가 본 발명의 실시예에 따른 애플리케이션 자동 로그인을 이용하기 위해 최초 실행하는 절차를 예시한다. 도 16을 참조하면, 신규 이용자의 경우 제1 애플리케이션이 로그인된 상태에서 제2 애플리케이션을 실행하고, 제1 애플리케이션을 통한 로그인 서비스를 제공받고자 할 경우, 실명 확인 절차를 추가로 진행할 수 있으며, 애플리케이션에 따라 부모 동의 절차를 더 추가할 수 있다.Figure 16 illustrates a procedure for a new user to initially execute to utilize an application automatic login according to an embodiment of the present invention. Referring to FIG. 16, in the case of a new user, when a first application is logged in and a second application is executed and a login service through the first application is desired to be provided, You can then add more parental consent procedures.
여기에서 다양한 방법들에 관해 설명된 바와 같은 다양한 동작들 및 기능들은 특정 프로세싱 기능부 및/또는 그 안에 구현된 프로세싱 기능부, 및/또는 그 안의 다른 구성요소들과 같은 많은 유형의 기능부들 중 어느 것 내에서 수행될 수 있다. 예를 들면, 그러한 기능부들은 여기에 설명된 바와 같은 다양한 동작들 및 처리들, 또는 여기에 설명된 바와 같은 어느 다른 동작들 및 기능들, 등 또는 그 각 등가물들을 수행하는 것뿐만 아니라 여기에 설명된 바와 같은 그러한 정보들을 생성하고 그러한 동작들, 처리들 등을 수행할 수 있다.The various operations and functions as described herein with respect to the various methods may be performed by any of a number of types of functions, such as a particular processing function and / or a processing function implemented therein, and / ≪ / RTI > For example, such functions may be described herein, as well as performing various operations and processes as described herein, or any other operations and functions as described herein, etc., or the like, And may perform such operations, processes, and the like.
일부 실시예들에서, 그러한 기능부들(동일한 장치 또는 구별된 장치들상에서 구현될 수 있는)은 본 발명의 다양한 측면들에 따른 그러한 처리 및 동작들, 등, 및/또는 여기에 개시된 바와 같은 어느 다른 동작들 및 기능들, 및 그 각 등가물들을 수행할 수 있다. 일부 실시예들에서, 그러한 처리는 제1 장치에서의 제1 기능부, 및 제2 장치 내의 제2 기능부에 의해 함께 수행된다. 다른 실시예들에서, 그러한 프로세싱, 동작들 등은 하나의 특정 장치 내에서 처리부들에 의해 전적으로 수행된다. 심지어 다른 실시예들에서는, 그러한 프로세싱, 동작들이 하나의 단일 디바이스내에서 적어도 제1 기능부 및 제2 기능부를 사용하여 수행된다.In some embodiments, such functions (which may be implemented on the same device or on distinct devices) may be implemented in such a manner and in accordance with various aspects of the present invention, etc., and / Operations and functions, and their equivalents. In some embodiments, such processing is performed together by the first functional portion in the first device and the second functional portion in the second device. In other embodiments, such processing, operations, etc. are performed entirely by the processing units within one particular apparatus. Even in other embodiments, such processing and operations are performed using at least a first functional portion and a second functional portion within a single device.
또한 상술한 설명에서, 용어들 '시스템', '장치', '~부'는 단일 프로세싱 디바이스 또는 복수의 프로세싱 디바이스들일 수 있다. 그러한 프로세싱 디바이스는 마이크로 프로세서, 마이크로 컨트롤러, 디지털 신호 처리기, 마이크로 컴퓨터, 중앙 처리 유닛, 필드 프로그래머블 게이트 어레이, 프로그래머블 로직 디바이스, 스테이트 머신, 로직 회로, 아날로그 회로, 디지털 회로, 및/또는 상기 회로 및/또는 동작 지시들의 하드 코딩에 기반하여 신호들(아날로그 및/또는 디지털)을 조작하는 소정의 디바이스일 수 있다. 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛은 단일 메모리 디바이스, 복수의 메모리 디바이스들, 및/또는 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛의 내장된 회로일 수 있는 결합된 메모리 및/또는 집적된 메모리 엘리먼트를 가질 수 있다. 그러한, 메모리 디바이스는 읽기 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 휘발성 메모리, 비휘발성 메모리, 정적 메모리, 동적 메모리, 플래시 메모리, 캐시 메모리, 및/또는 디지털 정보를 저장하는 소정의 디바이스일 수 있다. 만약, 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛이 하나 이상의 프로세싱 디바이스를 포함한다면, 상기 프로세싱 디바이스들은 집중적으로 위치될 수 있거나(즉, 유선 및/또는 무선 버스 구조를 통해 함께 직접적으로 연결된), 분산되어 위치될 수 있음(예컨대, 근거리 통신망 및/또는 광역 네트워크를 통한 간접적인 연결을 통한 클라우드 컴퓨팅)을 주목하여야 한다. 만약, 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛이 정적 머신, 아날로그 회로, 디지털 회로, 및/또는 회로, 저장하는 메모리 및/또는 메모리 구성요소를 통해 하나 이상의 그 기능들을 구현한다면, 그 대응하는 동작 지시들은 상기 정적 머신, 아날로그 회로, 디지털 회로, 및/또는 논리 회로를 포함하는 회로의 내부에 내장되거나 외부에 있을 수 있음을 더 주목하여야 한다. 상기 메모리 엘리먼트는 저장할 수 있으며, 상기 프로세싱 모듈, 모듈, 프로세싱 회로, 및/또는 프로세싱 유닛은 상기 도면들 중 하나 이상에서 나타내는 단계들 및/또는 기능들 중 적어도 일부에 대응하는 하드 코딩된 및/또는 동작 지시들을 실행한다는 것을 여전히 더 주목하여야 한다. 그러한 메모리 디바이스 또는 메모리 엘리먼트는 제조의 부품 내에서 포함될 수 있다.Also, in the foregoing description, the terms " system, " " device, " and " section " may be a single processing device or a plurality of processing devices. Such a processing device may be a microprocessor, a microcontroller, a digital signal processor, a microcomputer, a central processing unit, a field programmable gate array, a programmable logic device, a state machine, a logic circuit, an analog circuit, a digital circuit, and / (Analog and / or digital) based on hard coding of operational instructions. The processing module, module, processing circuit, and / or processing unit may be implemented as a single memory device, a plurality of memory devices, and / or a combination of the processing modules, the processing circuitry, and / Lt; / RTI > memory and / or an integrated memory element. Such a memory device may be any device that stores read only memory (ROM), random access memory (RAM), volatile memory, non-volatile memory, static memory, dynamic memory, flash memory, cache memory, and / . If the processing module, the module, the processing circuit, and / or the processing unit include one or more processing devices, the processing devices may be centrally located (i.e., directly or indirectly via a wired and / Connected), distributed (e.g., cloud computing via an indirect connection over a local and / or wide area network). If the processing module, module, processing circuit, and / or processing unit implements one or more of those functions through a static machine, analog circuitry, digital circuitry, and / or circuitry, memory and / It should further be noted that the corresponding operating instructions may be internal or external to the circuit including the static machine, analog circuitry, digital circuitry, and / or logic circuitry. The memory element may be stored and the processing module, module, processing circuitry, and / or processing unit may be configured to store a hard-coded and / or hard-coded data item corresponding to at least a portion of the steps and / or functions depicted in one or more of the figures It should be further noted that it carries out operational instructions. Such a memory device or memory element may be included within the components of the manufacture.
본 발명은 특정 기능들 및 그의 관계들의 성능을 나타내는 방법 단계들의 목적을 가지고 위에서 설명되었다. 이러한 기능적 구성 요소들 및 방법 단계들의 경계들 및 순서는 설명의 편의를 위해 여기에서 임의로 정의되었다. 상기 특정 기능들 및 관계들이 적절히 수행되는 한 대안적인 경계들 및 순서들이 정의될 수 있다. 임의의 그러한 대안적인 경계들 및 순서들은 그러므로 상기 청구된 발명의 범위 및 사상 내에 있다. 추가로, 이러한 기능적 구성 요소들의 경계들은 설명의 편의를 위해 임의로 정의되었다. 어떠한 중요한 기능들이 적절히 수행되는 한 대안적인 경계들이 정의될 수 있다. 마찬가지로, 흐름도 블록들은 또한 어떠한 중요한 기능성을 나타내기 위해 여기에서 임의로 정의되었을 수 있다. 확장된 사용을 위해, 상기 흐름도 블록 경계들 및 순서는 정의되었을 수 있으며 여전히 어떠한 중요한 기능을 수행한다. 기능적 구성 요소들 및 흐름도 블록들 및 순서들 둘 다의 대안적인 정의들은 그러므로 청구된 본 발명의 범위 및 사상 내에 있다. 당업자는 또한 여기에서의 상기 기능적 구성 요소들 및 다른 도시된 블록들, 모듈들, 및 구성요소들이 도시된 바와 같이 또는 분리된 구성요소들, 반도체 집적 회로(ASIC)들, 적절한 소프트웨어를 실행하는 프로세서들 및 그와 유사한 또는 임의의 조합에 의해 구현될 수 있음을 인지할 것이다.The invention has been described above with the aim of method steps illustrating the performance of certain functions and their relationships. The boundaries and order of these functional components and method steps have been arbitrarily defined herein for convenience of description. Alternative boundaries and sequences may be defined as long as the specific functions and relationships are properly performed. Any such alternative boundaries and sequences are therefore within the scope and spirit of the claimed invention. In addition, the boundaries of these functional components have been arbitrarily defined for ease of illustration. Alternative boundaries can be defined as long as certain important functions are properly performed. Likewise, the flow diagram blocks may also be arbitrarily defined herein to represent any significant functionality. For extended use, the flowchart block boundaries and order may have been defined and still perform some important function. Alternative definitions of both functional components and flowchart blocks and sequences are therefore within the scope and spirit of the claimed invention. Those skilled in the art will also appreciate that the functional components and other illustrated blocks, modules, and components herein may be implemented as illustrated or as separate components, such as semiconductor integrated circuits (ASICs) And the like, or any combination thereof.
본 발명은 또한 하나 이상의 실시예들의 용어로, 적어도 부분적으로 설명되었을 수 있다. 본 발명의 실시예는 본 발명, 그 측면, 그 특징, 그 개념, 및/또는 그 예를 나타내기 위해 여기에서 사용된다. 본 발명을 구현하는 장치, 제조의 물건, 머신, 및/또는 프로세스의 물리적인 실시예는 여기에 설명된 하나 이상의 실시예들을 참조하여 설명된 하나 이상의 측면들, 특징들, 개념들, 예들 등을 포함할 수 있다. 더구나, 전체 도면에서, 실시예들은 상기 동일한 또는 상이한 참조 번호들을 사용할 수 있는 상기 동일하게 또는 유사하게 명명된 기능들, 단계들, 모듈들 등을 통합할 수 있으며, 그와 같이, 상기 기능들, 단계들, 모듈들 등은 상기 동일한 또는 유사한 기능들, 단계들, 모듈들 등 또는 다른 것들일 수 있다.The invention may also be described, at least in part, in the language of one or more embodiments. Embodiments of the invention are used herein to describe the invention, aspects thereof, features thereof, concepts thereof, and / or examples thereof. The physical embodiment of an apparatus, article of manufacture, machine, and / or process for implementing the invention may include one or more aspects, features, concepts, examples, etc., described with reference to one or more embodiments described herein . Moreover, in the entire drawings, embodiments may incorporate the same or similarly named functions, steps, modules, etc. that may use the same or different reference numerals, and so forth, Steps, modules, etc., may be the same or similar functions, steps, modules, etc., or the like.
한편, 용어 "~처리부"는 본 발명의 다양한 실시예들의 설명에서 사용된다. 모듈은 하나 이상의 출력 신호들을 생성하기 위해 하나 이상의 입력 신호들의 처리와 같은 하나 이상의 기능들을 수행하기 위해 하드웨어를 통해 구현되는 기능적 블록을 포함한다. 상기 기능적 블록을 구현하는 하드웨어는 소프트웨어 및/또는 펌웨어를 결합하여 직접 동작할 수 있다. 여기에서 사용된 바와 같이, 모듈은 자체적으로 모듈인 하나 이상의 서브-모듈들을 포함할 수 있다.In the meantime, the term " processing unit "is used in the description of various embodiments of the present invention. A module includes a functional block implemented via hardware to perform one or more functions, such as processing one or more input signals to produce one or more output signals. The hardware implementing the functional block may operate directly by combining software and / or firmware. As used herein, a module may include one or more sub-modules that are themselves modules.
본 발명의 여러가지 기능들 및 특정들의 특별한 조합들이 여기에 분명히 설명된 반면, 이러한 특징들 및 기능들의 다른 조합들이 마찬가지로 가능하다. 본 발명은 여기에 개시된 특정한 예들에 제한되지 않으며, 이러한 다른 조합들을 명백히 통합한다.While various combinations of features and specific combinations of features of the present invention are explicitly described herein, other combinations of these features and functions are likewise possible. The present invention is not limited to the specific examples disclosed herein, and explicitly incorporates these different combinations.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .
100 : 사용자 단말 101 : 제1 애플리케이션
102 : 제2 애플리케이션 110 : 통신 네트워크
120 : 서비스 서버 210 : 요청 수신부
220 : 유효성 판단부 230 : 사용자 식별부
240 : 로그인 처리부 250 : 토큰 생성부
260 : 토큰 전송부 270 : 사용자 정보 데이터베이스
401 : 요청 수신부 402 : 유효성 판단부
403 : 사용자 식별부 404 : 티켓 발급부
405 : 티켓 수신부 406 : 티켓 조회부
407 : 티켓 판단부 408 : 로그인 처리부
409 : 토큰 생성부 410 : 토큰 전송부
411 : 사용자 정보 데이터베이스 412 : 티켓 정보 데이터베이스
601 : 요청 수신부 602 : 유효성 판단부
603 : 사용자 식별부 604 : 타겟 저장부
605 : 요청 결과 전송부 606 : 타겟 수신부
607 : 타겟 조회부 608 : 타겟 판단부
609 : 로그인 처리부 610 : 토큰 생성부
611 : 토큰 전송부 901 : 요청 수신부
902 : 제1 유효성 판단부 903 : 티켓 생성부
904 : 티켓 저장부 905 : 티켓 전송부
906 : 토큰 수신부 907 : 제2 유효성 판단부
908 : 사용자 식별부 909 : 사용자 정보 저장부
910 : 결과 전송부 911 : 티켓 수신부
912 : 티켓 조회부 913 : 티켓 판단부
914 : 로그인 처리부 915 : 토큰 생성부
916 : 토큰 전송부 911 : 티켓 정보 데이터베이스
912 : 사용자 정보 데이터베이스100: user terminal 101: first application
102: second application 110: communication network
120: service server 210: request receiver
220: validity determination unit 230: user identification unit
240: Login processing unit 250: Token generating unit
260: Token transfer unit 270: User information database
401: request receiving unit 402: validity determining unit
403: User identification unit 404: Ticket issuing unit
405: Ticket receiving section 406: Ticket inquiring section
407: ticket determination unit 408:
409: Token generating unit 410: Token transmitting unit
411: user information database 412: ticket information database
601: request reception unit 602: validity determination unit
603: User identification unit 604:
605: Request result transmitting section 606:
607: target inquiry unit 608: target determination unit
609: Login processing unit 610: Token generating unit
611: Token transmitting unit 901: Request receiving unit
902: First validity determination unit 903: Ticket generation unit
904: Ticket storage unit 905: Ticket transfer unit
906: token receiving unit 907: second validity judging unit
908: User identification unit 909: User information storage unit
910: Result transmitting unit 911: Ticket receiving unit
912: Ticket inquiry unit 913:
914: Login processing unit 915: Token generating unit
916: Token transfer unit 911: Ticket information database
912: User information database
Claims (27)
상기 사용자 단말로부터 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처, 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 수신된 제1 애플리케이션의 토큰으로부터 식별된 사용자 정보로 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는 서비스 서버를 포함하고,
상기 서비스 서버는,
상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하여 상기 사용자 단말로 전송하는, 인증 공유에 의한 애플리케이션 로그인 시스템.
A user terminal in which a first application and a second application are installed, and a login process is performed on the first application; And
Receiving a token of the first application, a signature of the first application, a consumer key of the second application, and a signature of the second application from the user terminal, and storing the signature of the second application as user information identified from the token of the received first application And a service server for performing login processing for the second application,
The service server,
And generates a token and token secret of the second application in accordance with the login process for the second application, and transmits the token and token secret to the user terminal.
수신된 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처, 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처 중 어느 하나 이상의 유효성을 검사하고, 상기 유효성 검사 결과 유효한 정보일 경우 상기 로그인 처리를 수행하는, 인증 공유에 의한 애플리케이션 로그인 시스템.
The service providing system according to claim 1,
A validity of at least one of the received token of the first application, the signature of the first application, the consumer key of the second application, and the signature of the second application is checked, The application login system by authentication sharing.
상기 제1 애플리케이션에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션으로 제공하는, 인증 공유에 의한 애플리케이션 로그인 시스템.
The method of claim 1,
Receiving a token and token secret of the second application from the service server in the first application and providing the token and token secret of the received second application to the second application; .
상기 제2 애플리케이션으로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하는, 인증 공유에 의한 애플리케이션 로그인 시스템.
The method of claim 1,
And receives a signature of the second application and a consumer key of the second application from the second application.
상기 요청에 따라 상기 사용자 단말로부터 전송된 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션의 컨슈머 키에 대한 유효성을 판단하는 유효성 판단부;
상기 유효성 판단부의 판단 결과 유효한 정보일 경우, 상기 수신된 상기 제1 애플리케이션의 토큰으로부터 로그인된 사용자 정보를 식별하는 사용자 식별부; 및
상기 사용자 식별부에 의해 식별된 사용자 정보로 상기 제2 애플리케이션을 로그인 처리하는 로그인 처리부를 포함하고,
상기 서비스 서버는,
상기 로그인 처리부의 상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하는 토큰 생성부; 및
상기 생성된 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 사용자 단말로 전송하는 토큰 전송부를 더 포함하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
A request receiving unit for receiving a login request for a second application from a user terminal installed with a first application logged in to the service server;
A validity determiner for determining the validity of the token of the first application, the signature of the first application, and the consumer key of the second application transmitted from the user terminal according to the request;
A user identification unit for identifying the logged in user information from the received token of the first application when the validity information is valid; And
And a login processing unit for performing login processing of the second application with the user information identified by the user identification unit,
The service server,
A token generating unit for generating a token and a token secret of the second application in accordance with a login process of the second application of the login processing unit; And
And a token transmission unit for transmitting the token and the token secret of the generated second application to the user terminal.
상기 제1 애플리케이션에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션으로 제공하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
The method of claim 6,
An application login service by an authentication sharing service that receives a token and token secret of the second application from the service server in the first application and provides the token and token secret of the received second application to the second application, A service server for provisioning.
상기 제2 애플리케이션으로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 제1 애플리케이션에서 상기 서비스 서버로 상기 수신된 제2 애플리케이션의 시그니처를 더 전송하며,
상기 서비스 서버의 상기 유효성 판단부는, 상기 전송된 제2 애플리케이션의 시그니처의 유효성을 더 판단하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
7. The method of claim 6,
Receiving a signature of the second application and a consumer key of the second application from the second application and further transmitting a signature of the received second application from the first application to the service server,
Wherein the validity determination unit of the service server further determines validity of the signature of the transmitted second application.
상기 사용자 식별부의 사용자 정보 식별 이후, 티켓을 생성하여 데이터베이스에 저장하는 티켓 발급부;
상기 티켓 발급부에 의해 생성된 티켓이 사용자 단말의 상기 제1 애플리케이션으로 전송되고, 상기 사용자 단말의 상기 제2 애플리케이션을 통해 상기 전송된 티켓을 수신하는 티켓 수신부;
상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부; 및
상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부를 더 포함하며,
상기 로그인 처리부는, 상기 티켓 판단부의 판단 결과 유효한 티켓일 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
The system according to claim 6,
A ticket issuing unit for generating a ticket after storing the user information of the user identification unit and storing the ticket in a database;
A ticket receiver for transmitting the ticket generated by the ticket issuing unit to the first application of the user terminal and receiving the transmitted ticket through the second application of the user terminal;
A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database; And
And a ticket determiner for determining whether the received ticket is a valid ticket as a result of inquiry by the ticket inquiry unit,
Wherein the login processing unit performs a login process for the second application when the ticket is a valid ticket as a result of the determination by the ticket determination unit.
상기 서비스 서버로부터 수신된 티켓을 제2 애플리케이션으로 제공하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
11. The method of claim 10, wherein the first application of the user terminal comprises:
And provides the ticket received from the service server to the second application.
상기 사용자 식별부의 사용자 정보 식별 이후, 상기 사용자 단말로부터 수신된 상기 제1 애플리케이션에서 생성된 티켓을 데이터베이스에 저장하는 티켓 저장부;
상기 티켓 저장부에 의해 상기 티켓 저장이 이상 없이 완료되었음을 상기 사용자 단말의 제1 애플리케이션으로 통보하는 요청 결과 전송부;
상기 사용자 단말의 상기 제2 애플리케이션을 통해 상기 제1 애플리케이션에서 생성된 티켓을 수신하는 티켓 수신부;
상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부; 및
상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부를 더 포함하며,
상기 로그인 처리부는, 상기 티켓 판단부의 판단 결과 유효한 티켓일 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
The system according to claim 6,
A ticket storage unit for storing a ticket generated in the first application received from the user terminal in a database after identification of user information of the user identification unit;
A request result transmission unit for notifying the first application of the user terminal that the ticket storage has been completed by the ticket storage unit abnormally;
A ticket receiver for receiving a ticket generated in the first application through the second application of the user terminal;
A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database; And
And a ticket determiner for determining whether the received ticket is a valid ticket as a result of inquiry by the ticket inquiry unit,
Wherein the login processing unit performs a login process for the second application when the ticket is a valid ticket as a result of the determination by the ticket determination unit.
상기 서비스 서버로부터 상기 티켓 저장이 이상 없이 완료되었음을 통보받음에 따라 상기 생성한 티켓을 제2 애플리케이션으로 제공하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
13. The method of claim 12, wherein the first application of the user terminal comprises:
And provides the generated ticket to the second application upon being informed from the service server that the storing of the ticket is completed abnormally.
상기 사용자 식별부의 사용자 정보 식별 이후, 상기 사용자 단말로부터 수신된 상기 제2 애플리케이션에서 생성된 티켓을 데이터베이스에 저장하는 티켓 저장부;
상기 티켓 저장부에 의해 상기 티켓 저장이 이상 없이 완료되었음을 상기 사용자 단말의 제1 애플리케이션으로 통보하는 요청 결과 전송부;
상기 사용자 단말의 상기 제2 애플리케이션으로부터 상기 제2 애플리케이션에서 생성된 티켓을 수신하는 티켓 수신부;
상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부; 및
상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부를 더 포함하며,
상기 로그인 처리부는, 상기 티켓 판단부의 판단 결과 유효한 티켓일 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
The system according to claim 6,
A ticket storage unit for storing a ticket generated in the second application received from the user terminal in a database after the identification of user information of the user identification unit;
A request result transmission unit for notifying the first application of the user terminal that the ticket storage has been completed by the ticket storage unit abnormally;
A ticket receiver for receiving a ticket generated by the second application from the second application of the user terminal;
A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database; And
And a ticket determiner for determining whether the received ticket is a valid ticket as a result of inquiry by the ticket inquiry unit,
Wherein the login processing unit performs a login process for the second application when the ticket is a valid ticket as a result of the determination by the ticket determination unit.
상기 서비스 서버로부터 상기 티켓 저장이 이상 없이 완료되었음을 통보받음에 따라 상기 통보 결과를 상기 제2 애플리케이션으로 제공하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
15. The method of claim 14, wherein the first application of the user terminal comprises:
And provides the notification result to the second application upon being informed from the service server that the storing of the ticket is completed abnormally.
티켓을 생성하고, 상기 생성된 티켓을 상기 제1 애플리케이션으로 제공하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
15. The method of claim 14, wherein the second application of the user terminal comprises:
A service server for providing an application login service by an authentication sharing, which generates a ticket and provides the generated ticket to the first application.
상기 요청에 따라 상기 사용자 단말로부터 전송된 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처에 대한 유효성을 판단하는 제1 유효성 판단부;
상기 제1 유효성 판단부의 판단 결과 유효한 정보일 경우, 티켓을 생성하는 티켓 생성부;
상기 티켓 생성부에 의해 생성된 티켓을 데이터베이스에 저장하는 티켓 저장부;
상기 티켓 생성부에 의해 생성된 티켓을 상기 사용자 단말의 상기 제2 애플리케이션으로 전송하는 티켓 전송부;
상기 사용자 단말의 제1 애플리케이션으로부터 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션에서 수신된 티켓을 수신하는 토큰 수신부;
상기 토큰 수신부의 수신에 따라, 상기 제1 애플리케이션의 토큰 및 상기 제1 애플리케이션의 시그니처에 대한 유효성을 판단하는 제2 유효성 판단부;
상기 제2 유효성 판단부의 판단 결과 유효한 정보일 경우, 상기 수신된 상기 제1 애플리케이션의 토큰으로부터 로그인된 사용자 정보를 식별하는 사용자 식별부;
상기 수신된 티켓을 상기 사용자 식별부에서 확인한 사용자 정보와 매핑하여 데이터베이스에 저장하는 사용자 정보 저장부;
상기 티켓 저장이 이상 없이 완료되었음을 상기 사용자 단말의 제1 애플리케이션으로 통보하는 결과 전송부;
상기 사용자 단말의 상기 제2 애플리케이션으로부터 상기 티켓을 수신하는 티켓 수신부;
상기 티켓 수신부를 통해 수신된 티켓을 상기 데이터베이스에 저장된 티켓과 조회하는 티켓 조회부;
상기 티켓 조회부의 조회 결과 상기 수신된 티켓이 유효한 티켓인지를 판단하는 티켓 판단부 및
상기 티켓 판단부의 판단 결과 유효한 티켓일 경우 상기 제2 애플리케이션에 대한 로그인 처리를 수행하는 로그인 처리부를 포함하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
A request receiving unit for receiving a login request for a second application from a user terminal installed with a first application logged in to the service server;
A first validity determining unit for determining validity of a signature of the second application and a consumer key of the second application transmitted from the user terminal according to the request;
A ticket generating unit for generating a ticket when the first validity determining unit determines that the information is valid;
A ticket storage unit for storing a ticket generated by the ticket creation unit in a database;
A ticket transmitting unit for transmitting a ticket generated by the ticket creating unit to the second application of the user terminal;
A token receiver for receiving a token of the first application, a signature of the first application and a ticket received in the second application from a first application of the user terminal;
A second validity judging unit for judging validity of the token of the first application and the signature of the first application according to the reception of the token receiving unit;
A user identification unit for identifying the logged-in user information from the received token of the first application when the second validity information is valid;
A user information storage unit for mapping the received ticket to user information identified by the user identification unit and storing the same in a database;
A result transmitting unit for notifying the first application of the user terminal that the ticket storage is completed abnormally;
A ticket receiver for receiving the ticket from the second application of the user terminal;
A ticket inquiry unit for inquiring a ticket received through the ticket receiver with a ticket stored in the database;
A ticket determiner for determining whether the received ticket is a valid ticket as a result of the inquiry from the ticket inquiry unit;
And a login processing unit for performing login processing for the second application if the ticket is a valid ticket as a result of the determination by the ticket determination unit.
상기 로그인 처리부의 상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하는 토큰 생성부; 및
상기 생성된 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 사용자 단말로 전송하는 토큰 전송부를 더 포함하는, 인증 공유에 의한 애플리케이션 로그인 서비스 제공을 위한 서비스 서버.
18. The system according to claim 17,
A token generating unit for generating a token and a token secret of the second application in accordance with a login process of the second application of the login processing unit; And
And a token transmission unit for transmitting the token and the token secret of the generated second application to the user terminal.
요청 수신부에서, 상기 서비스 서버에 로그인 된 상태인 제1 애플리케이션이 설치된 사용자 단말로부터 제2 애플리케이션에 대한 로그인을 요청받는 단계;
유효성 판단부에서, 상기 요청에 따라 상기 사용자 단말로부터 전송된 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션의 컨슈머 키에 대한 유효성을 판단하는 단계;
사용자 식별부에서, 상기 유효성 판단부의 판단 결과 유효한 정보일 경우, 상기 수신된 상기 제1 애플리케이션의 토큰으로부터 로그인된 사용자 정보를 식별하는 단계; 및
로그인 처리부에서, 상기 사용자 식별부에 의해 식별된 사용자 정보로 상기 제2 애플리케이션을 로그인 처리하는 단계를 포함하고,
토큰 생성부에서, 상기 로그인 처리부의 상기 제2 애플리케이션에 대한 로그인 처리에 따라, 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 생성하는 단계; 및
토큰 전송부에서, 상기 생성된 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 사용자 단말로 전송하는 단계를 더 포함하는, 인증 공유에 의한 애플리케이션 로그인 방법.
An application login method by authentication sharing, wherein each step performed at a service server comprises:
Receiving a request for a login of a second application from a user terminal having a first application installed in the service server;
Judging validity of the token of the first application, the signature of the first application, and the consumer key of the second application transmitted from the user terminal according to the request;
Identifying the logged-in user information from the received token of the first application if the validity information is valid as a result of the validity determination unit, in the user identification unit; And
In the login processing unit, log-processing the second application with the user information identified by the user identification unit,
Generating a token and a token secret of the second application in accordance with a login process for the second application in the login processing unit; And
Further comprising, in the token transferring unit, transmitting the token and token secret of the generated second application to the user terminal.
상기 제1 애플리케이션에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션으로 제공하는, 인증 공유에 의한 애플리케이션 로그인 방법.
The system of claim 19,
Receiving an application token and token secret of the second application from the service server in the first application and providing the token and token secret of the received second application to the second application; .
상기 제2 애플리케이션으로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 제1 애플리케이션에서 상기 서비스 서버로 상기 수신된 제2 애플리케이션의 시그니처를 더 전송하며,
상기 서비스 서버의 상기 유효성 판단부는, 상기 전송된 제2 애플리케이션의 시그니처의 유효성을 더 판단하는, 인증 공유에 의한 애플리케이션 로그인 방법.
21. The system of claim 19,
Receiving a signature of the second application and a consumer key of the second application from the second application and further transmitting a signature of the received second application from the first application to the service server,
Wherein the validity determination unit of the service server further determines the validity of the signature of the transmitted second application.
A computer-readable recording medium having recorded therein a program for executing the method according to any one of claims 19 to 21.
상기 제1 애플리케이션을 실행하고 서비스 서버를 통해 사용자를 상기 제1 애플리케이션에 대해 로그인 처리하며, 상기 제2 애플리케이션으로부터 상기 제2 애플리케이션에 대한 로그인 요청 수신에 따라 상기 서비스 서버로 상기 제2 애플리케이션에 대한 로그인을 요청하고, 상기 서비스 서버로부터 상기 제2 애플리케이션을 위한 로그인 관련 정보를 수신하는 제1 애플리케이션 실행부; 및
상기 제2 애플리케이션을 실행하고, 상기 제1 애플리케이션 실행부로 상기 제2 애플리케이션에 대한 로그인을 요청하며, 상기 로그인 요청에 따라 상기 제1 애플리케이션 실행부로부터 상기 제2 애플리케이션을 위한 로그인 관련 정보를 수신하여 상기 사용자에 대해 로그인 처리하는 제2 애플리케이션 실행부를 포함하는, 사용자 단말.
In a user terminal in which a first application and a second application are installed,
Executing the first application and log-processing a user for the first application through a service server; receiving, from the second application, a login request for the second application to the service server in response to receiving a login request for the second application; A first application executing unit for receiving login related information for the second application from the service server; And
The first application executing unit requests the first application executing unit to log in the second application, receives login related information for the second application from the first application executing unit in response to the login request, And a second application executor for performing login processing for the user.
상기 서비스 서버로 상기 제1 애플리케이션의 토큰, 상기 제1 애플리케이션의 시그니처 및 상기 제2 애플리케이션의 컨슈머 키를 전송하여 상기 제2 애플리케이션에 대한 로그인을 요청하는, 사용자 단말.
The system according to claim 24,
And sends a token of the first application, a signature of the first application, and a consumer key of the second application to the service server to request login to the second application.
상기 제1 애플리케이션 실행부에서 상기 서비스 서버로부터 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 수신하고, 상기 수신된 상기 제2 애플리케이션의 토큰 및 토큰 비밀번호를 상기 제2 애플리케이션 실행부로 제공하는, 사용자 단말.
27. The user terminal of claim 24,
Wherein the first application executor receives the token and token secret of the second application from the service server and provides the token and token secret of the received second application to the second application executor.
상기 제2 애플리케이션 실행부로부터 상기 제2 애플리케이션의 컨슈머 키 및 상기 제2 애플리케이션의 시그니처를 수신하고, 상기 서비스 서버로 상기 수신된 제2 애플리케이션의 시그니처를 더 전송하는, 사용자 단말.The information processing apparatus according to claim 25,
Receives the second application's consumer key and the signature of the second application from the second application execution unit, and further sends the signature of the received second application to the service server.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120090441A KR101451870B1 (en) | 2012-08-20 | 2012-08-20 | System, method and computer readable recording medium for providing a log in of an application by communizing an authority |
JP2013150857A JP5658801B2 (en) | 2012-08-20 | 2013-07-19 | Application login system, method, and computer-readable recording medium using authentication sharing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120090441A KR101451870B1 (en) | 2012-08-20 | 2012-08-20 | System, method and computer readable recording medium for providing a log in of an application by communizing an authority |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140033534A KR20140033534A (en) | 2014-03-19 |
KR101451870B1 true KR101451870B1 (en) | 2014-10-16 |
Family
ID=50286658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120090441A KR101451870B1 (en) | 2012-08-20 | 2012-08-20 | System, method and computer readable recording medium for providing a log in of an application by communizing an authority |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5658801B2 (en) |
KR (1) | KR101451870B1 (en) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104113534B (en) * | 2014-07-02 | 2018-01-09 | 百度在线网络技术(北京)有限公司 | The login system and method for application APP |
JP6394326B2 (en) * | 2014-11-26 | 2018-09-26 | 日本電気株式会社 | Information processing apparatus, information processing system, information processing method, and computer program |
JP6554936B2 (en) * | 2015-06-25 | 2019-08-07 | 株式会社リコー | Information processing system, information processing device, terminal device, and program |
KR102642954B1 (en) * | 2016-05-09 | 2024-03-04 | 원투씨엠 주식회사 | Method for Providing Simple Member Registration by using Banking Application |
KR102652762B1 (en) * | 2016-06-13 | 2024-03-29 | 원투씨엠 주식회사 | Method for Providing Simple Registration by using Banking Application Linked by Page |
KR102652761B1 (en) * | 2016-06-13 | 2024-03-29 | 원투씨엠 주식회사 | Method for Providing Simple Registration by using Banking Application |
KR102521333B1 (en) * | 2016-11-09 | 2023-04-14 | 삼성전자주식회사 | Method for displaying user interface related to user authentication and electronic device for the same |
CN110324276B (en) * | 2018-03-28 | 2022-01-07 | 腾讯科技(深圳)有限公司 | Method, system, terminal and electronic device for logging in application |
KR102181600B1 (en) * | 2018-03-30 | 2020-11-23 | 주식회사 코인플러그 | Method for sso service through blockchain, and terminal and server using the same |
US10819518B2 (en) * | 2018-10-12 | 2020-10-27 | Mastercard International Incorporated | Systems and methods for advanced application security |
TWI725352B (en) * | 2018-11-05 | 2021-04-21 | 緯創資通股份有限公司 | Method for authentication and authorization and authentication server using the same |
KR20210017072A (en) * | 2019-08-06 | 2021-02-17 | 삼성전자주식회사 | Electronic device activating application via key account and system having the same |
JP2021196647A (en) | 2020-06-09 | 2021-12-27 | 富士フイルムビジネスイノベーション株式会社 | Information processing device and computer program |
US11582236B2 (en) | 2020-09-24 | 2023-02-14 | Toshiba Tec Kabushiki Kaisha | Image forming apparatus and controlling method |
KR102409774B1 (en) * | 2020-12-07 | 2022-06-22 | (주)드림시큐리티 | Apparatus and method for supporting video conference service based on access ticket |
KR20230115444A (en) * | 2022-01-27 | 2023-08-03 | 삼성전자주식회사 | Electronic device, method, and non-transitory computer readable storage medium for displaying visual object including integration information of multiple electronic tickets |
JP7247411B1 (en) * | 2022-09-29 | 2023-03-28 | Kddi株式会社 | Information processing device and information processing method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020011608A (en) * | 2000-08-03 | 2002-02-09 | 홍윤선 | Method and System for automatic member subscribing and logining on the Internet site |
KR20070098869A (en) * | 2004-12-21 | 2007-10-05 | 샌디스크 코포레이션 | Versatile content control with partitioning |
KR20110022030A (en) * | 2010-02-16 | 2011-03-04 | 김동환 | Program and method for present page auto log in |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003085141A (en) * | 2001-09-07 | 2003-03-20 | Fuji Electric Co Ltd | Single sign-on corresponding authenticating device, network system and program |
US7254831B2 (en) * | 2002-12-04 | 2007-08-07 | Microsoft Corporation | Sharing a sign-in among software applications having secured features |
AU2003303882A1 (en) * | 2003-02-03 | 2004-08-30 | Nokia Corporation | Architecture for encrypted application installation |
US7509497B2 (en) * | 2004-06-23 | 2009-03-24 | Microsoft Corporation | System and method for providing security to an application |
JP2009223452A (en) * | 2008-03-14 | 2009-10-01 | Hitachi Ltd | Authentication system, and authentication server device and user device and application server device |
JP5264548B2 (en) * | 2009-02-19 | 2013-08-14 | 株式会社エヌ・ティ・ティ・データ | Authentication system and authentication method |
JP5623234B2 (en) * | 2010-10-22 | 2014-11-12 | キヤノン株式会社 | Authority delegation system, authority delegation method, information processing apparatus, control method thereof, and program |
KR101448719B1 (en) * | 2012-08-16 | 2014-10-08 | 네이버 주식회사 | System, method and computer readable recording medium for providing a log in using one time password |
-
2012
- 2012-08-20 KR KR1020120090441A patent/KR101451870B1/en active IP Right Grant
-
2013
- 2013-07-19 JP JP2013150857A patent/JP5658801B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020011608A (en) * | 2000-08-03 | 2002-02-09 | 홍윤선 | Method and System for automatic member subscribing and logining on the Internet site |
KR20070098869A (en) * | 2004-12-21 | 2007-10-05 | 샌디스크 코포레이션 | Versatile content control with partitioning |
KR20110022030A (en) * | 2010-02-16 | 2011-03-04 | 김동환 | Program and method for present page auto log in |
Also Published As
Publication number | Publication date |
---|---|
JP5658801B2 (en) | 2015-01-28 |
JP2014038608A (en) | 2014-02-27 |
KR20140033534A (en) | 2014-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101451870B1 (en) | System, method and computer readable recording medium for providing a log in of an application by communizing an authority | |
EP3607720B1 (en) | Password state machine for accessing protected resources | |
US10754941B2 (en) | User device security manager | |
KR101671351B1 (en) | Privacy enhanced key management for a web service provider using a converged security engine | |
US10135805B2 (en) | Connected authentication device using mobile single sign on credentials | |
US8838976B2 (en) | Web content access using a client device identifier | |
US20160226872A1 (en) | System and method for verifying status of an authentication device | |
WO2018228199A1 (en) | Authorization method and related device | |
US11968217B2 (en) | Domain name and URL visual verification for increased security | |
US10127317B2 (en) | Private cloud API | |
US20150113618A1 (en) | Verifying the security of a remote server | |
US11627129B2 (en) | Method and system for contextual access control | |
KR20170121242A (en) | Identity authentication methods, devices and systems | |
JP2018503911A (en) | Secure data management technology | |
RU2628483C2 (en) | Method and device for access control | |
JP2020077353A (en) | Authentication and approval method and authentication server | |
US20150067772A1 (en) | Apparatus, method and computer-readable storage medium for providing notification of login from new device | |
JP2017054420A (en) | Providing device, terminal device, providing method, providing program and authentication processing system | |
US9906516B2 (en) | Security system for preventing further access to a service after initial access to the service has been permitted | |
KR101479903B1 (en) | Access authentification for multiple devices and flatforms | |
KR102071281B1 (en) | Method for intergraged authentication thereof | |
US11921829B2 (en) | Communication apparatus, control method therefor, and storage medium | |
US10805302B2 (en) | Systems and methods to secure platform application services between platform client applications and platform services | |
US10812981B1 (en) | Systems and methods for certifying geolocation coordinates of computing devices | |
JP6077077B1 (en) | Authentication apparatus, authentication method, and authentication program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20181008 Year of fee payment: 5 |