KR100954449B1 - System and method for authentication process of java client agent by applet and Remote Method Invocation - Google Patents
System and method for authentication process of java client agent by applet and Remote Method Invocation Download PDFInfo
- Publication number
- KR100954449B1 KR100954449B1 KR1020080028192A KR20080028192A KR100954449B1 KR 100954449 B1 KR100954449 B1 KR 100954449B1 KR 1020080028192 A KR1020080028192 A KR 1020080028192A KR 20080028192 A KR20080028192 A KR 20080028192A KR 100954449 B1 KR100954449 B1 KR 100954449B1
- Authority
- KR
- South Korea
- Prior art keywords
- agent
- client
- authentication
- server
- sso
- Prior art date
Links
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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
본 발명은 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템 및 그 방법을 제공하기 위한 것으로, 서비스제공 서버(20)에 제출한 인증요청 정보를 인증처리 서버(30)에서 인증처리하여 인증결과를 전송받고, 에이전트 다운로드 서버(50)로부터 다운되어 설치되는 브릿지 SSO 에이전트(12)를 통하여 통신하는 클라이언트(10)와; 상기 클라이언트(10)가 서비스를 제공받기 위하여 웹브라우저를 통하여 접속하는 서비스제공 서버(20)와; 상기 서비스제공 서버(20)에서 인증요청을 하면 인증/권한 정보 DB(40)에서 사용자 정보와 접근권한 정보를 확인하여 상기 서비스제공 서버(20)로 인증토큰을 발행시키는 인증처리 서버(30)와; 상기 서비스제공 서버(20)로부터 인증토큰을 전송위해, 상기 클라이언트(10)에 설치될 브릿지 SSO 에이전트(12)를 배포하는 에이전트 다운로드 서버(50);를 포함하여 구성함으로서, 운영체제 및 웹브라우저에 종속적인 기술을 배제하도록 자바로 구동되는 애플릿과 클라이언트 에이전트를 구현하고 자바가 설치된 어떠한 사용자 PC에서도 인증처리를 비롯한 동일한 서비스를 제공할 수 있게 되는 것이다.The present invention is to provide a Java client agent authentication processing system and method using an applet and RMI, the authentication request information submitted to the service providing server 20 by the authentication processing server 30 to authenticate the authentication result A client 10 which receives and communicates with the bridge SSO agent 12 which is downloaded and installed from the agent download server 50; A service providing server 20 which the client 10 accesses through a web browser to receive a service; When the authentication request is made at the service providing server 20, the authentication / authorization information DB 40 checks the user information and the access authority information and issues an authentication processing server 30 for issuing an authentication token to the service providing server 20; ; In order to transmit the authentication token from the service providing server 20, the agent download server 50 for distributing the bridge SSO agent 12 to be installed in the client 10; and comprising, depending on the operating system and the web browser In order to eliminate the technology, it is possible to implement Java-powered applets and client agents, and to provide the same services including authentication processing on any user PC with Java installed.
애플릿, RMI, 자바, 에이전트, 인증처리 Applet, RMI, Java, Agent, Authentication
Description
본 발명은 웹브라우저에서의 인증처리에 관한 것으로, 특히 자바 애플릿과 자바 RMI 통신기술을 이용하여 브릿지 SSO 에이전트와 인증처리 서버를 통하여 통합단일인증처리를 수행함으로써, 운영체제(Operating System, O/S) 및 웹브라우저에 종속적인 기술을 배제하도록 자바(JAVA)로 구동되는 애플릿(Applet)과 클라이언트 에이전트(Client Agent)를 구현하고 자바(JAVA)가 설치된 어떠한 사용자 PC에서도 인증처리를 비롯한 동일한 서비스를 제공하기에 적당하도록 한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템 및 그 방법에 관한 것이다.The present invention relates to authentication processing in a web browser, and in particular, by performing integrated single authentication processing through a bridge SSO agent and an authentication processing server using a Java applet and Java RMI communication technology, an operating system (O / S). And implement applets and client agents powered by JAVA to exclude technologies that depend on web browsers, and provide the same services including authentication processing on any user PC installed with JAVA. The present invention relates to a Java client agent authentication processing system using applet and RMI, and a method thereof.
일반적으로 웹브라우저와 사용자 PC 상에서 구동되는 특정 프로세스와의 통신은 현재 마이크로소프트(Microsoft) 사의 인터넷 익스플로러(Internet Explorer, IE)가 C 언어로 짜여진 클라이언트 프로세스와 ActiveX Control 기술을 이용하여 적용하고 있다.In general, communication between a web browser and a specific process running on a user's PC is currently applied by Microsoft's Internet Explorer (IE) using a client process written in C language and ActiveX control technology.
여기서 액티브엑스(ActiveX)는 일반 응용프로그램과 웹을 연결시키기 위해 제공되는 기술을 말한다. 이러한 ActiveX는 미국의 마이크로소프트 사가 개발한 것으로, 윈도우95와 윈도우NT에서 비주얼C++, 비주얼베이식, 자바와 같은 개발도구와 표준 프로그래밍 언어를 이용해서 만든 다양한 일반 응용프로그램들과 웹사이트를 연결시켜 준다. 다양한 개발툴을 이용함으로써 인터랙티브한 웹서비스를 제공할 수 있다. 이와 관계된 기술로는 액티브X 컨트롤, 액티브X 도큐먼트, 액티브 스크립팅, 액티브X 서버 프레임워크 등이 있다.Here, ActiveX refers to a technology provided to connect general applications with the web. This ActiveX, developed by Microsoft Corporation in the United States, connects Web sites and various common applications created using standard programming languages and development tools such as Visual C ++, Visual Basic and Java on Windows 95 and Windows NT. By using various development tools, you can provide interactive web services. Related technologies include ActiveX Controls, ActiveX Documents, Active Scripting, and the ActiveX Server Framework.
이 가운데 액티브X 컨트롤은 자바 애플릿 크기의 웹페이지에 내장된 것으로, 1000개 이상이 개발되어 있으며 다양한 언어와 개발툴로 작성할 수 있다. 액티브X 도큐먼트는 HTML(HyperText Markup Language, 하이퍼 텍스트 표기 언어)과는 무관하게 작성된 것으로, MS워드나 엑셀 파일 등을 의미한다. 액티브 스크립팅은 액티브X 컨트롤이나 자바 애플릿에 포함시킬 수 있는 스크립트 언어로, J스크립트나 VB스크립트가 대표적이다.Among them, ActiveX controls are embedded in Java applet-sized web pages. More than 1000 are developed and written in various languages and development tools. ActiveX documents are written independently of HTML (HyperText Markup Language), meaning MS Word or Excel files. Active scripting is a scripting language that can be included in ActiveX controls or Java applets, such as JScript or VBScript.
그러나 이러한 종래의 ActiveX Control 기술은 사용자 PC의 운영체제가 윈도우(Windows) 운영체제일 것을 강요하고, 또한 웹브라우저도 IE(인터넷 익스플로러)일 것을 강요하는 문제점이 있었다.However, the conventional ActiveX Control technology has a problem that the operating system of the user PC is forced to be a Windows (Windows) operating system, and also the Web browser is also IE (Internet Explorer).
또한 Vista O/S의 출시로 인하여 ActiveX Control을 통한 사용자 PC로의 어플리케이션 설치의 제한 등으로 인한 사용자 편의성 저해 등의 문제가 발생하고 있다.In addition, due to the release of Vista O / S, there is a problem of hampering user convenience due to restriction of application installation to user's PC through ActiveX control.
이에 본 발명은 상기와 같은 종래의 제반 문제점을 해결하기 위해 제안된 것으로, 본 발명의 목적은 자바 애플릿과 자바 RMI 통신기술을 이용하여 브릿지 SSO 에이전트와 인증처리 서버를 통하여 통합단일인증처리를 수행함으로써, 운영체제 및 웹브라우저에 종속적인 기술을 배제하도록 자바로 구동되는 애플릿과 클라이언트 에이전트를 구현하고 자바가 설치된 어떠한 사용자 PC에서도 인증처리를 비롯한 동일한 서비스를 제공할 수 있는 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템 및 그 방법을 제공하는데 있다.Accordingly, the present invention has been proposed to solve the above conventional problems, and an object of the present invention is to perform an integrated single authentication process through a bridge SSO agent and an authentication processing server using a Java applet and Java RMI communication technology. Of Java client agent using RMI and applet that can implement Java-based applet and client agent to exclude technology that is dependent on operating system and web browser, and can provide the same service including authentication processing on any user PC with Java installed. An authentication processing system and method thereof are provided.
도 1은 본 발명의 일 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템의 개념도이고, 도 2는 도 1의 상세블록도이고, 도 3은 도 2에서 클라이언트와 인증처리 서버 및 인증연계 서버의 소프트웨어 아키텍처를 보인 개념도이다.1 is a conceptual diagram of an authentication processing system of a Java client agent using an applet and an RMI according to an embodiment of the present invention, FIG. 2 is a detailed block diagram of FIG. 1, FIG. 3 is a client and an authentication processing server of FIG. This is a conceptual diagram showing the software architecture of the authentication association server.
이에 도시된 바와 같이, 서비스제공 서버(20)에 제출한 인증요청 정보(예를 들면, ID/Password, 공인인증정보, 지문인식정보, 홍체인식정보 등)를 인증처리 서버(30)에서 인증처리하여 인증결과를 전송받고, 에이전트 다운로드 서버(50)로부터 다운되어 설치되는 브릿지 SSO 에이전트(12)를 통하여 통신하는 클라이언트(10)와; 상기 클라이언트(10)가 서비스를 제공받기 위하여 웹브라우저를 통하여 접속하는 서비스제공 서버(20)와; 상기 서비스제공 서버(20)에서 인증요청을 하면 인증/권한 정보 DB(40)에서 사용자 정보와 접근권한 정보를 확인하여 상기 서비스제공 서버(20)로 인증토큰을 발행시키는 인증처리 서버(30)와; 상기 서비스제공 서버(20)로부터 인증토큰을 전송위해, 상기 클라이언트(10)에 설치될 브릿지 SSO 에이전트(12)를 배포하는 에이전트 다운로드 서버(50);를 포함하여 구성된 것을 특징으로 한다.As shown therein, the authentication request information (for example, ID / Password, authorized authentication information, fingerprint recognition information, iris recognition information, etc.) submitted to the
상기 클라이언트(10)는, 자바 스크립트(Java Script)와 SSO 애플릿(Single Sign-On Applet)을 이용하여 동작되는 웹브라우저(11)와; 상기 웹브라우저(11)의 SSO 애플릿과 자바 RMI(Remote Method Invocation, 원격 메쏘드 호출) 통신을 수행하여 해당 사용자가 이미 인증처리가 되어 있는 여부를 확인하는 브릿지 SSO 에이전트(Bridge SSO Agent)(12)와; 상기 클라이언트(10)에서 동작되는 JRE(Java Runtime Environment, 자바 실행 환경)(13)와; 상기 클라이언트(10)를 동작시키는 운영체제(14);를 포함하여 구성된 것을 특징으로 한다.The
상기 클라이언트(10)를 동작시키는 상기 운영체제(14)는, Windows, Linux, Mac 중에서 하나 이상인 것을 특징으로 한다.The
상기 서비스제공 서버(20)는, 특정 웹서버로 서비스를 제공하며 클라이언트(10)가 웹브라우저(11)를 통해서 접속하여 인증요청 정보를 제출하면 이를 인증처리 서버(30)에서 인증처리하고 그 결과로 인증토큰을 전송받는 것을 특징으로 한다.The
상기 서비스제공 서버(20)는, 해당하는 상기 서비스제공 서버(20)가 NET, ASP, PHP, JSP 중에서 하나 이상의 웹프로그램언어로 이루어져 있는 경우 그에 맞는 서버 스크립트로 작성된 서버측 로직 파일로 구성되며, 상기 클라이언트(10)로부터 받은 인증요청을 확인하여 이미 인증이 되어 있다면 서비스 페이지(22)를 실행하여 서비스를 실시하고, 인증받지 못한 경우에는 상기 클라이언트(10)에서 제출한 인증요청 정보를 상기 인증처리 서버(30)로 전달하는 서버 에이전트(SVR Agent)(21)와; 상기 클라이언트(10)에서 상기 서비스제공 서버(20)에 접속하면 서비스 페이지를 제공하고, 상기 서버 에이전트(21)를 호출한 다음 상기 클라이언트(10)에 JRE 1.6 이상이 설치되어 있는지 또는 SSO_Applet.jar가 설치되어 있는지 또는 SSO_Agent.jar가 설치되어 있는지 판별하며, 상기 서버 에이전트(21)로부터 인증토큰과 사용자 권한 정보를 전달받는 서비스 페이지(Service Page)(22);를 포함하여 구성된 것을 특징으로 한다.The
상기 인증처리 서버(30)는, 상기 서비스제공 서버(20)에서 암호화된 인증요청 정보를 요청하면 이의 유효성/정당성을 확인하는 인증 서블릿(Cert Servlet)(31)과; 상기 인증 서블릿(31)으로부터 넘어온 인증요청 정보를 상기 인증/권한 정보 DB(40)에 있는 사용자 정보와 유효성 및 정당성을 비교처리하는 인증 DB 래퍼(Cert DB Wrapper)(32)와; 상기 인증처리 서버(30)에서 웹프로젝트를 구축하기 위한 자바 프레임워크(Java Framework)인 GWAF(Genics Web Application Framework)(33)와; 상기 인증처리 서버(30)에서 자바 기반의 웹서비스를 구동하는 미들웨어인 WAS(Web Application Server)(34)와; 상기 인증처리 서버(30)에서 동작 되는 JRE(35)와; 상기 인증처리 서버(30)를 동작시키는 운영체제(36);를 포함하여 구성된 것을 특징으로 한다.The
상기 에이전트 다운로드 서버(50)는, 상기 클라이언트(10)에서 구동되는 클라이언트 에이전트로 배포되는 SSO 에이전트 파일인 SSO_Agent.jar 파일과; 상기 클라이언트(10)에 저장되어 상기 클라이언트(10)의 로컬에서 실행되는 SSO 애플릿 파일인 SSO_Applet.jar 파일과; JRE의 인스톨용 파일인 Install_jre.cab 파일과; XML(eXtensible Markup Language)로 구성된 JNLP(Java Network Launching Protocol) 파일로서 상기 클라이언트(10)의 자바 웹스타트(Java Web Start)를 통해 SSO_Agent 를 구동하는 파일인 sso_agent.jnlp 파일과; 애플릿에 정의된 함수를 웹브라우저에서 호출하는 자바스크립트(JavaScript) 함수를 포함한 파일인 Manager.js 파일과; 애플릿의 다운로드 및 구동과 관련된 로직이 들어있는 자바스크립트(JavaScript) 파일인 Applet.js 파일;을 포함하여 구성된 것을 특징으로 한다.The
도 4는 본 발명의 일 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법을 보인 개념도이다.4 is a conceptual diagram illustrating an authentication processing method of a Java client agent using an applet and an RMI according to an embodiment of the present invention.
이에 도시된 바와 같이, 클라이언트(10)에서 서비스제공 서버(20)의 서비스 페이지(22)를 웹브라우저(11)로 열면, 해당 사이트에 포함(include)되어 있는 서버 에이전트(21)를 호출하고, 클라이언트(10)에 필요한 어플리케이션(Application)이 설치되어 있는지 판별하는 단계(ST11, ST12)와; 필요한 어플리케이션이 설치되어 있지 않다면 인증연계 서버(50)로부터 이를 다운로드 요청하고, 요청한 어플리케이 션을 클라이언트(10)에 다운로드하여 설치하는 단계(ST13, ST14)와; 상기 클라이언트(10)의 웹브라우저(11)는 applet.js 파일과 manager.js 파일에 있는 스크립트 함수(function)를 호출하고, 자바스크립트 함수(JavaScript function)는 SSO 애플릿(SSO Applet)에 구현되어 있는 Java API(Application Programming Interface)를 호출하며, SSO 애플릿(SSO Applet)의 Java API 는 브릿지 SSO 에이전트(Bridge SSO Agent)(12)와 Java RMI 통신을 수행하여 상기 클라이언트(10)의 해당 사용자가 이미 인증처리가 되어 있는지 여부를 확인하는 단계(ST15 ~ ST17)와; 상기 브릿지 SSO 에이전트(Bridge SSO Agent)는 요청 결과를 SSO 애플릿(SSO Applet)에 전달하고, 웹브라우저(11)는 자바스크립트(JavaScript)를 통해서 SSO 애플릿(SSO Applet)으로부터 인증토큰값을 전달받는 단계(ST18, ST19)와; 상기 서비스제공 서버(20)의 서버 에이전트(Server Agent)(21)는 웹브라우저(11)로부터 받은 인증 여부를 확인하여, 이미 인증이 되어 있다면 서비스 페이지(22)를 이용하여 서비스를 실시하도록 하고, 인증받지 못한 경우에는 상기 클라이언트(10)의 사용자가 제출한 인증요청 정보를 검증받기 위해 인증처리 서버(30)의 인증 서블릿(Cert Servlet)(31)으로 그 값을 넘기는 단계(ST20, ST21)와; 상기 인증 서블릿(Cert Servlet)(31)은 인증 DB 래퍼(Cert DB Wrapper)(32)의 클래스에 인증요청 정보를 제출하고, 상기 인증 DB 래퍼(Cert DB Wrapper)(32)는 인증/권한 정보 DB(40)에서 인증요청 정보의 유효성(Validation)을 비교하여 확인하고, 확인된 인증요청 정보를 상기 인증 서블릿(Cert Servlet)(31)에 전달하는 단계(ST22 ~ ST25)와; 상기 서버 에이전트(21)는 인증여부와 해당 권한 정보들을 상기 인증 서블릿(31)으로부터 전달받아 브릿지 SSO 에이전트(Bridge SSO Agent)(12)에 인증토큰과 사용자 권한 정보를 세팅하고 본래의 해당 서비스 페이지(22)로 포워드(Forward)하는 단계(ST26, ST27);를 포함하여 수행하는 것을 특징으로 한다.As shown in the drawing, when the
상기 필요한 어플리케이션이 설치되어 있는지 판별하는 단계(ST11, ST12)는, JRE 1.6 이상이 설치되어 있는지 또는 SSO_Applet.jar 가 설치되어 있는지 또는 SSO_Agent.jar 가 설치되어 있는지 판별하는 것을 특징으로 한다.The step of determining whether the required application is installed (ST11, ST12), characterized in that it is determined whether JRE 1.6 or more is installed, SSO_Applet.jar or SSO_Agent.jar is installed.
도 5는 본 발명의 다른 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법의 흐름도이다.5 is a flowchart illustrating an authentication processing method of a Java client agent using an applet and RMI according to another embodiment of the present invention.
이에 도시된 바와 같이, 클라이언트(10)에서 서비스 요청을 받으면, 서비스제공 서버(20)는 에이전트가 설치되어 있는지 판별하고, 에이전트가 상기 클라이언트(10)에 설치되어 있지 않으면 인증처리 서버(30)로 설치요청하고, 에이전트가 설치되어 있으면 서비스를 이용하도록 하는 단계(ST31, ST32)와; 상기 인증처리 서버(30)는 상기 서비스제공 서버(20)에서 받은 설치요청에 따라 에이전트 다운로드 서버(50)로 에이전트 다운로드 요청을 수행하여 상기 클라이언트(10)에 브릿지 SSO 에이전트(12)와 SSO 애플릿이 설치되도록 하는 단계(ST33, ST34)와; 상기 서비스 제공 서버(20)는 상기 클라이언트(10)로부터 로그인 요청을 받으면 인증결과를 상기 인증처리 서버(30)로 전송하는 단계(ST35, ST36)와; 상기 서비스제공 서버(20)는 인증처리 서버(30)에서 생성된 토큰(Token)을 제공받고, 상기 클라이언트(10)의 브릿지 SSO 에이전트(12)에 토큰을 저장하고 세션을 생성시키는 단계(ST37, ST38)와; 상기 클라이언트(10)는 세션이 올바르면 상기 서비스제공 서버(20)에서 제공하 는 서비스를 이용하고, 세션이 올바르지 않으면 다시 로그인 요청을 수행하도록 하는 단계(ST39);를 포함하여 수행하는 것을 특징으로 한다.As shown therein, upon receiving the service request from the
도 6은 본 발명의 다른 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법을 보인 플로우차트이다.6 is a flowchart illustrating a method of authenticating a Java client agent using an applet and an RMI according to another embodiment of the present invention.
이에 도시된 바와 같이, 클라이언트(10)의 웹브라우저(11)는 에이전트 다운로드 서버(50)로부터 브릿지 SSO 에이전트(12)와 SSO 애플릿을 다운로드 받아 설치하는 단계(ST41, ST42)와; 상기 클라이언트(10)에 설치된 상기 브릿지 SSO 에이전트(12)가 구동되면 상기 클라이언트(10)의 웹브라우저(11)의 작업표시줄에 트레이아이콘으로 활성화 되도록 하고, 이때 상기 클라이언트(10)에서 활성화된 에이전트는 RMI 서버 데몬이 되도록 하는 단계(ST43, ST44)와; 상기 클라이언트(10)에서 상기 브릿지 SSO 에이전트(12)가 구동되면, 웹브라우저(11)에서 자바스크립트를 실행하여 SSO 애플릿에 있는 메소드를 호출하고, 애플릿의 특정 메소드는 상기 브릿지 SSO 에이전트(12)의 RMI 서버 데몬에 접속하고 특정 메소드를 호출하며, 상기 브릿지 SSO 에이전트(12)는 요청된 행위를 실행하고 이에 대한 응답을 하며, 웹브라우저(11)는 자바스크립트 함수를 통해서 얻은 결과를 바탕으로 사후 처리를 수행하는 단계(ST45 ~ ST53);를 포함하여 수행하는 것을 특징으로 한다.As shown here, the
상기 브릿지 SSO 에이전트(12)가 구동되는 단계(ST45 ~ ST53)는, SSO 애플릿의 요청값 설정(SetValue) 함수를 호출하는 단계(ST46)와; RMI인 상기 브릿지 SSO 에이전트(12)에 접속하는 단계(ST47)와; 상기 브릿지 SSO 에이전트(12)의 요청값 설정(SetValue) 함수를 호출하는 단계(ST48)와; 호출한 요청값 설정(SetValue) 함 수를 이용하여 요청값이 설정되도록 하는 단계(ST49);를 포함하여 수행하는 것을 특징으로 한다.Steps ST45 to ST53 of driving the
상기 브릿지 SSO 에이전트(12)가 구동되는 단계(ST45 ~ ST53)는, SSO 애플릿의 요청값 획득(GetValue) 함수를 호출하는 단계(ST50)와; 상기 브릿지 SSO 에이전트(12)의 요청값 획득(GetValue) 함수를 호출하는 단계(ST51)와; RMI인 상기 브릿지 SSO 에이전트(12)에 접속하는 단계(ST51)와; 호출한 요청값 획득(GetValue) 함수를 이용하여 요청값이 획득되도록 하는 단계(ST53);를 포함하여 수행하는 것을 특징으로 한다.Steps ST45 to ST53 of driving the
본 발명에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템 및 그 방법은 자바 애플릿과 자바 RMI 통신기술을 이용하여 브릿지 SSO 에이전트와 인증처리 서버를 통하여 통합단일인증처리를 수행함으로써, 운영체제 및 웹브라우저에 종속적인 기술을 배제하도록 자바로 구동되는 애플릿과 클라이언트 에이전트를 구현하고 자바가 설치된 어떠한 사용자 PC에서도 인증처리를 비롯한 동일한 서비스를 제공함으로써 자바가 설치된 어떠한 사용자의 PC에서 동일하게 작동되도록 할 수 있고, 이에 따라 운영체제와 웹브라우저의 종류에 따라 별도 버전을 개발할 필요가 없게 되는 효과가 있게 된다.An authentication processing system and method for a Java client agent using an applet and RMI according to the present invention are performed by performing integrated single authentication processing through a bridge SSO agent and an authentication processing server using a Java applet and Java RMI communication technology. Implement Java-powered applets and client agents to eliminate browser-dependent technologies and provide the same services, including authentication, on any user's PC with Java, so that they work the same on any user's PC with Java. Therefore, there is no need to develop a separate version according to the type of operating system and web browser.
이와 같이 구성된 본 발명에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템 및 그 방법의 바람직한 실시예를 첨부한 도면에 의거하여 상세히 설명하면 다음과 같다. 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 판례 등에 따라 달라질 수 있으며, 이에 따라 각 용어의 의미는 본 명세서 전반에 걸친 내용을 토대로 해석되어야 할 것이다.An embodiment of the authentication processing system and method of a Java client agent using the applet and RMI according to the present invention configured as described above will be described in detail with reference to the accompanying drawings. In the following description of the present invention, detailed descriptions of well-known functions or configurations will be omitted if it is determined that the detailed description of the present invention may unnecessarily obscure the subject matter of the present invention. In addition, terms to be described below are terms defined in consideration of functions in the present invention, which may vary according to intention or precedent of a user or an operator, and thus, the meaning of each term should be interpreted based on the contents throughout the present specification. will be.
먼저 본 발명은 자바 애플릿과 자바 RMI 통신기술을 이용하여 브릿지 SSO 에이전트와 인증처리 서버를 통하여 통합단일인증처리를 수행함으로써, 운영체제 및 웹브라우저에 종속적인 기술을 배제하도록 자바로 구동되는 애플릿과 클라이언트 에이전트를 구현하고 자바가 설치된 어떠한 사용자 PC에서도 인증처리를 비롯한 동일한 서비스를 제공하고자 한 것이다.First of all, the present invention performs an integrated single authentication process through a bridge SSO agent and an authentication processing server using a Java applet and a Java RMI communication technology. Thus, an applet and a client agent driven by Java to exclude a technology dependent on an operating system and a web browser are provided. It is intended to provide the same service including authentication processing on any user PC with Java installed.
일반적으로 자바(JAVA)는 특별히 인터넷의 분산환경에서 사용되도록 설계된 프로그래밍 언어이다. 자바는 C++ 언어처럼 보이지만, C++ 보다는 사용하기에 간단하고 프로그래밍의 완전한 객체지향성을 강화하였다. 자바는 한 대의 컴퓨터나, 네트워크 상의 분산 클라이언트/서버 환경에서도 실행되는 응용프로그램을 만드는데 모두 사용될 수 있다. 이것은 또한 웹페이지의 일부로서 쓰이는 작은 응용프로그램 모듈이나 애플릿 등을 만드는 데에도 사용될 수 있다. 애플릿들은 사용자들이 웹페이지를 통해 상호작용을 할 수 있도록 해준다.In general, JAVA is a programming language designed specifically for use in the distributed environment of the Internet. Java looks like a C ++ language, but it is simpler to use than C ++ and enhances the full object-oriented nature of programming. Java can be used to create applications that run on a single computer or in a distributed client / server environment on a network. It can also be used to create small application modules or applets that are used as part of a web page. Applets allow users to interact with web pages.
또한 본 발명에서 사용하는 RMI(Remote Method Invocation, 원격 객체 호출)는 네트워크 상으로 다른 자바 어플리케이션과 통신할 수 있는 자바 어플리케이션을 만들기 위해 사용된다. 간단히 설명하면 RMI는 어떤 어플리케이션에서 멀리 떨어진 곳에 위치한 어플리케이션의 메소드(Method, 객체)를 호출하거나 이 어플리케이션의 변수에 접근할 수 있게 하고 객체를 네트워크를 통해 주고 받을 수 있게 하는 것을 의미한다. 또한 이렇게 멀리 떨어진 곳에 위치하는 어플리케이션의 경우 완전히 다른 시스템과 다른 자바 환경에서 동작할 수도 있다는 것이다. RMI는 분산자바 객체 사이의 통신을 위한 메커니즘으로써 간단한 소켓 접속보다 좀 더 정교한 메커니즘이다. RMI를 사용하면 어떠한 프로토콜을 사용해서 통신할 것인지를 미리 알지 않더라도 다른 자바 프로그램과 통신을 할 수 있다.In addition, RMI (Remote Method Invocation) used in the present invention is used to create a Java application that can communicate with other Java applications on the network. In short, RMI means that you can call methods (methods, objects) in an application that is remote from an application, access its variables, and send and receive objects across the network. In addition, such remotely located applications may run on completely different systems and different Java environments. RMI is a mechanism for communication between distributed Java objects that is more sophisticated than simple socket connections. RMI lets you communicate with other Java programs without knowing in advance which protocol to use.
도 1은 본 발명의 일 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템의 개념도이다.1 is a conceptual diagram of an authentication processing system of a Java client agent using an applet and RMI according to an embodiment of the present invention.
그래서 클라이언트(10)는 사용자 PC로 구성되며, 서비스제공 서버(20)에 인증요청 정보(예를 들면, ID/Password, 공인인증정보, 지문인식정보, 홍체인식정보 등)를 제출하고 이는 인증처리 서버(30)에서 인증처리되어 그 인증결과를 전송받고, 에이전트 다운로드 서버(50)로부터 브릿지 SSO 에이전트(12)와 자바 애플릿을 다운받는다.Thus, the
서비스제공 서버(20)는 웹사이트(포탈/홈페이지/업무시스템)를 운영하는 고객사 서버로서, 클라이언트(10)의 로그인시 인증처리 서버(30)로 ID/PDW(아이디/패스워드)의 인증요청을 하여 인증처리 서버(30)로부터 인증토큰을 전달받고, 클라이 언트(10)로 인증결과를 전송한다.The
인증처리 서버(30)는 SSE(Single Sign-on Engine) 서버로서, 서비스제공 서버(20)에서 인증요청을 하면 인증/권한 정보 DB(40)에서 사용자 정보와 접근권한 정보를 확인하여 서비스제공 서버(20)로 인증토큰을 발행시킨다.The
인증/권한 정보 DB(40)는 LDAP(Lightweight Directory Access Protocol, 라이트웨이드 디렉토리 액세스 프로토콜), RDBMS(Relational database management system, 릴레이셔널 데이터베이스 관리시스템), MMDB(Main Memory Register Database Management System, 메모리 상주형 데이터베이스) 등으로 구성할 수 있다.The authentication /
여기서 LDAP(Lightweight Directory Access Protocol, 라이트웨이드 디렉토리 액세스 프로토콜)는 TCP/IP(Transmission Control Protocol / Internet Protocol, 전송 제어 프로토콜 / 인터넷 프로토콜) 상에서 디렉토리 서비스를 조회하고 수정하는 응용 프로토콜이다. 디렉토리는 논리, 계급 방식 속에서 조직화된 비슷한 특성을 가진 객체들의 모임이다. 가장 일반적인 예로는 전화 번호부(telephone directory)가 있는데 가나다 순의 일련의 이름을 가지고 있고, 이름마다 전화 번호와 주소가 포함되어 있다. 이러한 기본 설계 때문에 LDAP는 인증을 위한 다른 서비스에 의해 자주 사용된다. LDAP 디렉토리 트리는 선택된 모델에 따라 다양한 정치적, 지질학적, 조직적 경계를 반영하기도 한다. 오늘날 LDAP의 배치는 최상위 수준의 계급을 구조화하기 위해 도메인 이름 서비스의 이름을 사용하는 경향이 있다. 디렉터리 안에 들어가면 들어갈수록 사람들, 조직, 프린터, 문서, 그 룹 등을 대표하는 항목들이 나타난다.Here, LDAP (Lightweight Directory Access Protocol) is an application protocol for querying and modifying directory services on TCP / IP (Transmission Control Protocol / Internet Protocol, Transmission Control Protocol / Internet Protocol). A directory is a collection of objects with similar characteristics organized in a logical, hierarchical manner. The most common example is the telephone directory, which has a series of names in alphabetical order, each containing a phone number and address. Because of this basic design, LDAP is often used by other services for authentication. The LDAP directory tree may reflect various political, geological and organizational boundaries, depending on the model chosen. Today's deployment of LDAP tends to use the names of domain name services to structure the top level hierarchy. As you enter the directory, items that represent people, organizations, printers, documents, and groups appear.
또한 RDBMS(Relational database management system, 릴레이셔널 데이터베이스 관리시스템)는 행과 열로 된 2차원의 표로 데이터를 표현하는 데이터베이스 관리 시스템(DBMS)이다. 대규모 컴퓨터 시스템을 대상으로 많은 이용자가 대량의 데이터를 다룰 때 데이터베이스를 관리하는 시스템으로서, PC용 데이터베이스보다 대량의 데이터를 취급할 수 있고 신뢰성 측면에서도 뛰어난 업무 시스템을 구축할 수 있다. SQL(Structured Query Language, 구조적 질의어)로 작성된 데이터 조작용 명령에 따라 서버상의 데이터를 조작하며, 수정 등의 명령을 서버로 보낼 수 있는 것이면 어떤 클라이언트에서도 서버의 데이터를 조작할 수 있다.A relational database management system (RDBMS) is also a database management system (DBMS) that represents data in a two-dimensional table of rows and columns. As a system that manages a database when a large number of users deal with a large amount of data for a large computer system, it can handle a larger amount of data than a PC database and can build a work system that is superior in reliability. Manipulate data on the server according to data manipulation commands written in SQL (Structured Query Language), and any client can manipulate the data on the server as long as it can send modifications and other commands to the server.
또한 MMDB(Main Memory Register Database Management System, 메모리 상주형 데이터베이스)는 컴퓨터의 메인 메모리에 상주하며 동작되는 특수 용도의 데이터베이스(DB)이다. 하드 디스크(HD)에 저장돼 사용되는 기존 DB와 달리 메인 메모리에 상주하기 때문에 데이터를 읽어 오는 작업이 생략되고, DB 테이블(table) 전체나 일부를 메인 메모리에 상주시킨 상태에서, 기존 DB의 질의어(query)를 그대로 사용할 수 있어 데이터의 검색, 비교, 분석이 수십 배 빨라진다. 최근 인터넷 쇼핑몰의 전자 카탈로그 검색이나 인터넷 게시판의 인덱스 검색 등 빠른 속도의 데이터 검색과 비교 분석 등 실시간 처리가 요구되고, 메모리 가격의 하락으로 적용이 확산되고 있으며, 실시간 위치 정보를 파악하는 지리 정보 시스템(Geographic Information System, GIS)이나 빠른 로그 데이터 분석이 필요한 고객 관리 시스템(Customer Relationship Management, CRM)도 새로운 활용 분야로 떠오르고 있다.The MMDB (Main Memory Register Database Management System) is a special purpose database (DB) that resides and operates in the main memory of a computer. Unlike existing DB that is stored and used in hard disk (HD), since it resides in main memory, the task of reading data is skipped, and query word of existing DB in the state where all or part of DB table is resident in main memory You can use a query as it is, making data retrieval, comparison, and analysis tens of times faster. Recently, real-time processing such as fast data search and comparative analysis such as electronic catalog search of internet shopping mall or index search of internet bulletin board is required, and application is spreading due to decrease of memory price, and geographic information system that grasps real time location information Geographic Information Systems (GIS) or Customer Relationship Management (CRM), which requires fast log data analysis, are emerging as new applications.
그리고 에이전트 다운로드 서버(50)는 ADS(Agent Download Server) 서버로서, 클라이언트(10)에 JRE나 브릿지 SSO 에이전트(12), 자바 애플릿을 설치할 수 있게 이의 다운로드를 제공하는 서버이다.In addition, the
도 2는 도 1의 상세블록도이다.FIG. 2 is a detailed block diagram of FIG. 1.
그래서 클라이언트(10)의 웹브라우저(11)는 자바 스크립트(Java Script)와 SSO 애플릿(Single Sign-On Applet)을 이용하여 동작된다. 이러한 웹브라우저(11)는 마이크로소프트 사의 Internet Explorer 뿐만 아니라 Fire Fox, Safari, Opera 등 모두를 말한다.Thus, the
그리고 자바 스크립트는 웹브라우저 자체가 여러 가지 기능을 수행하도록 하는 프로그래밍 언어로서, 웹서버 부담을 줄여주면서도 다양한 기능을 수행할 수 있도록 해준다. 이는 HTML 문서와 유기적으로 결합돼 있어 쉽게 사용할 수 있는 컴퓨터 언어이다. 그래서 웹페이지에 문자열이 흘러 지나가거나 문서 색깔이 바뀌는 것 등은 대부분 자바스크립터를 이용해 만든다.JavaScript is a programming language that allows the web browser itself to perform many functions, reducing the burden on the web server and performing various functions. It is an easy-to-use computer language that is organically combined with HTML documents. So most of the time, such as strings flowing through a web page or changing the color of a document, is made using a JavaScript script.
또한 애플릿(Applet)은 웹 브라우저, 제어판과 같은 다른 프로그램에서 실행되는 소프트웨어 구성 요소를 말한다. 애플릿은 독립적으로 사용되지 않으며 작은 기능을 가지고 있다. 애플릿은 "서브루틴"과 기능이 많이 다르다. 먼저, "서블릿" 같은 한 종류의 클라이언트 플랫폼에서만 동작한다. 또한 서브루틴과 달리 애플릿의 컨테이너에 의해 기능이 제한된다. 애플릿은 스크립트 언어가 아닌 컴파일 가능 언어로 작성되므로 성능 향상이나 다양한 기능을 가져올 수 있다. 서브루틴과 달리, 완전한 웹 구성 요소를 애플릿을 가지고 작성할 수 있다.Applets are also software components that run in other programs, such as web browsers and control panels. Applets are not used independently and have small features. Applets differ a lot from "subroutines." First, it only works on one type of client platform, such as "servlets." Also unlike subroutines, functionality is limited by the applet's container. Applets are written in a compileable language rather than a scripting language, so they can improve performance or bring a variety of features. Unlike subroutines, you can write complete Web components with applets.
그래서 SSO 애플릿은 클라이언트(10)인 사용자 PC에 설치되고, 브릿지 SSO 에이전트(12)와 RMI 통신을 하기 위한 교두보로서, 웹브라우저(11)에서는 다이렉트로 브릿지 SSO 에이전트(즉, 사용자 PC의 특정 프로세스)를 호출하지 못한다. 따라서 웹브라우저(11)에서 호출이 가능한 애플릿을 자바스크립트 함수로 호출하기 위한 장치이다.Thus, the SSO applet is installed on the user PC which is the
브릿지 SSO 에이전트(Bridge SSO Agent)(12)는 웹브라우저(11)의 SSO 애플릿과 자바 RMI(Remote Method Invocation, 원격 객체 호출) 통신을 수행하여 해당 사용자가 이미 인증처리가 되어 있는 여부를 확인한다. 이러한 브릿지 SSO 에이전트(12)는 순수한 자바 기술로 구현된 프로세스이다. 그래서 애플릿과 RMI 통신을 하면서 인증정보와 사용자 권한 정보의 저장 및 확인 기능을 수행한다. 또한 트레이 아이콘(Tray Icon)을 생성하여 사용자 제어 기능을 제공한다.The
JRE(Java Runtime Environment, 자바 실행 환경)(13)는 클라이언트(10)에서 동작된다. 이러한 JRE는 자바로 만들어진 어플리케이션 및 서비스가 구동되기 위한 사용자 환경을 말한다.The JRE (Java Runtime Environment) 13 is operated on the
운영체제(14)는 클라이언트(10)를 동작시키는 것으로, Windows, Linux, Mac 등의 운영체제가 될 수 있다.The
종래의 ActiveX 기술이 윈도우 운영체제와 인터넷 익스플로러에서만 동작되는 것에 비해, 본 발명에서는 그러한 운영체제(14) 및 웹브라우저(11)의 제한이 없다. 이러한 본 발명은 ActiveX Control 기술을 대용하는 자바 기반의 응용기술이다.Compared to the conventional ActiveX technology that only works with the Windows operating system and Internet Explorer, the present invention is not limited by such an
한편 서비스제공 서버(20)는 고객사가 서비스하려는 내용을 담고 있는 웹기반의 인터넷 서비스 제공 시스템이다.On the other hand, the
이러한 서비스제공 서버(20)에서 서버 에이전트(SVR Agent)(21)는 해당하는 서비스제공 서버(20)가 NET, ASP, PHP, JSP 중에서 하나 이상의 웹프로그램언어로 이루어져 있는 경우 그에 맞는 서버 스크립트로 작성된 서버측 로직 파일로 구성되며, 클라이언트(10)로부터 받은 인증여부를 확인하여 이미 인증이 되어 있다면 서비스 페이지(22)를 실행하여 서비스를 실시하고, 인증받지 못한 경우에는 클라이언트(10)에서 제출한 인증요청 정보(ID/PWD, 공인인증정보, 지문인식정보, 홍체인식정보 등)를 인증처리 서버(30)로 전달한다. 그리고 서비스제공 서버(20)는 ASP, .Net, PHP, JSP 등 다양한 서버스크립트로 작성될 수 있는데, 서버 에이전트(21)라 함은 이러한 각각에 맞는 SSO를 위해 제공되는 서버측 스크립트를 의미한다.In such a
여기서 NET(Active Server Page.NET)는 마이크로소프트 사의 닷넷 플랫폼 기반으로 작동하는 새로운 웹 프로그래밍 구현 기술로서, ASP의 인터프리터 방식이 아닌 컴파일된 언어를 사용하여 성능과 확장성 면에서 기존의 ASP보다 크게 향상시킨 것이다. NET는 ASP에 비해 작성하기 쉽고, 재사용하고 공유할 수 있는 깨끗한 코드를 제공하며, 자바와 비슷한 언어인 C#를 사용하여 객체지향 기술 적용한다.Active Server Page.NET (NET) is a new implementation of Web programming that works on Microsoft's .NET platform and uses a compiled language rather than an ASP interpreter to significantly improve performance and scalability. It is. NET is easier to write than ASP, provides clean code that can be reused and shared, and uses object-oriented technology using C #, a Java-like language.
또한 ASP(Active Server Page)는 마이크로소프트 사가 자사의 IIS(Internet Information Server)라는 서버에서 실행할 수 있도록 만든 기술로서, Windows 기반에 MSSQL(MicroSoft Structured Query Language), Oracle을 주로 사용하고 특히 MSSQL을 많이 사용한다. 이는 VBScript 와 JScrpt를 기반으로 하는 스크립트 언어로 개발이 쉽고 편리하다. 또한 인터프리터 방식으로 성능이 좀 떨어지기 때문에 중규모 정도의 사이트 개발에만 이용한다.Active Server Page (ASP) is a technology that allows Microsoft to run on its own server called Internet Information Server (IIS). It mainly uses Microsoft Structured Query Language (MSSQL) and Oracle based on Windows, especially MSSQL. do. It is a scripting language based on VBScript and JScrpt, making development easy and convenient. In addition, the performance of the interpreter is slightly degraded, so it is used only for medium-scale site development.
또한 PHP(Personal Home Page tools 또는 Hypertext Preprocessor)는 마이크로소프트 사가 아닌 한 학생이 개인적인 용도로 개발을 시작해서 지금은 아주 많은 리눅스 공동체에서 사용하는 동적 웹 구현 기술로서, C언어 기반의 문법구조로 지원하는 라이브러리, 함수 등이 많다. Mysql DB와 연동이 매우 탁월하며, Window, Linux, Unix 등 웬만한 OS는 다 지원한다.In addition, PHP (Personal Home Page tools or Hypertext Preprocessor) is a dynamic web implementation technology that has been developed for personal use by a non-Microsoft student and is now used by many Linux communities. There are many libraries, functions, etc. It works very well with MySql DB and supports all OS such as Window, Linux, Unix.
또한 JSP(Java Server Page)는 동적 웹 구현 기술로서, 객체지향적인 자바의 장점을 그대로 웹에서 구현 할 수 있는 기술로 속도 및 성능에서 매우 우수하다. 서블릿과 함께 구동할 수 있으며, 자바 빈즈, EJB(Enterprise JavaBeans) 같은 기술로 보다 강력한 객체지향적 지원이 가능하다.In addition, JSP (Java Server Page) is a dynamic web implementation technology. It is a technology that can implement the advantages of object-oriented Java on the web as it is, and is excellent in speed and performance. It can run with servlets, and more powerful object-oriented support is possible with technologies such as Java beans and Enterprise JavaBeans (EJB).
그리고 서비스 페이지(22)는 클라이언트(10)에서 서비스제공 서버(20)에 접속하면 서비스 페이지를 제공하고, 서버 에이전트(21)를 호출한 다음 클라이언트(10)에 JRE 1.6 이상이 설치되어 있는지 또는 SSO_Applet.jar가 설치되어 있는지 또는 SSO_Agent.jar가 설치되어 있는지 판별하며, 서버 에이전트(21)로부터 인증토큰과 사용자 권한 정보를 전달받는다. 이러한 서비스 페이지(22)는 현재 고객사 서버인 서비스제공 서버(20)에서 서비스하고 있는 사이트로서, SSO 연계 대상인 시스템을 말한다.The
또한 인증처리 서버(30)에서 인증 서블릿(Cert Servlet)(31)은 서비스제공 서버(20)에서 암호화된 인증요청 정보(아이디/패스워드 등)를 요청하면 이의 유효성/정당성을 확인한다.In addition, when the
인증 DB 래퍼(Cert DB Wrapper)(32)는 인증 서블릿(31)으로부터 넘어온 인증요청 정보를 인증/권한 정보 DB(40)에 있는 사용자 정보와 유효성 및 정당성을 비교처리한다.The
GWAF(Genics Web App Framework)(33)는 인증처리 서버(30)에서 웹프로젝트를 구축하기 위한 자바 프레임워크(Java Framework)로서, 제닉스어소시에츠 사에서 진행하는 모든 웹프로젝트를 구축하기 위한 자바 프레임워크이다.The GWAF (Genics Web App Framework) 33 is a Java framework for building a web project on the
WAS(Web Application Server)(34)는 인증처리 서버(30)에서 자바 기반의 웹서비스를 구동하는 미들웨어이다.WAS (Web Application Server) 34 is middleware that runs a Java-based web service in the
JRE(35)는 인증처리 서버(30)에서 동작되는 것으로, 자바로 만들어진 어플리케이션 및 서비스가 구동되기 위한 사용자 환경을 제공해준다.The
운영체제(36)는 인증처리 서버(30)를 동작시키는 것으로, Windows, Linux, Unix 등으로 구성할 수 있다.The
또한 에이전트 다운로드 서버(50)에서 SSO_Agent.jar 파일은 클라이언트(10)에서 구동되는 에이전트를 배포하기 위한 SSO 에이전트 파일이다. 그래서 ActiveX에서 사용자 PC 에 xxx.cab 파일로 배포를 하는 것처럼, Java 에서는 사용자 PC에서 구동되는 Agent를 xxx.jar 파일로 배포한다.In addition, the SSO_Agent.jar file in the
SSO_Applet.jar 파일은 클라이언트(10)에 저장되어 클라이언트(10)의 로컬에서 실행되는 SSO 애플릿 파일이다.The SSO_Applet.jar file is an SSO applet file stored in the
Install_jre.cab 파일은 Sun 사에서 배포하는 JRE의 인스톨용 파일이다.Install_jre.cab file is a file for installing the JRE distributed by Sun.
sso_agent.jnlp 파일은 XML(eXtensible Markup Language)로 구성된 JNLP(Java Network Launching Protocol) 파일로서 클라이언트(10)의 자바 웹스타트(Java Web Start)를 통해 SSO_Agent 를 구동하는 파일이다.The sso_agent.jnlp file is a Java Network Launching Protocol (JNLP) file composed of XML (eXtensible Markup Language) and is a file that drives SSO_Agent through Java Web Start of the
Manager.js 파일은 애플릿에 정의된 함수를 웹브라우저에서 호출하는 자바스크립트(JavaScript) 함수를 포함한 파일이다.The Manager.js file is a file containing JavaScript functions that call functions defined in the applet in the web browser.
Applet.js 파일은 애플릿의 다운로드 및 구동과 관련된 로직이 들어있는 자바스크립트(JavaScript) 파일이다.The Applet.js file is a JavaScript file that contains logic related to downloading and running applets.
여기서 JAR 파일이란 archive 파일이다. 즉, 여러 개의 파일을 하나의 파일로 묶는 jar 명령을 사용하여 생성된다. 이 파일은 winzip에서 열어 볼 수 있으며, winzip에서 열어보면 여러 개의 파일들이 디렉토리 정보를 가진 상태로 들어 있다. 이렇게 archive 파일로 묶는 이유는 자바로 개발한 여러 클래스 파일들 또는 패키지 파일이 있을 때, 이를 하나로 묶어두면, 그 클래스들을 참조하기도 편하고, 다운 받기도 쉽기 때문이다.JAR files are archive files. In other words, it is created using the jar command that bundles multiple files into a single file. You can open this file in winzip, and when you open it in winzip, several files contain directory information. The reason for this grouping is that when you have several class files or package files developed in Java, you can group them together so that you can easily refer to them and download them.
도 3은 도 2에서 클라이언트와 인증처리 서버 및 인증연계 서버의 소프트웨어 아키텍처를 보인 개념도이다.3 is a conceptual diagram illustrating a software architecture of a client, an authentication processing server, and an authentication association server in FIG. 2.
그래서 클라이언트(10)는 HTML/XML/XSL, SSO 에이전트, SSO 애플릿, JRE, 브라우저, Windows/Linux/Unix/Mac 등의 O/S로 소프트웨어 아키텍처를 구성할 수 있다.Thus, the
또한 인증처리 서버(30)와 에이전트 다운로드 서버(50)는 GWAF 프레임워크, 웹서버와 WAS, JAVA(J2SE), Windows/Linux/Unix 등의 O/S로 소프트웨어 아키텍처를 구성할 수 있다.In addition, the
도 4는 본 발명의 일 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법을 보인 개념도이다.4 is a conceptual diagram illustrating an authentication processing method of a Java client agent using an applet and an RMI according to an embodiment of the present invention.
그래서 사용자가 클라이언트(10)에서 서비스제공 서버(20)의 서비스 페이지(22)를 웹브라우저(11)로 연다(ST11).Thus, the user opens the
그러면 서비스제공 서버(20)의 해당 사이트에 포함(include)되어 있는 서버 에이전트(21)를 호출하고, 클라이언트(10)에 필요한 어플리케이션(Application)이 설치되어 있는지 판별한다. 이때 JRE 1.6 이상이 설치되어 있는지 또는 SSO_Applet.jar 가 설치되어 있는지 또는 SSO_Agent.jar 가 설치되어 있는지 판별한다(ST12).Then, the
만약 필요한 어플리케이션이 설치되어 있지 않다면 인증연계 서버(50)로부터 이를 다운로드 요청한다(ST13).If the required application is not installed, it downloads it from the authentication association server 50 (ST13).
그리고 요청한 어플리케이션을 클라이언트(10)에 다운로드하여 설치한다(ST14).The requested application is downloaded to the
그러면 클라이언트(10)의 웹브라우저(11)는 applet.js 파일과 manager.js 파일에 있는 스크립트 함수(function)를 호출한다(ST15).Then, the
자바스크립트 함수(JavaScript function)는 SSO 애플릿(SSO Applet)에 구현되어 있는 Java API(Application Programming Interface)를 호출한다(ST16).The JavaScript function calls a Java application programming interface (API) implemented in an SSO applet (ST16).
SSO 애플릿(SSO Applet)의 Java API 는 브릿지 SSO 에이전트(Bridge SSO Agent)(12)와 Java RMI 통신을 수행하여 클라이언트(10)의 해당 사용자가 이미 인증처리가 되어 있는지 여부를 확인한다(ST17).The Java API of the SSO Applet performs Java RMI communication with the
브릿지 SSO 에이전트(Bridge SSO Agent)는 요청 결과를 다시 SSO 애플릿(SSO Applet)에 전달한다(ST18).The bridge SSO agent forwards the request result back to the SSO applet (ST18).
웹브라우저(11)는 자바스크립트(JavaScript)를 통해서 SSO 애플릿(SSO Applet)으로부터 인증토큰값을 전달받는다(ST19).The
이에 다라 서비스제공 서버(20)의 서버 에이전트(Server Agent)(21)는 웹브라우저(11)로부터 받은 인증 여부를 확인한다. 이미 인증이 되어 있다면 서비스 페이지(22)를 이용하여 서비스를 실시하도록 한다(ST20).Accordingly, the
만약 인증받지 못한 경우에는 클라이언트(10)의 사용자가 제출한 인증요청정보를 검증받기 위해 인증처리 서버(30)의 인증 서블릿(Cert Servlet)(31)으로 그 값을 넘긴다(ST21).If not authenticated, the value is passed to the
그러면 인증 서블릿(Cert Servlet)(31)은 인증 DB 래퍼(Cert DB Wrapper)(32)의 클래스에 인증요청 정보를 제출한다(ST22).The
또한 인증 DB 래퍼(Cert DB Wrapper)(32)는 인증/권한 정보 DB(40)에서 인증요청 정보의 유효성(Validation)을 확인하기 위해 비교한다(ST23).Also, the
그리고 비교한 인증요청 정보의 유무를 인증 DB 래퍼(32)에서 확인한다(ST24).The presence or absence of the compared authentication request information is confirmed by the authentication DB wrapper 32 (ST24).
인증 DB 래퍼(32)는 확인된 인증요청정보를 인증 서블릿(Cert Servlet)(31)에 전달한다(ST25).The
서버 에이전트(21)는 인증여부와 해당 권한 정보들을 인증 서블릿(31)으로부터 전달받는다(ST26).The
그리고 서버 에이전트(21)는 브릿지 SSO 에이전트(Bridge SSO Agent)(12)에 인증토큰과 사용자 권한 정보를 세팅하고 본래의 해당 서비스 페이지(22)로 포워드(Forward)한다(ST27).The
도 5는 본 발명의 다른 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법의 흐름도이다.5 is a flowchart illustrating an authentication processing method of a Java client agent using an applet and RMI according to another embodiment of the present invention.
먼저 클라이언트(10)에서 서비스제공 서버(20)로 서비스 요청을 한다(ST31).First, a service request is made from the
그러면 서비스제공 서버(20)는 에이전트가 설치되어 있는지 판별한다. 만약 에이전트가 클라이언트(10)에 설치되어 있지 않으면 인증처리 서버(30)로 설치요청하고, 에이전트가 설치되어 있으면 서비스를 이용하도록 한다(ST32).The
그리고 인증처리 서버(30)는 서비스제공 서버(20)에서 받은 설치요청에 따라 에이전트 다운로드 서버(50)로 에이전트 다운로드 요청을 한다(ST33).The
이에 따라 에이전트 다운로드 서버(50)에서는 클라이언트(10)에서 에이전트를 다운로드 받도록 하여, 클라이언트(10)에 브릿지 SSO 에이전트(12)와 SSO 애플릿이 설치되도록 한다(ST34).Accordingly, the
그런 다음 클라이언트(10)는 서비스제공 서버(20)로 로그인 요청을 한다(ST35).Then, the
그래서 서비스제공 서버(20)는 클라이언트(10)로부터 로그인 요청을 받으면 인증결과를 인증처리 서버(30)로 전송한다(ST36).When the
그리고 서비스제공 서버(20)는 인증처리 서버(30)에서 생성된 토큰(Token)을 제공받는다(ST37).In addition, the
또한 클라이언트(10)의 브릿지 SSO 에이전트(12)에 토큰을 저장하고 세션을 생성시킨다(ST38).In addition, the token is stored in the
클라이언트(10)는 세션이 올바르면 서비스제공 서버(20)에서 제공하는 서비스를 이용하고, 세션이 올바르지 않으면 다시 로그인 요청을 수행하도록 한다(ST39).If the session is valid, the
도 6은 본 발명의 다른 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법을 보인 플로우차트이다.6 is a flowchart illustrating a method of authenticating a Java client agent using an applet and an RMI according to another embodiment of the present invention.
클라이언트(10)의 웹브라우저(11)는 에이전트 다운로드 서버(50)로부터 브릿지 SSO 에이전트(12)와 SSO 애플릿을 다운로드 받아 설치한다(ST41).The
그리고 설치가 제대로 되었는지 판별한다(ST42).Then, it is determined whether the installation is successful (ST42).
그런 다음 클라이언트(10)에 설치된 브릿지 SSO 에이전트(12)가 에이전트 구동함수의 호출에 의해 구동되면(ST43), 클라이언트(10)의 웹브라우저(11)의 작업표시줄에 트레이아이콘으로 활성화 되도록 하고, 이때 클라이언트(10)에서 활성화된 에이전트는 RMI 서버 데몬이 되도록 한다(ST44).Then, when the
그래서 에이전트가 구동되면(45), 클라이언트(10)에서 브릿지 SSO 에이전트(12)가 구동되면, 웹브라우저(11)에서 자바스크립트를 실행하여 SSO 애플릿에 있는 메소드를 호출하고, 애플릿의 특정 메소드는 브릿지 SSO 에이전트(12)의 RMI 서버 데몬에 접속하고 특정 메소드를 호출하며, 브릿지 SSO 에이전트(12)는 요청된 행위를 실행하고 이에 대한 응답을 하며, 웹브라우저(11)는 자바스크립트 함수를 통해서 얻은 결과를 바탕으로 사후 처리를 수행한다.So when the agent is running (45), when the bridge SSO agent (12) is running on the client (10), the web browser (11) executes JavaScript to call the methods in the SSO applet, and specific methods of the applet are bridged. It connects to the RMI server daemon of the
이를 요청값 설정의 예를 통해 설명하면 다음과 같다.If this is explained through the example of request value setting, it is as follows.
먼저 SSO 애플릿의 요청값 설정(SetValue) 함수를 호출한다(ST46).First, the SetValue function of the SSO applet is called (ST46).
그리고 RMI인 브릿지 SSO 에이전트(12)에 접속한다(ST47).It connects to the
또한 브릿지 SSO 에이전트(12)의 요청값 설정(SetValue) 함수를 호출한다(ST48).In addition, the request value set (SetValue) function of the
호출한 요청값 설정(SetValue) 함수를 이용하여 요청값이 설정되도록 한다(ST49).The request value is set using the called request value set function (ST49).
또한 요청값 획득의 예를 통해 설명하면 다음과 같다.In addition, the example of obtaining request values is as follows.
먼저 SSO 애플릿의 요청값 획득(GetValue) 함수를 호출한다(ST46).First, the getvalue function of the SSO applet is called (ST46).
그리고 브릿지 SSO 에이전트(12)의 요청값 획득(GetValue) 함수를 호출한다(ST51).Then, a request value (GetValue) function of the
또한 RMI인 브릿지 SSO 에이전트(12)에 접속한다(ST52).Furthermore, it connects to the
호출한 요청값 획득(GetValue) 함수를 이용하여 요청값이 획득되도록 한다(ST53).A request value is obtained by using the called getvalue function (ST53).
이처럼 본 발명은 자바 애플릿과 자바 RMI 통신기술을 이용하여 브릿지 SSO 에이전트와 인증처리 서버를 통하여 통합단일인증처리를 수행함으로써, 운영체제 및 웹브라우저에 종속적인 기술을 배제하도록 자바로 구동되는 애플릿과 클라이언트 에이전트를 구현하고 자바가 설치된 어떠한 사용자 PC에서도 인증처리를 비롯한 동일한 서비스를 제공하게 되는 것이다.As described above, the present invention performs an integrated single authentication process through a bridge SSO agent and an authentication processing server using a Java applet and a Java RMI communication technology. It will provide the same services including authentication processing on any user PC with Java installed.
이상에서 실시예를 들어 본 발명을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것은 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다. 따라서 본 발명에 개시된 실시예들은 본 발명의 기술적 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술적 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호범위는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although the present invention has been described in more detail with reference to the examples, the present invention is not necessarily limited to these embodiments, and various modifications can be made without departing from the spirit of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.
도 1은 본 발명의 일 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 시스템의 개념도이다.1 is a conceptual diagram of an authentication processing system of a Java client agent using an applet and RMI according to an embodiment of the present invention.
도 2는 도 1의 상세블록도이다.FIG. 2 is a detailed block diagram of FIG. 1.
도 3은 도 2에서 클라이언트와 인증처리 서버 및 인증연계 서버의 소프트웨어 아키텍처를 보인 개념도이다.3 is a conceptual diagram illustrating a software architecture of a client, an authentication processing server, and an authentication association server in FIG. 2.
도 4는 본 발명의 일 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법을 보인 개념도이다.4 is a conceptual diagram illustrating an authentication processing method of a Java client agent using an applet and an RMI according to an embodiment of the present invention.
도 5은 본 발명의 다른 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법의 흐름도이다.5 is a flowchart illustrating an authentication processing method of a Java client agent using an applet and RMI according to another embodiment of the present invention.
도 6은 본 발명의 다른 실시예에 의한 애플릿과 RMI를 이용한 자바 클라이언트 에이전트의 인증처리 방법을 보인 플로우차트이다.6 is a flowchart illustrating a method of authenticating a Java client agent using an applet and an RMI according to another embodiment of the present invention.
* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings
10 : 클라이언트(사용자 PC)10: Client (User PC)
11 : 웹브라우저11: Web browser
12 : 브릿지 SSO 에이전트(Bridge SSO Agent)12: Bridge SSO Agent
13 : JRE(Java Runtime Environment, 자바 실행 환경)13: JRE (Java Runtime Environment)
14 : 운영체제(O/S; Windows, Linux, Mac 등)14: Operating system (O / S; Windows, Linux, Mac, etc.)
20 : 서비스제공 서버(포탈 or 웹사이트)20: Service providing server (portal or website)
21 : 서버 에이전트(SVR Agent)21: Server Agent (SVR Agent)
22 : 서비스 페이지(Service Page)22: Service Page
30 : 인증처리 서버(SSE 서버)30: authentication processing server (SSE server)
31 : 인증 서블릿(Cert Servlet)31: Cert Servlet
32 : 인증 DB 래퍼(Cert DB Wrapper)32: Cert DB Wrapper
33 : GWAF(Genics Web App Framework)33: GWAF (Genics Web App Framework)
34 : WAS(Web Application Server; Weblogic, Jeus, Tomcat 등)34: WAS (Web Application Server; Weblogic, Jeus, Tomcat, etc.)
35 : 운영체제(O/S; Windows, Linux, Unix 등)35: Operating system (O / S; Windows, Linux, Unix, etc.)
40 : 인증/권한 정보 DB(LDAP, RDBMS, MMDB 등)40: Authentication / authority information DB (LDAP, RDBMS, MMDB, etc.)
50 : 에이전트 다운로드 서버(Agent Download Server, ADS 서버)50: Agent Download Server (ADS Server)
Claims (13)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080028192A KR100954449B1 (en) | 2008-03-27 | 2008-03-27 | System and method for authentication process of java client agent by applet and Remote Method Invocation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080028192A KR100954449B1 (en) | 2008-03-27 | 2008-03-27 | System and method for authentication process of java client agent by applet and Remote Method Invocation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090102924A KR20090102924A (en) | 2009-10-01 |
KR100954449B1 true KR100954449B1 (en) | 2010-04-27 |
Family
ID=41532520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080028192A KR100954449B1 (en) | 2008-03-27 | 2008-03-27 | System and method for authentication process of java client agent by applet and Remote Method Invocation |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100954449B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150095255A (en) * | 2014-02-13 | 2015-08-21 | 주식회사 디지캡 | A system providing trusted identity management service using trust service device and its methods of operation |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101883210B1 (en) * | 2012-07-02 | 2018-07-30 | 에스케이플래닛 주식회사 | Service System And Operation Method For Single-Sign On |
US9130927B2 (en) | 2012-07-02 | 2015-09-08 | Sk Planet Co., Ltd. | Single certificate service system and operational method thereof |
KR20230036493A (en) * | 2021-09-07 | 2023-03-14 | 삼성전자주식회사 | Method of providing login information and electronic device performing the method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998041919A1 (en) | 1997-03-18 | 1998-09-24 | Trend Micro, Incorporated | Virus detection in client-server system |
US6766454B1 (en) * | 1997-04-08 | 2004-07-20 | Visto Corporation | System and method for using an authentication applet to identify and authenticate a user in a computer network |
US7150038B1 (en) * | 2000-04-06 | 2006-12-12 | Oracle International Corp. | Facilitating single sign-on by using authenticated code to access a password store |
KR20080044020A (en) * | 2006-11-15 | 2008-05-20 | 에스케이 텔레콤주식회사 | One time password unified authentification system and constructing method thereof |
-
2008
- 2008-03-27 KR KR1020080028192A patent/KR100954449B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998041919A1 (en) | 1997-03-18 | 1998-09-24 | Trend Micro, Incorporated | Virus detection in client-server system |
US6766454B1 (en) * | 1997-04-08 | 2004-07-20 | Visto Corporation | System and method for using an authentication applet to identify and authenticate a user in a computer network |
US7150038B1 (en) * | 2000-04-06 | 2006-12-12 | Oracle International Corp. | Facilitating single sign-on by using authenticated code to access a password store |
KR20080044020A (en) * | 2006-11-15 | 2008-05-20 | 에스케이 텔레콤주식회사 | One time password unified authentification system and constructing method thereof |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150095255A (en) * | 2014-02-13 | 2015-08-21 | 주식회사 디지캡 | A system providing trusted identity management service using trust service device and its methods of operation |
KR101637155B1 (en) | 2014-02-13 | 2016-07-07 | 주식회사 디지캡 | A system providing trusted identity management service using trust service device and its methods of operation |
Also Published As
Publication number | Publication date |
---|---|
KR20090102924A (en) | 2009-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20030233483A1 (en) | Executing software in a network environment | |
US6219700B1 (en) | Method and apparatus for managing services in a computer network from a central console | |
EP1141828B1 (en) | An apparatus and method for determining a program neighborhood for a client node in a client-server network | |
US6157953A (en) | Authentication and access control in a management console program for managing services in a computer network | |
US7281047B2 (en) | System and method for automatic provision of an application | |
US7509672B1 (en) | Cross-platform single sign-on data sharing | |
US6154751A (en) | Method for executing a user-requested CGI program in a new authentication context while protecting operation of a default web server program | |
US7441264B2 (en) | Security objects controlling access to resources | |
US6178511B1 (en) | Coordinating user target logons in a single sign-on (SSO) environment | |
US20030033535A1 (en) | Method and system for implementing a common user logon to multiple applications | |
US6675261B2 (en) | Request based caching of data store data | |
US20040117460A1 (en) | Multi-user web simulator | |
CN1732452A (en) | System and method for automatically launching and accessing netwrok addresses and applications | |
JP2002351829A (en) | Providing computing service through online network computer environment | |
US7496761B2 (en) | Method and system for batch task creation and execution | |
CN101268468A (en) | Method and apparatus to authenticate source of a scripted code | |
KR100954449B1 (en) | System and method for authentication process of java client agent by applet and Remote Method Invocation | |
US20040123146A1 (en) | Security objects with language translation and speech to text conversion | |
US20030236979A1 (en) | Group security objects and concurrent multi-user security objects | |
US20030236996A1 (en) | Security objects controlling timed access to resources | |
Gröne et al. | The Apache modeling project | |
AU2006201131B2 (en) | Method and system for providing user access to a secure application | |
KR20000053807A (en) | A Remote Control System For Personal Computer Using Web Browser | |
EP1411429A2 (en) | An apparatus and method for determining a program neighbourhood for a client node in a client-server network | |
Rahim | Conception of Authentication and Authorization of Users and Microservices in an Angular, Spring Boot Application Using Keycloak and OAuth2. 0 |
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 | ||
LAPS | Lapse due to unpaid annual fee |