KR102346480B1 - A macro-based application account management system - Google Patents

A macro-based application account management system Download PDF

Info

Publication number
KR102346480B1
KR102346480B1 KR1020210056781A KR20210056781A KR102346480B1 KR 102346480 B1 KR102346480 B1 KR 102346480B1 KR 1020210056781 A KR1020210056781 A KR 1020210056781A KR 20210056781 A KR20210056781 A KR 20210056781A KR 102346480 B1 KR102346480 B1 KR 102346480B1
Authority
KR
South Korea
Prior art keywords
account
application
macro
management
user
Prior art date
Application number
KR1020210056781A
Other languages
Korean (ko)
Inventor
신호철
김대옥
이재국
이혁주
이기범
Original Assignee
주식회사 넷앤드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 넷앤드 filed Critical 주식회사 넷앤드
Priority to KR1020210056781A priority Critical patent/KR102346480B1/en
Application granted granted Critical
Publication of KR102346480B1 publication Critical patent/KR102346480B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Abstract

The present invention relates to a macro-based application account management system capable of managing an account of an application by proxy through an account management system installed between a user terminal and an application server, while writing each account management job of the application as a macro, and executing a macro selected by a user. The macro-based application account management system includes: a user authentication part performing user authentication on a user account of each user terminal; a macro management part storing and managing a macro script, which performs an account management job of each application of the application server, in advance; a management request reception part receiving a request of the account management job of the application from the user terminal; and an account management processing part selecting and executing the macro script corresponding to the received request of the account management job, in accordance with the corresponding request. In accordance with the system, the macro-based application account management system can manage an account by writing an account management job as a macro between a user terminal and a server and executing the macro, thereby integrally managing the account regardless of the type of a server system, while maintaining a function of the server.

Description

매크로 기반 어플리케이션 계정 관리 시스템 { A macro-based application account management system }A macro-based application account management system { A macro-based application account management system }

본 발명은 사용자 단말과 어플리케이션 서버 사이에 계정관리 시스템을 구비하여 어플리케이션의 계정 관리를 대행하되, 어플리케이션의 계정 관리 작업 각각을 매크로로 작성하고, 사용자의 선택에 따라 선택된 매크로를 실행시키는, 매크로 기반 어플리케이션 계정 관리 시스템에 관한 것이다.The present invention includes an account management system between the user terminal and the application server to manage the account on behalf of the application, write each account management task of the application as a macro, and execute the selected macro according to the user's selection, a macro-based application It is about an account management system.

일반적으로, 어플리케이션 서버는 사용자에게 계정을 생성하도록 계정 관리 인터페이스를 제공하고, 사용자는 생성된 계정을 통해 어플리케이션 서버에 접속하여, 해당 어플리케이션을 이용한다. 따라서 누구나 어플리케이션 계정을 알면, 해당 어플리케이션 서버에 접근하여 해당 서버 내의 보안 자료를 접근하거나 시스템에 중대한 영향을 주는 작업을 실행할 수 있다. 따라서, 보안이 요구되는 어플리케이션 서버의 경우에는, 계정(또는 어플리케이션 계정)에 대한 생성, 수정, 또는 삭제 등의 작업이 엄격히 통제되어야 한다.In general, an application server provides an account management interface to a user to create an account, and the user accesses the application server through the created account and uses the corresponding application. Therefore, if anyone knows the application account, they can access the application server, access the security data in the server, or execute a task that has a significant impact on the system. Therefore, in the case of an application server requiring security, operations such as creation, modification, or deletion of an account (or application account) must be strictly controlled.

종래 기술에 의하면, 계정 관리를 위한 기능은 대상 시스템의 종류에 따라 달리 개발되어 구성된다. 따라서 하나의 통합된 관리 체계에 의해, 모든 다양한 대상 시스템을 통합적으로 관리되지 못한다.According to the prior art, a function for account management is developed and configured differently depending on the type of the target system. Therefore, all various target systems cannot be managed integrally by one integrated management system.

구체적으로, 대상 시스템이 서버, 네트워크 장비, 데이터베이스 인 경우, 종래의 계정관리 시스템은 외부에서 대상 시스템에 접속하여 명령어 스크립트를 통해서 제어하거나, 대상 시스템에 관리 프로그램을 설치하여 이벤트 발생 시 명령어 스크립트를 수행하여 계정을 제어한다[특허문헌 1]. 즉, 각 사용자 계정에 대하여 사전에 등록된 명령어 집합 내에서만 명령어를 선택하여 수행할 수 있도록 통제한다.Specifically, when the target system is a server, network device, or database, the conventional account management system accesses the target system from the outside and controls it through a command script, or installs a management program in the target system to execute a command script when an event occurs to control the account [Patent Document 1]. That is, it is controlled so that a command can be selected and executed only within the command set registered in advance for each user account.

또한, 어플리케이션인 경우, 기존에는, 계정 관련 데이터를 개별 어플리케이션의 데이터베이스에 직접 삽입하거나, 수정 또는 삭제한다. 또는, 개발 업체 상호간에 협의된 API를 통해서, 계정의 생성, 수정, 삭제의 함수를 호출하도록 구현한다. 또는, 공개 인증(Open Authorization; OAuth 2.0)과 같은 표준화 프로토콜을 사용하여 다른 어플리케이션에 대해서 서로 계정을 공유하게 하여 통제할 수 있다.In addition, in the case of an application, account-related data is directly inserted, modified, or deleted in the database of an individual application. Alternatively, it is implemented to call the account creation, modification, and deletion functions through the API agreed upon between the developers. Alternatively, a standardized protocol such as Open Authorization (OAuth 2.0) may be used to allow other applications to share accounts with each other to control.

또는, 시스템의 종류와 상관 없이, TACACS(Terminal Access Controller Access Control System), RADIUS(remote authentication dial-in user services), 커버로스(Kerberos), LDAP(lightweight directory access protocol) 인증 등을 이용하여 중앙에 관리하는 방식이 있다. 예를 들어, LDAP 프로토콜을 이용한 마이크로소프트(Microsoft) 사의 액티브 디렉토리(Active Directory) 방식 등이 있다.Alternatively, regardless of the system type, TACACS (Terminal Access Controller Access Control System), RADIUS (remote authentication dial-in user services), Kerberos, LDAP (lightweight directory access protocol) authentication, etc. There is a way to manage it. For example, there is an Active Directory method of Microsoft Corporation using the LDAP protocol.

특히, 대상 시스템이 어플리케이션인 경우, 계정을 관리하기 위하여 업체 간에 협의된 표준화된 API가 존재하지 않거나, 표준 프로토콜인 공개 인증(Oauth)이 적용되지 않은 프로그램 시스템들이 많이 있다. 이러한 프로그램 시스템에 대해서는, 해당 개별 모든 어플리케이션과 관련된 데이터베이스나 관련 파일을 분석해야 한다. 그런데, 해당 데이터베이스나 관련 파일이 암호화되어 있으면, 계정 관리를 위한 어떠한 방안도 존재하지 않는다.In particular, when the target system is an application, there are many program systems to which a standardized API negotiated between companies to manage accounts does not exist, or to which Oauth, a standard protocol, is not applied. For such a program system, it is necessary to analyze the databases or related files related to each and every application in question. However, if the database or related files are encrypted, there is no method for account management.

따라서 모든 서버, 네트워크 장비, 데이터베이스뿐만 아니라 어플리케이션에 대해서도 통합적으로 계정을 관리할 수 있는 기술이 필요하다.Therefore, technology that can manage accounts in an integrated way for all servers, network devices, databases, as well as applications is required.

한국등록특허 제10-2118380호(2020.06.04.공고)Korean Patent Registration No. 10-2118380 (2020.06.04. Announcement)

본 발명의 목적은 상술한 바와 같은 문제점을 해결하기 위한 것으로, 사용자 단말과 어플리케이션 서버 사이에 계정관리 시스템을 구비하여 어플리케이션의 계정 관리를 대행하되, 어플리케이션의 계정 관리 작업 각각을 매크로로 작성하고, 사용자의 선택에 따라 선택된 매크로를 실행시키는, 매크로 기반 어플리케이션 계정 관리 시스템을 제공하는 것이다.An object of the present invention is to solve the above-described problems, by providing an account management system between the user terminal and the application server to manage the account of the application on behalf of the application, and write each account management task of the application as a macro, and the user It is to provide a macro-based application account management system that executes the selected macro according to the selection of the user.

상기 목적을 달성하기 위해 본 발명은 하나의 사용자 단말과 적어도 1개의 어플리케이션 서버 사이에 설치되는, 매크로 기반 어플리케이션 계정 관리 시스템에 관한 것으로서, 각 사용자 단말의 사용자 계정에 대하여 사용자 인증을 수행하는 사용자 인증부; 상기 어플리케이션 서버의 각 어플리케이션에서의 계정관리 작업을 수행하는 매크로 스크립트를 사전에 저장하여 관리하는 매크로 관리부; 상기 사용자 단말로부터 상기 어플리케이션의 계정관리 작업의 요청을 접수하는 관리요청 접수부; 및, 접수된 계정관리 작업의 요청에 따라, 해당 요청에 해당하는 매크로 스크립트를 선택하여 실행시키는 계정관리 처리부를 포함하는 것을 특징으로 한다.In order to achieve the above object, the present invention relates to a macro-based application account management system installed between one user terminal and at least one application server, and a user authentication unit for performing user authentication for a user account of each user terminal. ; a macro management unit for storing and managing in advance a macro script for performing an account management operation in each application of the application server; a management request reception unit for receiving a request for an account management operation of the application from the user terminal; and an account management processing unit that selects and executes a macro script corresponding to the request in response to the received account management job request.

또, 본 발명은 매크로 기반 어플리케이션 계정 관리 시스템에 있어서, 상기 시스템은, 각 사용자의 접근 가능한 어플리케이션, 및, 해당 어플리케이션의 관리 가능한 어플리케이션 계정에 대한 정보(이하 관리권한 정보)를 저장하여 관리하는 접근권한 관리부를 더 포함하고, 상기 관리요청 접수부는 상기 관리권한 정보에 따라, 해당 사용자 계정에 허용된 어플리케이션 또는 사용가능한 어플리케이션 계정과 관련된 계정관리 작업의 요청만을 접수하도록 제한하는 것을 특징으로 한다.In addition, in the present invention, in the macro-based application account management system, the system, each user's accessible applications, and access rights for storing and managing information (hereinafter referred to as management authority information) about the application accounts manageable of the application Further comprising a management unit, wherein the management request receiving unit is characterized in that, according to the management authority information, it is characterized in that it restricts to accept only a request for an account management operation related to an application allowed to the corresponding user account or a usable application account.

또, 본 발명은 매크로 기반 어플리케이션 계정 관리 시스템에 있어서, 상기 계정관리 작업은 어플리케이션 계정을 새로 생성하는 계정생성 작업, 이미 존재하는 어플리케이션 계정의 패스워드를 변경하는 계정수정 작업, 및, 이미 존재하는 어플리케이션 계정을 삭제하는 계정삭제 작업의 종류로 구분되고, 상기 매크로 관리부는 각 어플리케이션 별로, 각 계정관리 작업의 종류별로, 매크로 스크립트를 작성하여 저장하고, 상기 계정관리 처리부는 수행할 작업의 어플리케이션과 작업 종류에 대응하는 매크로 스크립트를 선택하여, 해당 매크로 스크립트를 실행하는 것을 특징으로 한다.Further, in the present invention, in a macro-based application account management system, the account management operation includes an account creation operation for newly creating an application account, an account modification operation for changing the password of an existing application account, and an existing application account is divided into the type of account deletion operation to delete, the macro management unit writes and stores a macro script for each application, for each type of account management operation, and the account management processing unit determines the application and operation type of the operation to be performed It is characterized in that the corresponding macro script is selected and the corresponding macro script is executed.

또, 본 발명은 매크로 기반 어플리케이션 계정 관리 시스템에 있어서, 상기 매크로 관리부는 상기 매크로 스크립트에서 계정 또는 패스워드의 값을 입력하는 부분을 변수로 설정하고, 상기 계정관리 처리부는 상기 매크로 스크립트의 변수 부분을 어플리케이션 계정 또는 패스워드의 값으로 대체하여 실행시키는 것을 특징으로 한다.In addition, in the present invention, in a macro-based application account management system, the macro management unit sets a part for inputting an account or password value in the macro script as a variable, and the account management processing unit converts the variable part of the macro script into an application It is characterized in that it is executed by replacing the value of the account or password.

또, 본 발명은 매크로 기반 어플리케이션 계정 관리 시스템에 있어서, 상기 매크로 스크립트는 해당 어플리케이션 서버에 슈퍼바이저 계정으로 로그인 한 후, 계정을 생성, 수정, 또는 삭제 작업을 수행하고, 이후, 슈퍼바이저 계정에서 로그아웃 하는 명령을 포함하는 것을 특징으로 한다.In addition, in the present invention, in a macro-based application account management system, the macro script logs into the application server as a supervisor account, then creates, corrects, or deletes an account, and then logs in the supervisor account. It is characterized in that it includes an out command.

또, 본 발명은 매크로 기반 어플리케이션 계정 관리 시스템에 있어서, 상기 매크로 스크립트는 해당 어플리케이션 서버에 접속하여 계정관리 작업을 수행하기 위하여, 해당 어플리케이션 서버에서 사용자에 의해 입력되는 일련의 인터페이스 명령들 또는 어플리케이션 클라이언트 화면 상의 객체를 설정하는 명령들을 순서에 의해 조합하여 작성되는 것을 특징으로 한다.In addition, in the present invention, in a macro-based application account management system, the macro script is a series of interface commands or application client screen input by a user in the corresponding application server in order to access the corresponding application server and perform an account management operation. It is characterized in that it is written by combining commands for setting the object on the screen in order.

상술한 바와 같이, 본 발명에 따른 매크로 기반 어플리케이션 계정 관리 시스템에 의하면, 사용자 단말과 서버 사이에서 계정 관리 작업을 매크로로 작성하고 이를 실행하게 하여 계정을 관리함으로써, 서버 측의 기능을 그대로 유지하면서도, 서버 시스템의 종류에 상관 없이 통합적으로 계정을 관리할 수 있는 효과가 얻어진다.As described above, according to the macro-based application account management system according to the present invention, an account management task is created as a macro between the user terminal and the server and the account is managed by executing it, while maintaining the function of the server side as it is, The effect of integrated account management is obtained regardless of the type of server system.

도 1은 본 발명을 실시하기 위한 전체 시스템에 대한 구성도.
도 2는 본 발명의 일실시예에 따른 매크로 기반 어플리케이션 계정 관리 시스템의 구성에 대한 블록도.
도 3은 본 발명의 일실시예에 따른 매크로 스크립트를 예시한 슈도우 코드.
도 4는 본 발명의 일실시예에 따른 계정관리 작업 요청에 대한 예시 화면.
도 5는 본 발명의 일실시예에 따른 어플리케이션 클라이언트의 화면들에 대한 예시도.
1 is a block diagram of an entire system for implementing the present invention.
2 is a block diagram of a configuration of a macro-based application account management system according to an embodiment of the present invention.
3 is a pseudo code illustrating a macro script according to an embodiment of the present invention.
4 is an exemplary screen for requesting an account management operation according to an embodiment of the present invention.
5 is an exemplary diagram of screens of an application client according to an embodiment of the present invention;

이하, 본 발명의 실시를 위한 구체적인 내용을 도면에 따라서 설명한다.Hereinafter, specific contents for carrying out the present invention will be described with reference to the drawings.

또한, 본 발명을 설명하는데 있어서 동일 부분은 동일 부호를 붙이고, 그 반복 설명은 생략한다.In addition, in demonstrating this invention, the same part is attached|subjected by the same code|symbol, and the repetition description is abbreviate|omitted.

먼저, 본 발명을 실시하기 위한 전체 시스템의 구성에 대하여 도 1을 참조하여 설명한다.First, the configuration of the entire system for carrying out the present invention will be described with reference to FIG. 1 .

도 1에서 보는 바와 같이, 본 발명을 실시하기 위한 전체 시스템은 사용자 단말(10), 적어도 하나의 어플리케이션 서버(40), 및, 어플리케이션 서버(40)의 계정을 관리하는 계정관리 시스템(30)로 구성된다. 또한, 사용자 단말(10)과 계정관리 시스템(30)는 네트워크(미도시)를 통해 연결된다. 또한, 추가적으로, 필요한 데이터를 저장하는 데이터베이스(80)를 더 포함하여 구성될 수 있다. As shown in FIG. 1 , the entire system for implementing the present invention includes a user terminal 10 , at least one application server 40 , and an account management system 30 for managing accounts of the application server 40 . is composed In addition, the user terminal 10 and the account management system 30 are connected through a network (not shown). In addition, it may be configured to further include a database 80 for storing necessary data.

먼저, 사용자 단말(10)은 사용자가 사용하는 컴퓨팅 단말로서, PC, 노트북, 태플릿PC, 스마트폰, 패블릿 등이다. 또한, 사용자 단말(10)은 네트워크(미도시)를 통해 어플리케이션 서버(40) 또는 계정관리 시스템(30)에 연결할 수 있는 네트워크 기능을 보유한다. 또한, 사용자 단말(10)은 프로그램 시스템이 설치되어 실행될 수 있다.First, the user terminal 10 is a computing terminal used by a user, such as a PC, a notebook computer, a tablet PC, a smart phone, a phablet, and the like. In addition, the user terminal 10 has a network function that can be connected to the application server 40 or the account management system 30 through a network (not shown). In addition, the user terminal 10 may have a program system installed and executed.

또한, 사용자 단말(10)에는 계정관리 클라이언트(미도시)가 설치되어, 계정관리 클라이언트를 통해 계정관리 시스템(30)에 접속하여, 계정관리 작업을 수행한다. 계정관리 작업은 어플리케이션 서버(40)의 계정(또는 어플리케이션 계정)을 생성하거나, 수정하거나, 삭제하는 등의 작업을 말한다.In addition, an account management client (not shown) is installed in the user terminal 10, accesses the account management system 30 through the account management client, and performs an account management operation. The account management operation refers to an operation such as creating, modifying, or deleting an account (or application account) of the application server 40 .

또한, 사용자 단말(10)에는 어플리케이션 클라이언트(미도시)가 설치되어, 어플리케이션 클라이언트를 통해 어플리케이션 서버(40)에 접속하여, 어플리케이션 서버(40)에 제공하는 서비스를 이용한다. 어플리케이션 클라이언트(미도시)는 사용자가 어플리케이션 서버(40)에 원격 접속하여 서버의 어플리케이션 서비스를 이용하기 위한 프로그램 시스템이다. 일례로서, 통신 클라이언트는 웹 브라우저, 어플리케이션 서버의 전용 클라이언트 프로그램 시스템 등이다. 바람직하게는, 어플리케이션 클라이언트는 GUI(그래픽 사용자 인터페이스) 인터페이스 형태의 프로그램이다.In addition, an application client (not shown) is installed in the user terminal 10 , accesses the application server 40 through the application client, and uses a service provided to the application server 40 . The application client (not shown) is a program system for a user to remotely access the application server 40 and use an application service of the server. As an example, the communication client is a web browser, a dedicated client program system of an application server, or the like. Preferably, the application client is a program in the form of a GUI (graphical user interface) interface.

다음으로, 어플리케이션 서버(40)는 적어도 1개가 설치된다. 즉, 어플리케이션 서버(40)는 다수 개가 설치될 수 있다.Next, at least one application server 40 is installed. That is, a plurality of application servers 40 may be installed.

각 어플리케이션 서버(40)는 사용자 단말(10)로부터 네트워크(미도시)를 통해 접속 요청을 받고, 요청에 따라 접속을 허용하여 어플리케이션 서비스를 제공한다.Each application server 40 receives an access request from the user terminal 10 through a network (not shown), and provides an application service by allowing access according to the request.

어플리케이션 또는 어플리케이션 서비스는 기업 또는 기관의 업무 관리 시스템, 전사적 자원관리 시스템(ERP), 메일 서비스 시스템 등이다. 즉, 어플리케이션 서비스는 온라인 상에서 제공하는 서비스로서, GUI 인터페이스로 해당 서비스를 제공한다.The application or application service is a business management system of a company or institution, an enterprise resource planning system (ERP), a mail service system, and the like. That is, the application service is a service provided online, and the corresponding service is provided through a GUI interface.

특히, 어플리케이션 서비스는 관리자 등에 의해 특정한 권한을 부여받고 권한이 부여된 사용자만이 이용할 수 있는 서비스를 말한다. 이때, 권한은 어플리케이션 계정을 부여받는 것을 포함한다.In particular, the application service refers to a service that is given a specific right by an administrator or the like and can only be used by a user who has been granted the right. In this case, the authority includes receiving an application account.

즉, 어플리케이션 서버(40)는 어플리케이션 계정을 부여하고, 부여된 어플리케이션 계정을 통해서만, 해당 어플리케이션 서비스를 제공한다.That is, the application server 40 grants an application account and provides a corresponding application service only through the granted application account.

이때, 어플리케이션 계정은 계정을 관리할 수 있는 슈퍼바이저 계정과, 어플리케이션 서비스를 이용할 수 있으나 계정을 관리할 수 없는 일반 계정으로 구분된다.In this case, the application account is divided into a supervisor account that can manage the account and a general account that can use the application service but cannot manage the account.

바람직하게는, 어플리케이션 서버(40)는 슈퍼바이저 계정으로 접속되면, 계정을 관리할 수 있는 화면 또는 페이지 등 인터페이스를 제공하고, 해당 계정관리 인터페이스를 통해 계정관리 서비스를 제공한다. 계정관리는 어플리케이션 계정의 생성, 수정, 삭제 작업을 포함한다.Preferably, when the application server 40 is connected to the supervisor account, it provides an interface such as a screen or page for managing the account, and provides an account management service through the corresponding account management interface. Account management includes creation, modification, and deletion of application accounts.

또한, 어플리케이션 서버(40)는 일반 계정으로 접속하면, 계정 관리 서비스를 제공하지 않는다. 더욱 바람직하게는, 계정관리를 위한 인터페이스를 제공하지 않는다.In addition, the application server 40 does not provide an account management service when a general account is accessed. More preferably, an interface for account management is not provided.

한편, 어플리케이션 서버(40)는 서버 접속에 대하여, 어플리케이션 계정과 비밀번호를 이용하여 인증(또는 어플리케이션 계정 인증)을 수행하고, 어플리케이션 계정 인증이 통과된 경우에만 서버 접속을 허용하고, 서버의 서비스를 제공한다.On the other hand, the application server 40 performs authentication (or application account authentication) using the application account and password for server access, permits server access only when the application account authentication passes, and provides server services do.

다음으로, 계정관리 시스템(30)은 사용자 단말(10)과 어플리케이션 서버(40) 사이의 네트워크(미도시) 상에 설치되는 시스템으로서, 사용자 단말(10)의 계정관리 요청에 따라 어플리케이션 서버(40)에 접속하여 계정관리 작업을 수행한다.Next, the account management system 30 is a system installed on a network (not shown) between the user terminal 10 and the application server 40, and in response to an account management request from the user terminal 10, the application server 40 ) and perform account management.

또한, 계정관리 시스템(30)는 각 사용자에 대한 사용가능한 어플리케이션 정보(또는 어플리케이션 리스트) 등을 사전에 저장하여 관리한다. 해당 어플리케이션 정보는 관리자 등에 의해 사전에 등록된다. 관리자는 각 사용자의 권한에 따라 접근할 수 있는 어플리케이션 등을 설정한다.In addition, the account management system 30 stores and manages the available application information (or application list) for each user in advance. The corresponding application information is registered in advance by an administrator or the like. The administrator sets the applications that can be accessed according to each user's authority.

또한, 계정관리 시스템(30)는 사용자의 요청에 따라, 특정 어플리케이션에 대한 계정관리 작업을 처리한다. 계정관리 작업은 어플리케이션에 대한 생성, 수정, 삭제 작업 등이다.In addition, the account management system 30 processes an account management task for a specific application according to a user's request. Account management tasks include creation, modification, and deletion of applications.

또한, 계정관리 시스템(30)는 각 사용자에 의한 계정관리 작업의 작업 결과를 저장한다. 즉, 각 사용자의 해당 어플리케이션의 계정 정보(계정 및 비밀번호 등)를 저장해둔다.In addition, the account management system 30 stores the work results of the account management work by each user. That is, each user's account information (account and password, etc.) of the corresponding application is stored.

또한, 계정관리 시스템(30)는 어플리케이션 서버(40)의 슈퍼바이저 계정에 대한 계정 정보(계정 및 비밀번호 등)을 사전에 저장해두고, 계정관리 작업을 수행할 때, 저장된 슈퍼바이저 계정으로 접속하여 계정관리 작업을 수행한다.In addition, the account management system 30 stores account information (account and password, etc.) for the supervisor account of the application server 40 in advance, and when performing an account management operation, accesses the stored supervisor account to account perform administrative tasks;

또한, 계정관리 시스템(30)는 각 사용자에 대하여 사용자 계정을 관리하고, 사용자 계정에 대한 인증(또는 사용자 인증)을 수행한다. 즉, 계정관리 시스템(30)는 사용자 인증이 통과된 사용자에 대해서만 계정관리 작업을 수행해준다.In addition, the account management system 30 manages a user account for each user, and performs authentication (or user authentication) for the user account. That is, the account management system 30 performs an account management operation only for users who have passed user authentication.

또한, 계정관리 시스템(30)는 각 어플리케이션에 대하여, 해당 어플리케이션 서버(40)의 계정관리 작업을 매크로 스크립트로 사전에 작성하여 저장해두고, 저장된 매크로를 실행시킴으로써, 사용자 요청의 계정관리 작업을 처리한다.In addition, the account management system 30 for each application, the account management task of the corresponding application server 40 is prepared in advance as a macro script and stored, and by executing the stored macro, the account management task of the user request is processed. .

매크로 또는 매크로 스크립트는 어플리케이션 서버(40)에 접속하여 계정관리 작업을 수행하기 위하여, 사용자에 의해 입력되는 일련의 인터페이스 명령들을 순차적으로 조합한 것을 말한다. 매크로를 실행하면, 해당 매크로 또는 매크로 스크립트의 일련의 인터페이스 명령들의 조합(또는 명령 조합)을 순차적으로 다시 실행하여 반복한다. 따라서 매크로 또는 매크로 스크립트를 실행하면, 사용자가 계정관리 작업을 위해 일련의 명령들을 입력하는 것과 동일한 형태로, 해당 일련의 명령(또는 조합의 명령)들이 입력된다. 이를 통해, 계정관리 작업이 자동으로 수행된다.The macro or macro script refers to a sequential combination of a series of interface commands input by a user in order to access the application server 40 and perform an account management task. When a macro is executed, a combination (or command combination) of a series of interface commands of the corresponding macro or macro script is sequentially executed again and repeated. Accordingly, when a macro or a macro script is executed, the corresponding series of commands (or combinations of commands) are input in the same form as when the user inputs a series of commands for account management. Through this, account management work is performed automatically.

다음으로, 데이터베이스(80)는 사용자 인증 정보를 저장하는 사용자정보DB(81), 각 사용자에 대한 허용가능한 어플리케이션 정보 등을 저장하는 권한정보DB(82), 각 어플리케이션의 계정관리 작업을 수행하는 매크로 스크립트를 저장하는 매크로DB(83), 어플리케이션 서버에 대한 계정 정보 및 인증 정보를 저장하는 계정정보DB(84)로 구성된다. 그러나 상기 데이터베이스(80)의 구성은 바람직한 일실시예일 뿐이며, 구체적인 장치를 개발하는데 있어서, 접근 및 검색의 용이성 및 효율성 등을 감안하여 데이터베이스 구축이론에 의하여 다른 구조로 구성될 수 있다.Next, the database 80 includes a user information DB 81 for storing user authentication information, a permission information DB 82 for storing allowable application information for each user, and the like, and a macro for performing account management for each application. It is composed of a macro DB 83 for storing scripts, and an account information DB 84 for storing account information and authentication information for the application server. However, the configuration of the database 80 is only a preferred embodiment, and in developing a specific device, it may be configured in a different structure according to the database construction theory in consideration of the ease and efficiency of access and search.

다음으로, 본 발명의 일실시예에 따른 매크로 기반 어플리케이션 계정 관리 시스템(30)의 세부 구성에 대하여 도 2를 참조하여 설명한다.Next, a detailed configuration of the macro-based application account management system 30 according to an embodiment of the present invention will be described with reference to FIG. 2 .

도 2에서 보는 바와 같이, 본 발명의 일실시예에 따른 계정관리 시스템(30)은 사용자 인증을 수행하는 사용자 인증부(31), 각 사용자의 사용가능한 어플리케이션 정보를 저장하여 관리하는 접근권한 관리부(32), 각 어플리케이션 서버에 대한 계정관리 작업을 수행하는 매크로를 저장하는 매크로 관리부(33), 사용자로부터 어플리케이션 계정에 대한 관리 요청을 접수하는 관리요청 접수부(34), 및, 어플리케이션에 대한 계정관리를 처리하는 계정관리 처리부(35)로 구성된다.As shown in Fig. 2, the account management system 30 according to an embodiment of the present invention includes a user authentication unit 31 for performing user authentication, and an access right management unit for storing and managing usable application information of each user ( 32), a macro management unit 33 for storing a macro for performing an account management operation for each application server, a management request receiving unit 34 for receiving a management request for an application account from a user, and account management for the application It is composed of an account management processing unit 35 for processing.

먼저, 사용자 인증부(31)는 각 사용자에 대하여 사용자 계정을 관리하고, 사용자 계정에 대한 인증(또는 사용자 인증)을 수행한다.First, the user authentication unit 31 manages a user account for each user, and performs authentication (or user authentication) on the user account.

바람직하게는, 사용자 계정에 대한 인증 또는 사용자 인증은 아이디/패스워드 방식, 생체 인증 등 다양한 인증 방식을 적용할 수 있다. 또한, 사용자 계정은 사용자 아이디에 의해 식별된다.Preferably, various authentication methods such as an ID/password method and biometric authentication may be applied for authentication or user authentication for a user account. In addition, a user account is identified by a user ID.

사용자 계정은 앞서 설명된 어플리케이션 계정과 다르다. 즉, 어플리케이션 계정은 어플리케이션 서버(40)에서 등록되어 관리되는 계정이고, 사용자 계정은 계정관리 시스템(30)에서 등록되어 관리되는 계정이다. 또한, 사용자 계정은 각 사용자에 대해 고유하게 부여되는 계정이고, 어플리케이션 계정은 다수의 사용자에 의해 공유될 수 있다.The user account is different from the application account described above. That is, the application account is an account registered and managed in the application server 40 , and the user account is an account registered and managed in the account management system 30 . In addition, the user account is an account uniquely granted to each user, and the application account may be shared by a plurality of users.

예를 들어, 사용자 A의 사용자 계정은 userA이고, 사용자 B의 사용자 계정은 userB라고 가정한다. 이때, 사용자 A는 계정관리 시스템(30)에서 사용자 계정 userA로 인증 받고, 어플리케이션 계정인 hiware 계정으로 어플리케이션 서버로 계정접근(또는 로그인)할 수 있다. 또한, 사용자 B는 사용자 A의 상위 관리자로서, 계정관리 시스템(30)에서 사용자 계정 userB로 인증 받고, 어플리케이션 계정인 hiware 계정으로 어플리케이션 서버(40)에 접속할 수 있다. 결과적으로, 사용자 A와 B는 모두 동일한 어플리케이션 계정(hiware 계정)에 접속할 수 있다. 즉, 사용자 A와 B는 각각 서로 다른 사용자 계정을 가지나, 동일한 어플리케이션 계정으로 접속할 수 있다.For example, suppose that user A's user account is userA, and user B's user account is userB. At this time, the user A may be authenticated as the user account userA in the account management system 30 and access (or log in) to the application server with the hiware account, which is the application account. In addition, user B may be authenticated as a user account userB in the account management system 30 as an upper level administrator of user A, and may access the application server 40 with a hiware account that is an application account. As a result, both users A and B can access the same application account (hiware account). That is, although users A and B have different user accounts, they can access the same application account.

다음으로, 접근권한 관리부(32)는 각 사용자의 접근 가능한 어플리케이션, 관리 가능한 어플리케이션 계정 등 관리권한 정보를 저장하여 관리한다.Next, the access authority management unit 32 stores and manages management authority information such as each user's accessible applications and manageable application accounts.

즉, 관리권한 정보는 각 사용자 또는 각 사용자 계정이 접근할 수 있는 어플리케이션(또는 어플리케이션 서버), 또는, 해당 어플리케이션에서 관리 가능한 어플리케이션 계정 등이다.That is, the management authority information is an application (or application server) that each user or each user account can access, or an application account manageable by the corresponding application.

관리권한 정보는 관리자 등에 의해 사전에 등록되어 저장된다.Management authority information is registered and stored in advance by an administrator or the like.

다음으로, 매크로 관리부(33)는 각 어플리케이션에 대한 계정관리 작업을 수행하는 매크로 스크립트를 사전에 저장하여 관리한다.Next, the macro management unit 33 stores and manages macro scripts for performing account management for each application in advance.

매크로 또는 매크로 스크립트는 어플리케이션 서버에 접속하여 계정관리 작업을 수행하기 위하여, 사용자에 의해 입력되는 일련의 인터페이스 명령들을 순서에 의해 조합한 것을 말한다. 매크로 스크립트를 실행하면, 해당 매크로 스크립트의 일련의 인터페이스 명령들의 조합(또는 명령 조합)을 순차적으로 다시 실행하여 반복한다. 따라서 매크로를 실행하면, 사용자가 계정관리 작업을 위해 일련의 명령들을 입력하는 것과 동일한 형태로, 해당 일련의 명령(또는 조합의 명령)들이 입력된다. 이를 통해, 계정관리 작업이 자동으로 수행된다.A macro or macro script refers to a combination of a series of interface commands input by a user in order to access an application server and perform an account management task. When a macro script is executed, a combination (or command combination) of a series of interface commands of the macro script is sequentially executed again and repeated. Accordingly, when the macro is executed, the corresponding series of commands (or combinations of commands) are input in the same form as when the user inputs a series of commands for account management. Through this, account management work is performed automatically.

인터페이스 명령은 사용자 인터페이스에 의해 입력되는 명령들을 말한다. 즉, 인터페이스 명령은, 사용자가 계정관리 작업을 수행하기 위하여 어플리케이션 서버에 접속하여 해당 화면에서 작업을 수행하기 위해 입력하는 명령들을 말한다. 바람직하게는, 인터페이스 명령은 GUI 인터페이스에 의한 명령들로 구성된다.The interface command refers to commands input by the user interface. That is, the interface commands refer to commands that a user inputs to access an application server to perform an account management job and perform a job on a corresponding screen. Preferably, the interface command consists of commands by way of a GUI interface.

바람직하게는, 인터페이스 명령은 어플리케이션 클라이언트(미도시) 상의 명령이다. 어플리케이션 서버(40)는 서버와 클라이언트 시스템으로 서비스를 제공한다. 즉, 클라이언트 측에는 클라이언트 프로그램이 실행되어, 클라이언트 측에서는 클라이언트 화면을 통해 인터페이스가 제공된다. 따라서 사용자가 명령을 입력하는 화면은 클라이언트 인터페이스 화면이다.Preferably, the interface command is a command on an application client (not shown). The application server 40 provides services to a server and a client system. That is, the client program is executed on the client side, and an interface is provided on the client side through the client screen. Therefore, the screen where the user enters the command is the client interface screen.

예를 들어, 계정생성 작업의 매크로 스크립트는 다음과 같은 명령들이 순차적으로 조합되어 구성될 수 있다. 이때, 어플리케이션 클라이언트는 이미 실행된 것으로 가정한다.For example, the macro script of the account creation operation may be configured by sequentially combining the following commands. In this case, it is assumed that the application client has already been executed.

(1) 로그인 화면으로 이동하는 명령(1) Command to go to the login screen

(2) 어플리케이션 계정의 입력 박스를 클릭하는 명령(2) Command to click the input box of the application account

(3) 해당 입력 박스에 슈퍼바이저 계정을 입력하는 명령(3) A command to enter the supervisor account in the corresponding input box

(4) 패스워드를 입력하는 입력 박스를 클릭하는 명령(4) Command to click the input box to enter the password

(5) 해당 입력 박스에 슈퍼바이저 계정의 패스워드를 입력하는 명령(5) A command to input the password of the supervisor account in the corresponding input box

(6) 확인 버튼을 입력하는 명령(6) Command to enter the OK button

(7) 계정관리를 위한 화면 또는 계정관리 페이지로 이동하는 명령(7) Commands to move to the account management screen or account management page

(8) 계정 생성 버튼을 클릭하는 명령(8) Command to click the Create Account button

(9) 새로운 어플리케이션 계정을 입력하는 박스를 클릭하는 명령(9) Command to click the box to enter a new application account

(10) 해당 입력 박스에 새로운 어플리케이션 계정을 입력하는 명령(10) A command to enter a new application account in the corresponding input box

(11) 생성 버튼을 클릭하는 명령(11) command to click the create button

(12) 슈퍼바이저 계정에서 로그아웃 버튼을 클릭하는 명령(12) Command to click logout button in supervisor account

또 다른 실시예로서, 각 어플리케이션 클라이언트의 화면 상의 객체를 인식하여, 해당 객체에 대한 명령을 수행하여 매크로 스크립트를 작성할 수 있다.As another embodiment, a macro script may be written by recognizing an object on the screen of each application client and executing a command on the corresponding object.

도 3은 어플리케이션 계정 생성을 수행하는 매크로 스크립트의 슈도우 코드를 예시한 것이다. 즉, 도 3에서 보는 바와 같이, 어플리케이션 클라이언트의 화면 상의 객체 또는 객체명을 식별하여, 해당 객체에 특정 행위를 요청하는 명령(이하 객체행위 명령)으로 매크로 스크립트를 작성할 수 있다.3 illustrates a pseudo code of a macro script for generating an application account. That is, as shown in FIG. 3 , it is possible to identify an object or object name on the screen of the application client, and write a macro script as a command for requesting a specific action on the corresponding object (hereinafter referred to as an object action command).

객체행위 명령은 운영체제에서 제공하는 명령 또는 함수(API 함수) 또는 운영체제의 API 함수를 이용한 플랫폼 프로그램에 의해 처리되는 명령이다.The object behavior command is a command or function (API function) provided by the operating system or a command processed by the platform program using the API function of the operating system.

도 3의 예에서, 객체행위 명령 set_text, click_button 등은 오토핫키 프로그램에서 제공되는 함수이다. set_text는 화면 상의 객체(객체명에 해당하는 객체)의 텍스트 값(박스 내의 입력값)을 설정하는 함수(객체행위 명령)이고, click_button은 화면 상의 객체를 클릭하는 함수(또는 객체행위 명령)이다.In the example of FIG. 3 , the object action commands set_text, click_button, and the like are functions provided by the AutoHotkey program. set_text is a function (object action command) that sets the text value (input value in the box) of an object on the screen (object corresponding to the object name), and click_button is a function that clicks an object on the screen (or object action command).

한편, 매크로 관리부(33)는 매크로 스크립트의 계정 또는 패스워드를 입력하는 명령에서는 계정 또는 패스워드를 인수(argument) 또는 변수를 정의하여, 인수 값에 따라 계정명 또는 패스워드를 달리 입력할 수 있는 명령으로 설정한다. 즉, 계정 값이나 패스워드 값을 입력하는 명령에서 계정 값이나 패스워드 값의 특정 값 대신, 인수 또는 변수로 설정한다.On the other hand, the macro management unit 33 defines the account or password as an argument or variable in the command for inputting the account or password of the macro script, and sets the account or password as a command capable of inputting a different account name or password according to the argument value. do. That is, in the command to input the account value or password value, set it as an argument or variable instead of a specific value of the account value or password value.

도 3의 예에서, 인수 또는 변수 strAccountID와 strPwd는 새로 생성할 어플리케이션의 어플리케이션 계정과 패스워드를 나타낸다. "set_text ( <계정박스 객체명>, strAccountID )"의 인터페이스 명령(또는 명령문)은 strAccountID를 변수 또는 인수로 사용하기 때문에, 사용자가 입력하는 값에 따라 계정 아이디가 그때 그때 달라진다.In the example of FIG. 3 , the arguments or variables strAccountID and strPwd indicate an application account and password of a newly created application. The interface command (or statement) of "set_text ( <account box object name>, strAccountID )" uses strAccountID as a variable or argument, so the account ID changes depending on the value entered by the user.

또한, 각 매크로 스크립트는 해당 스크립트 내에서 초기에 슈퍼바이저 계정으로 로그인 하는 과정 및, 로그아웃 하는 과정이 포함되어 작성(생성)된다. 즉, 각 매크로 스크립트는 계정관리 작업을 수행할 때, 슈퍼바이저 계정으로 로그인 하여, 슈퍼바이저 계정에서 해당 작업을 수행하고, 수행한 후 로그아웃 한다.In addition, each macro script is written (created) including the process of initially logging in to the supervisor account and logging out within the script. That is, each macro script logs in with the supervisor account when performing the account management task, performs the task in the supervisor account, and logs out after performing the task.

이때, 바람직하게는, 해당 매크로 스크립트에서, 슈퍼바이저 계정이나 패스워드를 입력하는 명령은 계정이나 패스워드는 인수 또는 변수로 설정된다. 즉, 특정 계정 값이나 패스워드 값 대신 인수 또는 변수로 대체되어 설정된다.At this time, preferably, in the macro script, the command for inputting the supervisor account or password is set as an argument or variable. That is, it is set by replacing a specific account value or password value with an argument or variable.

또한, 매크로 관리부(33)는 각 어플리케이션 별로, 각 계정관리 작업별로 매크로를 각각 생성하여 저장한다. 즉, 계정생성 작업, 계정수정 작업, 계정삭제 작업 등 각각의 작업 종류별로 매크로 또는 매크로 스크립트를 작성하여 저장한다. 또한, 각 어플리케이션 별로 각각 생성, 수정, 삭제 작업의 매크로 스크립트를 별도로 작성하여 저장한다.Also, the macro management unit 33 creates and stores macros for each application and for each account management task. That is, a macro or macro script is created and saved for each type of work, such as account creation, account modification, and account deletion. In addition, each application creates, edits, and deletes macro scripts for each application separately and stores them.

다음으로, 관리요청 접수부(34)는 사용자 또는 사용자 단말(10)로부터 어플리케이션 또는 어플리케이션 서버에 대한 계정관리 작업의 요청을 접수한다. 도 4는 사용자에 의해 계정관리가 요청되는 과정을 예시하고 있다.Next, the management request receiving unit 34 receives a request for an account management operation for the application or the application server from the user or the user terminal (10). 4 illustrates a process in which account management is requested by a user.

여기서, 관리되는 계정 작업은 어플리케이션 계정에 대한 작업이며, 이하에서 설명의 편의를 위하여 계정이라고 기재하나, 해당 계정은 사용자 계정이 아닌, 어플리케이션 계정을 나타낸다.Here, the managed account task is a task for the application account. Hereinafter, it will be described as an account for convenience of description, but the corresponding account represents an application account, not a user account.

바람직하게는, 관리요청 접수부(34)는 어플리케이션의 종류가 다수인 경우, 계정관리 작업을 수행할 어플리케이션을 선택받아 입력받는다. 특히, 관리요청 접수부(34)는 관리권한 정보에 의해 해당 사용자 또는 사용자 계정에 허용된 어플리케이션에 대해서만 선택받아 입력받을 수 있다. 더욱 바람직하게는, 도 4a의 로그인페이지에서 로그인을 하고 도 4b와 같이, 관리요청 접수부(34)는 해당 사용자 또는 사용자 계정에서 접근 가능한(또는 사용 가능한) 어플리케이션들을 리스트로 표시하고, 표시된 어플리케이션 중에서 하나의 어플리케이션을 선택받아 입력받는다.Preferably, when there are multiple types of applications, the management request reception unit 34 selects and receives an application for performing an account management operation. In particular, the management request reception unit 34 may receive input by selecting only the applications permitted for the corresponding user or user account according to the management authority information. More preferably, after logging in from the login page of Fig. 4a, as shown in Fig. 4b, the management request reception unit 34 displays a list of applications accessible (or usable) from the corresponding user or user account, and selects one of the displayed applications. Select the application of and receive input.

또한, 관리요청 접수부(34)는 해당 어플리케이션에 대해 수행할 계정관리 작업의 종류, 및, 해당 작업에 필요한 인수(argument)(또는 변수)의 인수값(또는 변수값)을 입력받는다. 계정관리 작업은 계정생성 작업, 계정수정 작업, 계정삭제 작업 등으로 구분된다.In addition, the management request receiving unit 34 receives an argument value (or variable value) of the type of account management task to be performed for the corresponding application, and an argument (or variable) required for the corresponding task. Account management work is divided into account creation work, account modification work, account deletion work, and the like.

계정생성 작업은 새로운 계정을 생성하는 작업을 말하고, 계정생성 작업에 필요한 인수는 생성할 계정 이름 또는 계정 아이디와, 새로 설정하려는 계정 패스워드이다.The account creation operation refers to the operation of creating a new account, and the arguments required for the account creation operation are the account name or account ID to be created and the account password to be newly set.

또한, 계정삭제 작업은 해당 계정을 삭제하는 작업을 말한다. 계정 삭제 작업은 별도의 인수가 필요하지 않는다.In addition, the account deletion operation refers to the operation of deleting the corresponding account. Account deletion does not require a separate argument.

또한, 계정수정 작업은 해당 어플리케이션 계정에 대한 패스워드를 변경하는 작업을 말한다. 계정수정 작업에 필요한 인수는 변경할 패스워드(새로운 패스워드)이다. 또는, 바람직하게는, 계정수정 작업은 종래에 패스워드를 초기화 하고, 새로운 패스워드로 설정하는 작업이다.In addition, the account modification operation refers to the operation of changing the password for the corresponding application account. The argument required for account modification is the password to be changed (new password). Or, preferably, the account modification operation is the operation of initializing a password and setting a new password in the prior art.

또한, 관리요청 접수부(34)는 사전에 정의된(저장된) 관리권한 정보에 따라, 해당 사용자 또는 사용자 계정에 부여된 어플리케이션 계정에 대해서만 관리 작업요청을 접수한다.In addition, the management request reception unit 34 receives a management operation request only for the user or the application account assigned to the user account according to the previously defined (stored) management authority information.

바람직하게는, 도 4b와 같이, 관리요청 접수부(34)는 사전에 저장된 관리권한 정보를 참조하여, 해당 어플리케이션에서 사용가능한 어플리케이션 계정들을 리스트로 표시하고, 해당 리스트에서 어플리케이션 계정을 선택하도록 제한한다. 특히, 사용가능한 어플리케이션 계정들과, 추가 명령(추가 버튼 등)을 표시하여, 기존의 어플리케이션 계정이나, 새로 생성하는 경우 추가 명령을 선택적으로 입력할 수 있도록 제공한다.Preferably, as shown in Fig. 4b, the management request reception unit 34 refers to the management authority information stored in advance, displays the application accounts usable in the corresponding application as a list, and restricts the selection of the application account from the list. In particular, by displaying usable application accounts and additional commands (such as an add button), it is possible to selectively input an existing application account or an additional command when a new one is created.

또한, 도 4c와 같이, 관리요청 접수부(34)는 어플리케이션 계정의 계정관리 작업에 필요한 계정 아이디나 패스워드 등을 입력받을 수 있다.Also, as shown in FIG. 4C , the management request reception unit 34 may receive an account ID or password required for an account management operation of an application account.

다음으로, 계정관리 처리부(35)는 접수된 계정관리 작업의 요청에 따라, 해당 요청에 해당하는 매크로 스크립트를 선택하여, 해당 매크로 스크립트를 실행시킨다.Next, the account management processing unit 35 selects a macro script corresponding to the request according to the received account management job request, and executes the corresponding macro script.

특히, 계정관리 처리부(35)는 어플리케이션 클라이언트를 실행시켜, 어플리케이션 클라이언트의 인터페이스 화면을 대상으로 해당 매크로 스크립트를 실행시킨다. 즉, 각 매크로 스크립트는 실행되는 어플리케이션 클라이언트의 인터페이스 화면 상에서 인터페이스를 위한 명령들을 수행하는 것이다.In particular, the account management processing unit 35 executes the application client to execute the corresponding macro script on the interface screen of the application client. That is, each macro script executes commands for the interface on the interface screen of the application client being executed.

어플리케이션 클라이언트는 사용자 단말(10)에서 실행되는 것과 같은 클라이언트 프로그램으로서, 어플리케이션 서버(40)와 연동하여 서버-클라이언트 시스템으로 작동된다. 한편, 바람직하게는, 계정관리 처리부(35)는 어플리케이션 클라이언트가 실행될 수 있는 운영체제를 에뮬레이션 하여 어플리케이션 클라이언트를 실행시키거나, 계정관리 시스템(30)의 운영체제에서 실행가능한 어플리케이션 클라이언트를 실행시킨다.The application client is a client program as executed in the user terminal 10 , and operates as a server-client system in conjunction with the application server 40 . On the other hand, preferably, the account management processing unit 35 emulates an operating system in which the application client can be executed to execute the application client, or executes an application client executable in the operating system of the account management system 30 .

또한, 계정관리 처리부(35)는 작업 요청시 입력받은 어플리케이션 계정이나 패스워드 등을 해당 매크로 스크립트의 인수(argument)(또는 변수)에 인수값(또는 변수값)으로 대체하여, 해당 매크로 스크립트를 실행시킨다.In addition, the account management processing unit 35 replaces the application account or password input at the time of the job request with an argument value (or variable value) for an argument (or variable) of the corresponding macro script, and executes the corresponding macro script. .

앞서 매크로 스크립트는 각 어플리케이션의 각 작업 종류별로 작성되어 저장된다. 따라서 작업 요청에 의한 해당 어플리케이션과 해당 어플리케이션의 작업 종류에 해당하는 매크로 스크립트를 검색할 수 있다. 검색된 매크로 스크립트를 실행시킨다.Previously, macro scripts were created and saved for each task type of each application. Accordingly, it is possible to search for the corresponding application according to the work request and the macro script corresponding to the type of work of the corresponding application. Executes the searched macro script.

이때, 매크로 스크립트 내에 존재하는 인수 또는 변수를, 요청시 입력받은 계정이나 패스워드로 대체하여, 해당 매크로 스크립트를 실행시킨다. 즉, 입력받은 계정이나 패스워드가 인수값 또는 변수값이 된다.At this time, the arguments or variables existing in the macro script are replaced with the account or password input when requested, and the corresponding macro script is executed. That is, the input account or password becomes the argument or variable value.

또한, 각 매크로 스크립트에서 슈퍼바이저 계정으로 로그인하는 과정이 포함된 경우, 해당 슈퍼바이저 계정이나 패스워드의 변수는 사전에 저장된 슈퍼바이저의 계정이나 패스워드 값으로 대체되어 실행된다.In addition, if the process of logging in with a supervisor account is included in each macro script, the variables of the supervisor account or password are replaced with the values of the supervisor account or password stored in advance and executed.

이를 위해, 계정관리 처리부(35)는 슈퍼바이저 계정에 대한 계정 및, 패스워드 값을 사전에 저장해둔다.To this end, the account management processing unit 35 stores the account and password values for the supervisor account in advance.

또한, 계정관리 처리부(35)는 각 어플리케이션 계정 및 해당 계정의 패스워드를 저장하고, 계정관리 작업에 의해 계정 및 패스워드가 변경되면, 변경된 결과로 저장된 계정 및 패스워드를 갱신한다.In addition, the account management processing unit 35 stores each application account and password of the corresponding account, and when the account and password are changed by account management work, the account and password stored as a result of the change are updated.

또한, 매크로 스크립트에서 기존 계정 및 패스워드의 변수가 있는 경우, 해당 변수를 저장된 계정 및 패스워드로 대체하여, 해당 매크로 스크립트를 실행한다.In addition, if there are variables of the existing account and password in the macro script, the corresponding variables are replaced with the saved account and password, and the corresponding macro script is executed.

요약하면, 매크로 스크립트 내에서, 변수로 설정되는 부분은 계정이나 패스워드를 입력하는 부분이다. 계정관리 처리부(35)는 변수 부분을 실제 계정 값이나 패스워드 값으로 대체하여 실행시킨다. 이때, 대체되는 계정 값이나 패스워드 값은 요청시 입력받는 계정이나 패스워드 값, 사전에 저장된 슈퍼바이저 계정이나 패스워드 값, 또는, 저장된 기존의 계정이나 패스워드 값 등이다.In summary, in the macro script, the part set as a variable is the part to input the account or password. The account management processing unit 35 replaces the variable part with an actual account value or password value and executes it. In this case, the replaced account value or password value is an account or password value input when requested, a supervisor account or password value stored in advance, or an existing stored account or password value.

계정관리가 처리되는 과정이 도 3 및 도 5에 도시되고 있다. 도 5는 계정관리를 위한 어플리케이션 클라이언트의 인터페이스 화면을 나타내고, 도 3은 각 화면에서의 인터페이스 명령들(또는 객체행위 명령들)의 매크로 스크립트(신규 계정을 신설하는 매크로 스크립트)를 나타내고 있다. 특히, 도 3의 매크로 스크립트는 새로운 계정을 신설하는 매크로이다.A process in which account management is processed is shown in FIGS. 3 and 5 . 5 shows an interface screen of an application client for account management, and FIG. 3 shows a macro script (a macro script for establishing a new account) of interface commands (or object action commands) on each screen. In particular, the macro script of FIG. 3 is a macro for creating a new account.

먼저, 도 3과 같이, 매크로 스크립트는 어플리케이션 클라이언트 프로그램을 실행시킨다. 매크로 스크립트에 어플리케이션 클라이언트를 실행하는 명령문을 삽입하지 않을 수 있다. 이 경우, 계정관리 처리부(35)는 어플리케이션 클라이언트를 실행시킨 후, 매크로 스크립트를 실행시킨다.First, as shown in Fig. 3, the macro script executes the application client program. You can avoid inserting statements that run the application client in the macro script. In this case, the account management processing unit 35 executes the application client and then executes the macro script.

어플리케이션 클라이언트가 실행되면, 도 5a와 같은 로그인 화면이 나타난다. 이때, 매크로 스크립트는 슈퍼바이저 계정으로 로그인 한다. 즉, "set_text ( <계정박스 객체명>, “admin” ) ..." 등은 도 5a의 로그인 화면에서 실행되는 인터페이스 명령들이다.When the application client is executed, a login screen as shown in FIG. 5A appears. At this time, the macro script logs in with the supervisor account. That is, “set_text (<account box object name>, “admin” ) ...” etc. are interface commands executed on the login screen of FIG. 5A .

도 5a의 화면에서, 로그인 버튼이 클릭되면, 도 5b와 같은 해당 계정의 홈 화면으로 접속한다. 또한, 도 5b의 <계정관리 버튼>이 클릭되면, 도 5c의 계정관리 화면으로 이동된다. 또한, 도 5c의 계정관리 화면에서 추가(+) 버튼이 클릭되면, 도 5d의 새로운 계정 생성 화면으로 이동된다. 도 5d의 계정 생성 화면에서, 계정 이름, 패스워드 등을 입력하는 인터페이스 명령(명령문)들이 수행되어, 계정이 생성된다.When the login button is clicked on the screen of FIG. 5A, the home screen of the corresponding account as shown in FIG. 5B is accessed. Also, when the <Account Management button> of FIG. 5B is clicked, it moves to the account management screen of FIG. 5C. In addition, when the Add (+) button is clicked on the account management screen of FIG. 5C , it moves to the new account creation screen of FIG. 5D . In the account creation screen of FIG. 5D , interface commands (commands) for inputting an account name, a password, etc. are executed to create an account.

상기와 같은 구성에 의해, 본 발명은 어플리케이션 계정을 통제를 위해서 각 어플리케이션 별로 계정을 가지고 있는 데이터베이스나 파일의 데이터를 분석하거나 API를 만들어서 연동하지 않아도 된다. 또한, 본 발명은 어떠한 어플리케이션이라도 사용자가 어플리케이션 계정을 제어하는 행위를 모방하여 매크로 스크립트를 만들어서 간단하게 어플리케이션 계정을 제어할 수 있다.According to the above configuration, the present invention does not need to analyze data of a database or file having an account for each application or to create an API to interlock application accounts in order to control the application accounts. In addition, according to the present invention, any application can control the application account simply by creating a macro script by imitating the action of the user controlling the application account.

이상, 본 발명자에 의해서 이루어진 발명을 상기 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시 예에 한정되는 것은 아니고, 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다.As mentioned above, the invention made by the present inventors has been described in detail according to the above embodiments, but the present invention is not limited to the above embodiments, and various modifications can be made without departing from the gist of the present invention.

10 : 사용자 단말 20 : 관리자 단말
30 : 계정관리 시스템 31 : 사용자 인증부
32 : 접근권한 관리부 33 : 매크로 관리부
34 : 관리요청 접수부 35 : 계정관리 처리부
40 : 어플리케이션 서버 80 : 데이터베이스
10: user terminal 20: administrator terminal
30: account management system 31: user authentication unit
32: access authority management unit 33: macro management unit
34: management request reception unit 35: account management processing unit
40: application server 80: database

Claims (6)

하나의 사용자 단말과 적어도 1개의 어플리케이션 서버 사이에 설치되는, 매크로 기반 어플리케이션 계정 관리 시스템에 있어서,
각 사용자 단말의 사용자 계정에 대하여 사용자 인증을 수행하는 사용자 인증부;
각 사용자 계정의 접근 가능한 어플리케이션, 및, 해당 어플리케이션의 관리 가능한 어플리케이션 계정에 대한 정보(이하 관리권한 정보)를 저장하여 관리하는 접근권한 관리부;
상기 어플리케이션 서버의 각 어플리케이션에서의 계정관리 작업을 수행하는 매크로 스크립트를 사전에 저장하여 관리하는 매크로 관리부;
상기 사용자 단말로부터 상기 어플리케이션의 계정관리 작업의 요청을 접수하는 관리요청 접수부; 및,
접수된 계정관리 작업의 요청에 따라, 해당 요청에 해당하는 매크로 스크립트를 선택하여 실행시키는 계정관리 처리부를 포함하고,
상기 관리요청 접수부는 상기 관리권한 정보에 따라, 해당 사용자 계정에 허용된 어플리케이션 또는 사용가능한 어플리케이션 계정과 관련된 계정관리 작업의 요청만을 접수하도록 제한하고,
상기 매크로 스크립트는 해당 어플리케이션 서버에 접속하여 계정관리 작업을 수행하기 위하여, 해당 어플리케이션 서버에서 사용자에 의해 입력되는 일련의 인터페이스 명령들 또는 어플리케이션 클라이언트 화면 상의 객체를 설정하는 명령들을 순서에 의해 조합하여 작성되고,
상기 계정관리 처리부는 상기 사용자 인증부에 의해 사용자 계정에 대한 사용자 인증이 통과된 사용자에 대해서만 계정관리 작업을 수행해주고,
상기 사용자 계정은 계정 관리 시스템에서 등록되어 관리되는 계정이고, 상기 어플리케이션 계정은 상기 어플리케이션 서버에서 등록되어 관리되는 계정인 것을 특징으로 하는 매크로 기반 어플리케이션 계정 관리 시스템.
In the macro-based application account management system installed between one user terminal and at least one application server,
a user authentication unit for performing user authentication for a user account of each user terminal;
an access authority management unit for storing and managing information (hereinafter referred to as management authority information) on an accessible application of each user account, and an application account manageable of the corresponding application;
a macro management unit for storing and managing in advance a macro script for performing an account management operation in each application of the application server;
a management request reception unit for receiving a request for an account management operation of the application from the user terminal; and,
Includes an account management processing unit that selects and executes a macro script corresponding to the request according to the request of the received account management operation,
The management request reception unit limits to receive only the request for account management operation related to the application allowed to the corresponding user account or the available application account according to the management authority information,
The macro script is written by sequentially combining a series of interface commands input by the user in the application server or commands for setting objects on the application client screen in order to access the application server and perform account management, ,
The account management processing unit performs an account management operation only for users who have passed user authentication for a user account by the user authentication unit,
The user account is an account registered and managed in an account management system, and the application account is an account registered and managed by the application server.
삭제delete 제1항에 있어서,
상기 계정관리 작업은 어플리케이션 계정을 새로 생성하는 계정생성 작업, 이미 존재하는 어플리케이션 계정의 패스워드를 변경하는 계정수정 작업, 및, 이미 존재하는 어플리케이션 계정을 삭제하는 계정삭제 작업의 종류로 구분되고,
상기 매크로 관리부는 각 어플리케이션 별로, 각 계정관리 작업의 종류별로, 매크로 스크립트를 작성하여 저장하고,
상기 계정관리 처리부는 수행할 작업의 어플리케이션과 작업 종류에 대응하는 매크로 스크립트를 선택하여, 해당 매크로 스크립트를 실행하는 것을 특징으로 하는 매크로 기반 어플리케이션 계정 관리 시스템.
The method of claim 1,
The account management task is divided into an account creation task for creating a new application account, an account modification task for changing the password of an existing application account, and an account deletion task for deleting an existing application account,
The macro management unit writes and stores a macro script for each application, for each type of account management task,
The account management processor selects a macro script corresponding to the type of application and the type of work to be performed, and executes the macro script.
제1항에 있어서,
상기 매크로 관리부는 상기 매크로 스크립트에서 계정 또는 패스워드의 값을 입력하는 부분을 변수로 설정하고,
상기 계정관리 처리부는 상기 매크로 스크립트의 변수 부분을 어플리케이션 계정 또는 패스워드의 값으로 대체하여 실행시키는 것을 특징으로 하는 매크로 기반 어플리케이션 계정 관리 시스템.
According to claim 1,
The macro management unit sets a variable for inputting an account or password value in the macro script,
The account management processing unit is a macro-based application account management system, characterized in that the execution by replacing the variable part of the macro script with the value of the application account or password.
제4항에 있어서,
상기 매크로 스크립트는 해당 어플리케이션 서버에 슈퍼바이저 계정으로 로그인 한 후, 계정을 생성, 수정, 또는 삭제 작업을 수행하고, 이후, 슈퍼바이저 계정에서 로그아웃 하는 명령을 포함하는 것을 특징으로 하는 매크로 기반 어플리케이션 계정 관리 시스템.
5. The method of claim 4,
The macro script is a macro-based application account, characterized in that it includes a command to log in to the application server as a supervisor account, create, modify, or delete an account, and then log out from the supervisor account. management system.
삭제delete
KR1020210056781A 2021-04-30 2021-04-30 A macro-based application account management system KR102346480B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210056781A KR102346480B1 (en) 2021-04-30 2021-04-30 A macro-based application account management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210056781A KR102346480B1 (en) 2021-04-30 2021-04-30 A macro-based application account management system

Publications (1)

Publication Number Publication Date
KR102346480B1 true KR102346480B1 (en) 2022-01-03

Family

ID=79348310

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210056781A KR102346480B1 (en) 2021-04-30 2021-04-30 A macro-based application account management system

Country Status (1)

Country Link
KR (1) KR102346480B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120068863A (en) * 2009-08-13 2012-06-27 구글 인코포레이티드 Event-triggered server-side macros
KR102118380B1 (en) 2019-11-08 2020-06-04 주식회사 넷앤드 An access control system of controlling server jobs by users
KR102176324B1 (en) * 2020-03-19 2020-11-10 주식회사 이글루시큐리티 Automatic Target Recognition And Screening System For Security Vulnerability Check and Its Method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120068863A (en) * 2009-08-13 2012-06-27 구글 인코포레이티드 Event-triggered server-side macros
KR102118380B1 (en) 2019-11-08 2020-06-04 주식회사 넷앤드 An access control system of controlling server jobs by users
KR102176324B1 (en) * 2020-03-19 2020-11-10 주식회사 이글루시큐리티 Automatic Target Recognition And Screening System For Security Vulnerability Check and Its Method

Similar Documents

Publication Publication Date Title
CN113239344B (en) Access right control method and device
JP7015916B2 (en) Computer automation methods, computer programs, and systems to support the management of applications for clients
US7529873B2 (en) Determination of access rights to information technology resources
US8789152B2 (en) Method for managing authentication procedures for a user
CN108351807B (en) Event management to maintain control of restricted data in a cloud computing environment
CN108351771B (en) Maintaining control over restricted data during deployment to a cloud computing environment
US20100281528A1 (en) Methods and systems for generating and delivering an interactive application delivery store
US20120266228A1 (en) Secure management of user rights during accessing of external systems
US11914687B2 (en) Controlling access to computer resources
US11556362B2 (en) Robotic process automation system with device user impersonation
US11874905B2 (en) Establishing access sessions
EP3789899A1 (en) Charter-based access controls for managing computer resources
CN113824764A (en) Robot process automation system based on cloud native architecture and operation method
US11711360B2 (en) Expedited authorization and access management
KR102346480B1 (en) A macro-based application account management system
US11729179B2 (en) Systems and methods for data driven infrastructure access control
CN111147470A (en) Account authorization method and device and electronic equipment
US11444903B1 (en) Contextual discovery and design of application workflow
JP6920270B2 (en) Operation execution system, operation execution device, operation execution method and program
US20230198991A1 (en) File-based configuration of access management
US20220253542A1 (en) Orchestration of administrative unit management
EP4174699A1 (en) Access management system for managing access to resources
US20220232061A1 (en) Asynchronous distributed modular function calling
Garg et al. INSTALLATION & CONFIGURATION–SSO

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant