KR102502167B1 - Service providing method based on cloud platform and system thereof - Google Patents

Service providing method based on cloud platform and system thereof Download PDF

Info

Publication number
KR102502167B1
KR102502167B1 KR1020180059389A KR20180059389A KR102502167B1 KR 102502167 B1 KR102502167 B1 KR 102502167B1 KR 1020180059389 A KR1020180059389 A KR 1020180059389A KR 20180059389 A KR20180059389 A KR 20180059389A KR 102502167 B1 KR102502167 B1 KR 102502167B1
Authority
KR
South Korea
Prior art keywords
service
token
user
received
provider
Prior art date
Application number
KR1020180059389A
Other languages
Korean (ko)
Other versions
KR20190134135A (en
Inventor
유인선
곽현민
정혜영
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020180059389A priority Critical patent/KR102502167B1/en
Publication of KR20190134135A publication Critical patent/KR20190134135A/en
Application granted granted Critical
Publication of KR102502167B1 publication Critical patent/KR102502167B1/en

Links

Images

Classifications

    • 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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/321Cryptographic 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/3213Cryptographic 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

Abstract

클라우드를 통해서 제공되는 서비스를 제공하기 위한 시스템과 서비스를 제공하기 위한 장치 및 서비스 제공 방법이 제공 된다. 클라우드 플랫폼을 이용한 서비스를 제공하는 방법은, 사용자를 인증하기 위한 사용자 인증 토큰과 서비스를 인증하기 위한 서비스 토큰을 별도로 발급하고, 서비스 게이트웨이를 통해 API를 호출할 때 사용자 인증 토큰과 서비스 토큰을 함께 전달하여 서비스 게이트웨이가 인증 정보 제공자(IdP)에 서비스 토큰에 대한 검증을 요청한다.A system for providing a service provided through the cloud, a device for providing the service, and a method for providing the service are provided. A method of providing a service using a cloud platform separately issues a user authentication token for authenticating a user and a service token for authenticating a service, and delivers the user authentication token and service token together when calling an API through a service gateway. Thus, the service gateway requests verification of the service token from the authentication information provider (IdP).

Description

클라우드 플랫폼에 기반한 서비스 제공 방법 및 그 시스템{SERVICE PROVIDING METHOD BASED ON CLOUD PLATFORM AND SYSTEM THEREOF}Service provision method and system based on cloud platform

클라우드를 통해서 제공되는 서비스를 제공하기 위한 시스템과 서비스를 제공하기 위한 장치 및 서비스 제공 방법에 관한 것이다. 보다 자세하게는, 클라우드를 통해서 서비스를 제공하기 위해 수행되는 인증을 효율적으로 처리할 수 있도록 하는 시스템, 장치 및 방법에 관한 것이다.It relates to a system for providing a service provided through a cloud, a device for providing a service, and a service providing method. More specifically, it relates to a system, apparatus, and method for efficiently processing authentication performed to provide a service through a cloud.

클라우드를 통해서 서비스를 제공하고자 하는 경우 보안을 위해 사용자를 증명하기 위한 사용자 인증과 서비스에 접근을 허용하기 위한 인증인 서비스 인증을 거쳐서 사용자가 서비스에 접근할 수 있도록 한다. 사용자가 서비스에 접근하고자 하는 경우는, 개발자(Developer)가 클라우드 플랫폼을 통해서 서비스의 어플리케이션 프로그래밍 인터페이스(Application Programming Interface; API)를 개발하거나 말단 사용자(End User)가 클라우드 플랫폼을 통해서 제공되는 서비스의 API를 사용하고자 할 경우 등을 의미한다.When providing services through the cloud, users can access services through user authentication to prove users for security and service authentication, which is authentication to allow access to services. When a user wants to access a service, a developer develops an application programming interface (API) of the service through a cloud platform, or an end user develops an API of a service provided through a cloud platform. means if you want to use .

사용자가 서비스에 접근하고자 할 때 사용자 인증과 서비스 인증을 수행하기 위해, 클라우드 플랫폼을 구성하는 시스템이 서비스에 대한 범위(scope)와 역할(role)을 정의하고, 정의한 범위와 역할을 API 관리자를 통해서 관리할 수 있다. 즉, 사용자가 서비스에 대한 접근을 요청하면, 사용자 인증 후 서비스에 할당된 범위와 사용자 역할이 서비스에 대한 접근을 허용해도 좋은 것인지 여부를 확인한 후, 서비스에 대한 사용이 가능하도록 한다.In order to perform user authentication and service authentication when a user wants to access a service, the system constituting the cloud platform defines the scope and role for the service, and the defined scope and role through the API manager. can manage That is, when a user requests access to a service, after user authentication, whether the scope assigned to the service and the user's role allow access to the service is checked, and then the service is allowed to be used.

상술한 바와 같은 방식으로 인증 후에 서비스를 제공하는 클라우드 플랫폼에 기반한 시스템에서, 플랫폼을 통해 제공되는 서비스가 다양해지고, 사용자가 많아지면서 인증을 처리하기 위해 시스템의 성능이 저하되는 문제점이나 프로세스의 복잡도가 높아지고 관리가 어려워지는 문제점 등이 발생하고 있다.In a system based on a cloud platform that provides services after authentication in the above-described manner, as the services provided through the platform become more diverse and the number of users increases, the problem of system performance deterioration or the complexity of the process to process authentication increases. There are problems such as increasing and difficult to manage.

몇몇 실시 예를 통해서 해결하고자 하는 기술적 과제는, 플랫폼을 통해 제공되는 서비스에 접근할 때 사용자와 서비스에 대한 인증으로 인해 발생하는 응답 성능의 저하를 저감할 수 있는 시스템, 장치 및 방법을 제공하는 것이다.A technical problem to be solved through some embodiments is to provide a system, apparatus, and method capable of reducing degradation in response performance caused by authentication of users and services when accessing services provided through a platform. .

또한, 몇몇 실시 예를 통해서 해결하고자 하는 다른 기술적 과제는, 사용자와 서비스의 증가로 인한 관리 측면에서의 복잡도를 저감할 수 있는 시스템, 장치 및 방법을 제공하는 것이다.In addition, another technical problem to be solved through some embodiments is to provide a system, apparatus, and method capable of reducing complexity in terms of management due to an increase in users and services.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below.

상기 기술적 과제를 해결하기 위한, 일 실시예에 따라 클라우드 플랫폼을 이용한 서비스를 제공하는 방법은, 서비스 게이트웨이에 서비스에 대한 어플리케이션 프로그램 인터페이스를 등록할 경우, 상기 클라우드 플랫폼의 인증 정보 제공자가 패스티켓 아이디를 생성하는 단계와, 사용자의 로그인 프로세스를 통해 상기 서비스에 대한 사용자의 인증이 이루어진 경우, 상기 인증 정보 제공자가 상기 사용자에 대한 사용자 인증 토큰을 발급하는 단계와, 상기 서비스를 사용하기 위한 사용 등록 신청이 수신된 경우, 상기 인증 정보 제공자가 상기 서비스에 대해 상기 패스티켓 아이디를 이용하여 생성된 서비스 토큰을 발급하는 단계와, 상기 서비스 게이트웨이가 상기 어플리케이션 프로그램 인터페이스에 대한 호출, 사용자 인증 토큰 및 서비스 토큰을 수신한 경우, 상기 수신된 서비스 토큰이 상기 발급한 서비스 토큰으로서 유효한지 여부를 상기 인증 정보 제공자를 통해서 검증하는 단계 및 상기 수신된 서비스 토큰이 유효한 경우, 상기 서비스 게이트웨이가 제1 서비스 제공자에게 상기 호출, 상기 수신된 사용자 인증 토큰 및 상기 수신된 서비스 토큰을 전달하는 단계를 포함할 수 있다.In order to solve the above technical problem, a method for providing a service using a cloud platform according to an embodiment includes, when registering an application program interface for a service in a service gateway, an authentication information provider of the cloud platform to obtain a pass ticket ID. generating, and when the user is authenticated for the service through the user's login process, issuing a user authentication token for the user by the authentication information provider, and applying for use registration to use the service If received, the authentication information provider issues a service token generated using the passticket ID for the service, and the service gateway receives a call to the application program interface, a user authentication token, and a service token. In this case, verifying whether the received service token is valid as the issued service token through the authentication information provider, and if the received service token is valid, the service gateway makes the call to a first service provider; and transferring the received user authentication token and the received service token.

또한, 다른 일 실시 예에 따르면, 상기 검증하는 단계는 상기 호출이 수신된 경우 상기 발급한 서비스 토큰을 관리하는 상기 인증 정보 제공자의 키 관리 시스템을 통해서 상기 수신된 서비스 토큰의 유효성에 대한 검증을 수행하는 것을 특징으로 할 수 있다.In addition, according to another embodiment, in the verifying step, when the call is received, the validity of the received service token is verified through a key management system of the authentication information provider that manages the issued service token. It can be characterized by doing.

또한, 또 다른 일 실시 예에 따르면, 서비스 제공 방법은 상기 제1 서비스 제공자가 상기 호출을 수신한 경우, 상기 제1 서비스 제공자가 상기 인증 정보 제공자에게 상기 수신된 사용자 인증 토큰의 유효성에 대한 검증을 요청하는 단계 및 상기 인증 정보 제공자에 의해 상기 수신된 사용자 인증 토큰의 유효성의 검증이 완료된 경우, 상기 제1 서비스 제공자가 상기 어플리케이션 프로그램 인터페이스를 호출하고, 상기 어플리케이션 프로그램 인터페이스를 호출한 결과를 상기 서비스 게이트웨이를 통해 상기 호출을 발생시킨 단말에 전달하는 단계를 더 포함할 있다.In addition, according to another embodiment, the service providing method, when the first service provider receives the call, allows the first service provider to verify the validity of the received user authentication token to the authentication information provider. When the requesting step and verification of validity of the received user authentication token by the authentication information provider are completed, the first service provider calls the application program interface, and the service gateway calls the application program interface result. The step of forwarding the call to the terminal that generated the call may be further included.

또한, 또 다른 일 실시 예에 따르면, 상기 수신된 사용자 인증 토큰의 유효성에 대한 검증을 요청하는 단계는, 상기 발급된 사용자 인증 토큰을 관리하는 상기 인증 정보 제공자의 신원 및 접근 관리자를 통해서 상기 수신된 사용자 인증 토큰의 유효성을 검증하는 것을 특징으로 할 수 있다.In addition, according to another embodiment, requesting verification of the validity of the received user authentication token may include the received user authentication token through an identity and access manager of the authentication information provider that manages the issued user authentication token. It may be characterized in that the validity of the user authentication token is verified.

또한, 또 다른 일 실시 예에 따르면, 상기 사용 등록 신청은 상기 서비스에 대한 구매, 구매한 서비스에 대한 선택 및 상기 서비스를 개발하기 위해 설정된 프로젝트에 대한 참여 요청 중 어느 하나일 수 있다.Also, according to another embodiment, the use registration application may be any one of purchase of the service, selection of the purchased service, and request for participation in a project set to develop the service.

또한, 또 다른 일 실시 예에 따르면, 상기 서비스 토큰을 발급하는 단계는, 상기 사용 등록 신청에 상응하는 비밀 키를 생성하는 단계와, 상기 패스티켓 아이디 및 상기 비밀 키를 포함하는 메시지를 생성하는 단계와, 상기 패스티켓 아이디, 상기 비밀 키 및 상기 메시지를 이용하여 시그니처를 생성하는 단계와, 상기 메시지와 상기 시그니처로 구성되는 상기 서비스 토큰을 생성하는 단계를 포함할 수 있다.In addition, according to another embodiment, the issuing of the service token may include generating a secret key corresponding to the use registration application, and generating a message including the passticket ID and the secret key. and generating a signature using the passticket ID, the private key, and the message, and generating the service token composed of the message and the signature.

또한, 또 다른 일 실시 예에 따르면, 상기 서비스 토큰을 발급하는 단계는, 상기 서비스에 대한 구매, 구매한 서비스에 대한 선택 또는 상기 서비스의 개발을 위해 설정된 프로젝트 단위로 상기 서비스 토큰을 발급하는 것을 특징으로 할 수 있다.Further, according to another embodiment, the issuing of the service token may include issuing the service token in units of projects set for purchase of the service, selection of the purchased service, or development of the service. can be done with

또한, 또 다른 일 실시 예에 따르면, 상기 패스티켓 아이디는 상기 서비스 또는 상기 프로젝트에 대한 비밀 키의 자원 식별자, 상기 비밀 키에 대한 키 명칭 및 상기 서비스 또는 상기 프로젝트에 대한 유효기간을 포함할 수 있다.In addition, according to another embodiment, the passticket ID may include a resource identifier of a secret key for the service or project, a key name for the secret key, and a validity period for the service or project. .

또한, 또 다른 일 실시 예에 따르면, 서비스 제공 방법은 상기 인증 정보 제공자가 제품 아이디를 입력 받는 단계 및 상기 패스티켓 아이디를 생성할 경우, 상기 제품 아이디를 이용하여 상기 자원 식별자를 생성하는 단계를 더 포함할 수 있다.In addition, according to another embodiment, the service providing method further includes receiving a product ID by the authentication information provider and generating the resource identifier using the product ID when generating the passticket ID. can include

또한, 또 다른 일 실시 예에 따르면, 상기 제1 서비스 제공자가 상기 호출을 처리하기 위해 제2 서비스 제공자에 의해 제공되는 추가 어플리케이션 프로그램 인터페이스에 대한 호출이 발생하는 경우, 상기 제1 서비스 제공자가 상기 추가 어플리케이션 프로그램 인터페이스에 대한 호출, 상기 수신된 사용자 인증 토큰 및 상기 수신된 서비스 토큰을 상기 제2 서비스 제공자에게 전달하는 단계를 더 포함할 수 있다.Further, according to another embodiment, when a call to an additional application program interface provided by a second service provider is generated in order for the first service provider to process the call, the first service provider may send the additional application program interface to the additional application program interface. The method may further include calling an application program interface and transferring the received user authentication token and the received service token to the second service provider.

상기 기술적 과제를 해결하기 위한, 클라우드 플랫폼을 이용한 서비스 제공 시스템은, 상기 클라우드 플랫폼을 통해 서비스를 제공하는 어플리케이션 프로그램 인터페이스의 등록 시점에 상기 서비스를 식별하는 패스티켓 아이디를 할당하고, 상기 패스티켓 아이디를 이용하여 상기 서비스에 대한 사용 등록 신청에 대한 응답으로 서비스 토큰을 생성하며, 사용자의 로그인 프로세스를 통해 상기 사용자의 인증이 이루어진 경우 상기 사용자에 대한 사용자 인증 토큰을 생성하며, 상기 서비스 토큰 및 사용자 인증 토큰에 대한 유효성 검증을 수행하는 인증 정보 제공자와, 상기 어플리케이션 프로그램 인터페이스를 관리하며, 상기 어플리케이션 프로그램 인터페이스에 대한 호출, 사용자 인증 토큰 및 서비스 토큰을 수신한 경우 상기 인증 정보 제공자를 통해 상기 서비스 토큰의 유효성을 검증 받은 후 상기 서비스 토큰이 유효한 경우 상기 어플리케이션 프로그램 인터페이스를 제공하는 서비스 제공자에게 상기 호출, 상기 사용자 인증 토큰 및 상기 서비스 토큰을 전달하는 서비스 게이트웨이 및 카탈로그 등록 요청을 수신하면, 상기 카탈로그 등록 요청에 상응하는 카탈로그를 등록하고, 상기 인증 정보 제공자로부터 패스티켓 아이디를 제공 받아 상기 서비스 게이트웨이에 상기 어플리케이션 프로그램 인터페이스를 등록하는 카탈로그 서비스 제공자;을 포함할 수 있다.In order to solve the technical problem, a service providing system using a cloud platform allocates a pass ticket ID for identifying the service at the time of registration of an application program interface that provides a service through the cloud platform, and assigns the pass ticket ID to the pass ticket ID. A service token is generated in response to a request for registration of use of the service using the service token, and when the user is authenticated through the user's login process, a user authentication token for the user is generated, and the service token and the user authentication token are generated. An authentication information provider that performs validity verification on, and manages the application program interface, and when a call to the application program interface, a user authentication token, and a service token are received, the validity of the service token is checked through the authentication information provider. If the service token is valid after being verified, upon receipt of the call, the service gateway that delivers the user authentication token and the service token to the service provider providing the application program interface, and a catalog registration request, the corresponding catalog registration request is received. and a catalog service provider that registers a catalog, receives a passticket ID from the authentication information provider, and registers the application program interface with the service gateway.

상기 기술적 과제를 해결하기 위한 비일시적(non-transitory) 컴퓨터 판독 가능한 매체에 기록된 컴퓨터 프로그램은, 상기 컴퓨터 프로그램의 명령어들이 컴퓨팅 장치의 프로세서에 의해 실행되는 경우에, 서비스 게이트웨이에 서비스에 대한 어플리케이션 프로그램 인터페이스를 등록할 경우, 상기 클라우드 플랫폼의 인증 정보 제공자가 패스티켓 아이디를 생성하는 단계와, 사용자의 로그인 프로세스를 통해 상기 서비스에 대한 사용자의 인증이 이루어진 경우, 상기 인증 정보 제공자가 상기 사용자에 대한 사용자 인증 토큰을 발급하는 단계와, 상기 서비스에 대한 사용 등록 신청이 수신된 경우, 상기 인증 정보 제공자가 상기 서비스에 대해 상기 패스티켓 아이디를 이용하여 생성된 서비스 토큰을 발급하는 단계와, 상기 서비스 게이트웨이가 상기 어플리케이션 프로그램 인터페이스에 대한 호출, 사용자 인증 토큰 및 서비스 토큰을 수신한 경우, 상기 수신된 서비스 토큰이 상기 발급한 서비스 토큰으로서 유효한지 여부를 상기 인증 정보 제공자를 통해서 검증하는 단계 및 상기 수신된 서비스 토큰이 유효한 경우, 상기 서비스 게이트웨이가 제1 서비스 제공자에게 상기 호출, 상기 수신된 사용자 인증 토큰 및 상기 수신된 서비스 토큰을 전달하는 단계를 포함하는 동작이 수행되는 것을 특징으로 할 수 있다.A computer program recorded on a non-transitory computer readable medium for solving the technical problem is an application program for a service to a service gateway when instructions of the computer program are executed by a processor of a computing device. When registering the interface, the authentication information provider of the cloud platform generates a pass ticket ID, and when the user is authenticated for the service through the user's log-in process, the authentication information provider is the user for the user. issuing an authentication token, and when a use registration application for the service is received, issuing, by the authentication information provider, a service token generated by using the passticket ID for the service; When the call to the application program interface, the user authentication token and the service token are received, verifying whether the received service token is valid as the issued service token through the authentication information provider and the received service token If this is valid, an operation including transferring the call, the received user authentication token, and the received service token to the first service provider by the service gateway is performed.

도 1은 서비스 제공 시스템의 구조를 간단히 도시한 도면이다.
도 2는 몇몇 실시 예에 따른 서비스 제공 시스템의 구조를 도시한 도면이다.
도 3은 몇몇 실시 예에 따라 서비스 제공 시스템에 신규 서비스를 등록하는 프로세스를 도시한 도면이다.
도 4는 몇몇 실시 예에 따라 서비스를 개발하기 위해 API를 호출하는 프로세스를 도시한 도면이다.
도 5는 몇몇 실시 에에 따라 사용자에게 서비스를 제공하기 위해 API를 호출하는 프로세스를 도시한 도면이다.
도 6은 클라이언트 아이디를 등록하여 애플리케이션에서 서비스에 접근하는 방식에 따라 서비스의 API를 호출하는 구조를 설명하기 위한 예시를 도시한 도면이다.
도 7은 몇몇 실시 예에 따라 서비스 토큰을 이용하여 서비스의 API를 호출하는 구조를 설명하기 위한 예시를 도시한 도면이다.
도 8은 몇몇 실시 예에 따라 서비스 토큰이 생성되는 프로세스를 설명하기 위한 도면이다.
도 9는 다른 몇몇 실시 예에 따라 복수의 서비스 사이에서 API 호출이 발생하는 경우에 관한 프로세스를 도시한 도면이다.
도 10은 몇몇 실시 예에 따라 서비스 제공 시스템이 사용자에게 서비스를 제공하기 위해 수행하는 프로세스를 설명하기 위한 도면이다.
1 is a diagram simply showing the structure of a service providing system.
2 is a diagram illustrating the structure of a service providing system according to some embodiments.
3 is a diagram illustrating a process of registering a new service in a service providing system according to some embodiments.
4 is a diagram illustrating a process of calling an API to develop a service, according to some embodiments.
5 is a diagram illustrating a process of calling an API to provide a service to a user, in accordance with some implementations.
6 is a diagram illustrating an example for explaining a structure of calling an API of a service according to a method of accessing a service from an application by registering a client ID.
7 is a diagram illustrating an example for explaining a structure of calling an API of a service using a service token according to some embodiments.
8 is a diagram for explaining a process of generating a service token according to some embodiments.
9 is a diagram illustrating a process when an API call occurs between a plurality of services according to some other embodiments.
10 is a diagram for explaining a process performed by a service providing system to provide a service to a user according to some embodiments.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, and methods for achieving them, will become clear with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms, only the present embodiments make the disclosure of the present invention complete, and the common knowledge in the art to which the present invention belongs It is provided to fully inform the holder of the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numbers designate like elements throughout the specification.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used in a meaning commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly specifically defined. Terminology used herein is for describing the embodiments and is not intended to limit the present invention. In this specification, singular forms also include plural forms unless specifically stated otherwise in a phrase.

이하, 도면들을 참조하여 본 발명의 몇몇 실시예들을 설명한다.Hereinafter, some embodiments of the present invention will be described with reference to the drawings.

도 1은 서비스 제공 시스템의 구조를 간단히 도시한 도면이다.1 is a diagram simply showing the structure of a service providing system.

서비스 제공 시스템(100)은 카탈로그 서비스 제공자(110), 인증 서버(120) 및 서비스 게이트웨이(130)를 포함할 수 있다. 여기서, 몇몇 실시 예에 따르면, 카탈로그 서비스 제공자(110), 인증 서버(120) 및 서비스 게이트웨이(130)는 각각 독립적인 서버로 구성될 수 있다. 또는, 다른 몇몇 실시 예에 따르면, 카탈로그 서비스 제공자(110), 인증 서버(120) 및 서비스 게이트웨이(130)는 각각 가상 머신(Virtual Machine)의 형태로 하나 이상의 프로세서와 하나 이상의 메모리를 구비한 단일의 장치로 구성될 수도 있다.The service providing system 100 may include a catalog service provider 110 , an authentication server 120 and a service gateway 130 . Here, according to some embodiments, the catalog service provider 110, the authentication server 120, and the service gateway 130 may each be configured as independent servers. Or, according to some other embodiments, the catalog service provider 110, the authentication server 120, and the service gateway 130 are each in the form of a virtual machine (Virtual Machine), a single unit having one or more processors and one or more memories. It may also consist of a device.

카탈로그 서비스 제공자(110)는 카탈로그 등록 요청을 수신하면, 카탈로그 등록 요청에 상응하는 카탈로그(Catalogue)를 등록할 수 있다. 여기서, 카탈로그 등록 요청은 서비스 제공 시스템에 의해 구성되는 플랫폼을 통해서 제공할 서비스를 카탈로그에 등록할 것을 요청하는 것을 의미한다. 또한 카탈로그를 등록한다고 함은 등록된 서비스를 조회하여 구매하고 사용할 수 있도록 카탈로그 서비스에 등록하는 것을 의미한다. Upon receiving the catalog registration request, the catalog service provider 110 may register a catalog corresponding to the catalog registration request. Here, the catalog registration request means a request to register a service to be provided in the catalog through a platform configured by the service providing system. Also, registering a catalog means registering in a catalog service so that registered services can be inquired, purchased, and used.

몇몇 실시 예에 따른 카탈로그 서비스 제공자(110)는 카탈로그 등록 요청을 수신하면, 인증 서버(120)로부터 등록의 대상이 되는 서비스에 대한 패스티켓 아이디(Passticket ID)를 제공 받을 수 있다. 카탈로그 서비스 제공자(110)는 제공 받은 패스티켓 아이디를 기초로 해당 서비스를 관리할 수 있도록 서비스 게이트웨이에 서비스의 API를 등록할 수 있다.Upon receiving a catalog registration request, the catalog service provider 110 according to some embodiments may receive a passport ID for a service to be registered from the authentication server 120 . The catalog service provider 110 may register an API of a service in a service gateway to manage a corresponding service based on the provided passticket ID.

인증 서버(120)는 수신되는 요청에 따라 사용자를 인증하기 위한 사용자 인증 토큰과 서비스를 인증하기 위한 서비스 토큰을 각각 생성할 수 있다. 또한, 인증 서버(120)는 서비스 제공 시스템(100)의 다른 구성요소 또는 외부 구성요소의 요청에 따라 사용자 인증 토큰 또는 서비스 토큰의 유효성을 검증할 수 있다.The authentication server 120 may generate a user authentication token for authenticating a user and a service token for authenticating a service according to a received request. In addition, the authentication server 120 may verify the validity of the user authentication token or service token according to a request from other components or external components of the service providing system 100 .

사용자가 서비스 제공 시스템(100)을 통해서 제공되는 서비스를 사용하고자 할 경우 서비스 게이트웨이(130)를 통해서 서비스에 접근할 수 있다. 서비스 게이트웨이(130)는 서비스 게이트웨이(130)에 등록된 API에 대한 호출을 수신하면, 호출과 함께 사용자 인증 토큰 및 서비스 토큰이 수신되었는지 여부를 확인할 수 있다. 서비스 게이트웨이(130)는 호출과 함께 사용자 인증 토큰 및 서비스 토큰이 수신된 경우, 인증 서버(120)에 서비스 토큰의 유효성에 대한 검증을 요청할 수 있다. 인증 서버(120)에 의해 서비스 토큰의 유효성이 검증되었음이 확인된 경우, 서비스 게이트웨이(130)는 서비스 토큰의 검증 결과에 기초하여 호출의 대상이 되는 API를 포함하는 서비스를 제공하는 서비스 제공자에게 API 호출, 사용자 인증 토큰 및 서비스 토큰을 전달할 수 있다. When a user wants to use a service provided through the service providing system 100 , the service can be accessed through the service gateway 130 . When receiving a call to an API registered in the service gateway 130, the service gateway 130 may check whether a user authentication token and a service token are received along with the call. When the user authentication token and the service token are received along with the call, the service gateway 130 may request validation of the validity of the service token from the authentication server 120 . When it is confirmed that the validity of the service token has been verified by the authentication server 120, the service gateway 130 provides the service provider providing the service including the API to be called based on the verification result of the service token to the API. You can pass calls, user authentication tokens and service tokens.

사용자 인증 토큰 및 서비스 토큰을 수신한 서비스 제공자는 인증 서버(120)에 사용자 인증 토큰의 유효성에 대한 검증을 요청하고, 사용자 인증 토큰에 대한 검증 결과에 따라서 호출된 API의 수행 여부를 결정할 수 있다. 따라서, 몇몇 실시 예에 따르면, 서비스 게이트웨이(130)가 사용자를 대신하여 API를 호출할 때마다 API에 대해 할당된 영역(scope)과 함께 사용자의 역할(role)에 따라서 API에 접근할 수 있는지 여부를 관리하기 위해 서비스의 API에 따라서 영역과 사용자의 롤을 지정할 필요가 없고, 사용자가 API에 접근할 때마다 검증을 할 필요가 없으므로 복잡도가 높아지더라도 서비스 응답 성능이 저하되지 않는다.Upon receiving the user authentication token and the service token, the service provider requests the authentication server 120 to verify validity of the user authentication token, and determines whether or not to perform the called API according to a result of verifying the user authentication token. Therefore, according to some embodiments, whenever the service gateway 130 calls the API on behalf of the user, whether or not the API can be accessed according to the user's role along with the assigned scope for the API. There is no need to designate realms and user roles according to the API of the service to manage, and there is no need to verify each time a user accesses the API, so service response performance does not deteriorate even if complexity increases.

도 2는 몇몇 실시 예에 따른 서비스 제공 시스템의 구조를 도시한 도면이다.2 is a diagram illustrating the structure of a service providing system according to some embodiments.

몇몇 실시 예에 따르면, 서비스 제공 시스템(100)은 서비스 인터페이스(200)를 통해서 사용자(예를 들어, 말단 사용자(End user), 개발자, 분석자, 또는 파트너 등)와 상호작용을 수행할 수 있다. 서비스 인터페이스(200)는 서비스 제공 시스템(100)에 접근하여 제공할 서비스를 개발하거나, 개발된 서비스를 등록하거나, 또는 등록된 서비스를 조회하고 구매하기 위한 환경을 의미한다. 예를 들어, 서비스 인터페이스(200)는 사용자 포털(portal)(201), 개발자 포털(202), 또는 서비스를 배포하는 마켓(203)일 수 있다. 또는, 서비스 인터페이스(200)는 개발자의 개발자 ID 환경으로 세팅된 것이거나, 커맨드 라인(Command Line) 기반 인터페이스 클라이언트일 수도 있다. 또는, 서비스 인터페이스(200)는 통합 개발 환경(Integrated Development Environment; IDE)일 수도 있으나, 이에 한정되지 아니한다. 서비스 인터페이스(200), 카탈로그 서비스 제공자(110), 인증 서버(120), 서비스 게이트웨이(130) 및 서비스 제공자(300)는 각각 독립적인 서버와 같이 별도의 하드웨어 장치로 구성될 수도 있으나, 실시 예에 따라서 가상 머신을 이용하여 하나의 하드웨어 장치에 구성될 수도 있다.According to some embodiments, the service providing system 100 may interact with a user (eg, an end user, a developer, an analyst, or a partner) through the service interface 200 . The service interface 200 means an environment for accessing the service providing system 100 to develop a service to be provided, to register a developed service, or to inquire and purchase a registered service. For example, the service interface 200 may be a user portal 201 , a developer portal 202 , or a marketplace 203 distributing services. Alternatively, the service interface 200 may be set as a developer's developer ID environment or may be a command line based interface client. Alternatively, the service interface 200 may be an integrated development environment (IDE), but is not limited thereto. The service interface 200, the catalog service provider 110, the authentication server 120, the service gateway 130, and the service provider 300 may be configured as separate hardware devices, such as independent servers, but in the embodiment Therefore, it may be configured in one hardware device using a virtual machine.

서비스 인터페이스(200)를 통해서 사용자가 서비스 제공 시스템(100)에 로그인하는 경우, 인증 서버(120)는 사용자를 인증할 수 있으며, 토큰의 유효성에 대한 검증 요청을 수신함에 따라 사용자 인증 토큰 또는 서비스 토큰의 유효성을 검증할 수 있다. 몇몇 실시 예에 따르면 인증 서버는 인증 정보 제공자(Identity Provider; IdP)(121), 키 관리 시스템(Key Management System)(126) 및 역할 기반 접근 제어(Role Based Access Control; RBAC) 서버(127)를 포함할 수 있다. 실시 예에 따라서, 키 관리 시스템(126) 및 RBAC 서버(127)는 인증 정보 제공자(121)에 포함되거나, 인증 정보 제공자(121)와 일체로 구성될 수도 있다. 인증 정보 제공자(121)는 인증 정보 제공자의 계정 관리, 통합 로그인 등을 수행하기 위한 인증 정보 제공자 UI 웹 어플리케이션 서버(IDP UI WAS)(122), 사용자 인증 토큰을 관리하고 사용자 인증 토큰의 유효성을 검증하는 신원 및 접근 관리자(Identity and Access Manager; IAM)(123), 보안 토큰 서비스를 제공하는 STS 서버(124) 및 다중 인증(Multi-Factor Authentication; MFA) 서버(125)를 포함할 수 있다.When a user logs in to the service providing system 100 through the service interface 200, the authentication server 120 may authenticate the user, and upon receiving a request for validating the validity of the token, the user authentication token or service token validity can be verified. According to some embodiments, the authentication server includes an identity provider (IdP) 121, a key management system 126, and a role-based access control (RBAC) server 127. can include Depending on the embodiment, the key management system 126 and the RBAC server 127 may be included in the authentication information provider 121 or integrally configured with the authentication information provider 121 . The authentication information provider 121 manages the authentication information provider UI web application server (IDP UI WAS) 122 to perform account management, integrated login, etc. of the authentication information provider, user authentication tokens, and validates the user authentication tokens. It may include an identity and access manager (IAM) 123, an STS server 124 providing a security token service, and a Multi-Factor Authentication (MFA) server 125.

인증 정보 제공자(121)의 IAM(123)은 사용자를 인증하기 위한 사용자 인증 토큰을 관리하고 검증할 수 있다. 몇몇 실시 에에 따르면, 인증 정보 제공자(121)는 OAuth 2.0 및 SAML(Security Assertion Markup Language)를 기반으로 사용자에 대한 인증을 수행할 수 있다. 다만, 이에 한정되지 아니한다. IAM(123)은 사용자에 대하여 역할을 할당하여 해당 사용자에 대해 서비스에 대한 접근 권한을 부여할 수 있다.The IAM 123 of the authentication information provider 121 may manage and verify a user authentication token for authenticating a user. According to some embodiments, the authentication information provider 121 may perform user authentication based on OAuth 2.0 and Security Assertion Markup Language (SAML). However, it is not limited to this. The IAM 123 may assign a role to a user and grant access to a service to the corresponding user.

또한, 키 관리 시스템(126)은 키 관리 시스템(126)에 의해 할당된 패스티켓 ID와 비밀 키를 이용하여 사용자 인증 토큰과 구별되는 서비스 토큰을 별도로 발급하고, 서비스 토큰을 이용하여 서비스에 대한 인증을 수행할 수 있다. 카탈로그 서비스 제공자(110)는 카탈로그 서비스를 관리하는 카탈로그 관리자(111) 및 카탈로그 서비스를 제공하는 카탈로그 서비스 엔진(112)을 포함할 수 있다. 카탈로그 관리자(111)는 카탈로그에 대한 등록 요청이나 사용 요청을 수신하면, 등록 요청이나 사용 요청에 대한 승인 여부를 결정할 수 있다. 카탈로그 관리자(111)가 카탈로그에 대한 등록 요청을 승인한 경우, 카탈로그 서비스 엔진(112)에 등록 요청에 상응하는 카탈로그가 등록될 수 있다. 이 경우, 카탈로그 서비스 엔진(112)은 키 관리 시스템(126)을 통해서 등록될 서비스를 제품으로서 식별하기 위한 패스티켓 아이디를 발급 받고, 등록 요청에 상응하는 API를 서비스 게이트웨이(130)의 API 관리자(131)에 등록할 수 있다.In addition, the key management system 126 separately issues a service token distinct from the user authentication token using the pass ticket ID and secret key allocated by the key management system 126, and authenticates the service using the service token. can be performed. The catalog service provider 110 may include a catalog manager 111 that manages catalog services and a catalog service engine 112 that provides catalog services. When receiving a registration request or use request for a catalog, the catalog manager 111 may determine whether to approve the registration request or use request. When the catalog manager 111 approves the catalog registration request, a catalog corresponding to the registration request may be registered in the catalog service engine 112 . In this case, the catalog service engine 112 receives a pass ticket ID for identifying the service to be registered as a product through the key management system 126, and sends an API corresponding to the registration request to the API manager of the service gateway 130 ( 131) can be registered.

또한, 몇몇 실시 예에 따르면, RBAC 서버(125)는 제공할 서비스를 개발하기 위해 프로젝트 단위로 서비스 토큰을 발급하고, 서비스 요청시 서비스 토큰을 검증할 수 있다. 사용자가 서비스 인터페이스(200)를 통해 서비스 제공 시스템(100)에 가입할 경우 사용자 별로 사용자를 식별하기 위한 사용자 ID가 할당된다. 또한, 서비스를 개발하기 위한 프로젝트가 서비스 인터페이스(200)를 통해 설정될 경우, 프로젝트 별로 프로젝트를 식별하기 위한 프로젝트 ID가 할당될 수 있다. RBAC 서버(125)는 프로젝트 단위로 서비스 토큰을 발급하고 검증하기 위하여, 프로젝트의 프로젝트 ID와 그 프로젝트에 등록된 사용자의 사용자 ID를 매핑한 프로젝트 멤버 테이블과, 프로젝트 ID와 프로젝트에 서비스 토큰을 발급할 서비스에 대한 패스티켓 ID를 매핑한 패스티켓 테이블을 관리할 수 있다. 또한, RBAC 서버(125)는 프로젝트에 참여한 사용자들에 대한 권한 권리를 위해 사용자 역할에 따른 권한 정보를 관리할 수 있다.Also, according to some embodiments, the RBAC server 125 may issue a service token for each project to develop a service to be provided and verify the service token when requesting a service. When a user subscribes to the service providing system 100 through the service interface 200, a user ID for identifying the user is assigned to each user. In addition, when a project for developing a service is set through the service interface 200, a project ID for identifying the project may be allocated for each project. In order to issue and verify service tokens on a project-by-project basis, the RBAC server 125 includes a project member table that maps a project ID of a project and a user ID of a user registered in the project, and a project ID and a service token to be issued to the project. You can manage a passticket table that maps passticket IDs for services. In addition, the RBAC server 125 may manage authority information according to user roles for authority rights of users participating in the project.

몇몇 실시 예에 따른 서비스 게이트웨이(130)는 서비스의 API를 등록하고 관리하는 API 관리자(131) 및 라우팅, 로드 밸런싱, 탐색 또는 회로 차단기의 기능을 수행하는 내부 게이트웨이(132)를 포함할 수 있다. 서비스 인터페이스(200)를 이용하여 서비스를 이용하고자 하는 사용자는 서비스 게이트웨이(130)를 통해서 서비스 제공자(300)가 제공하는 서비스에 접근할 수 있다.The service gateway 130 according to some embodiments may include an API manager 131 that registers and manages service APIs and an internal gateway 132 that performs routing, load balancing, discovery, or circuit breaker functions. A user who wants to use a service using the service interface 200 may access a service provided by the service provider 300 through the service gateway 130 .

서비스 게이트웨이(130)는 서비스 인터페이스(200)로부터 사용자가 이용하고자 하는 서비스의 API에 대한 API 호출을 사용자에 대한 인증을 위한 사용자 인증 토큰 및 서비스에 대한 인증을 위한 서비스 토큰과 함께 수신할 수 있다. 여기서, 서비스 게이트웨이(130)는 키 관리 시스템(126)에 요청하여 서비스 토큰의 시그니처를 검증할 수 있다. 서비스 게이트웨이(130)는 서비스 토큰의 검증에 성공하고, API 호출과 함께 수신된 사용자 인증 토큰의 유무를 확인하여, 사용자 인증 토큰 및 서비스 토큰을 호출된 API를 이용하여 서비스를 제공하는 서비스 제공자(300)에게 전달할 수 있다.The service gateway 130 may receive an API call for an API of a service that a user wants to use from the service interface 200 together with a user authentication token for user authentication and a service token for service authentication. Here, the service gateway 130 may verify the signature of the service token by making a request to the key management system 126 . The service gateway 130 successfully verifies the service token, checks whether or not there is a user authentication token received along with the API call, and provides a service using the user authentication token and the service token through the called API (300). ) can be forwarded to

도 3은 몇몇 실시 예에 따라 서비스 제공 시스템에 신규 서비스를 등록하는 프로세스를 도시한 도면이다.3 is a diagram illustrating a process of registering a new service in a service providing system according to some embodiments.

먼저, 단계 S310에서 서비스 인터페이스(200)를 통해서 개발자 ID로 로그인이 수행되는 경우, 카탈로그 관리자(111)는 단계 S320에서 인증 정보 제공자(121)를 통해서 사용자 인증을 수행할 수 있다.First, when login is performed with a developer ID through the service interface 200 in step S310, the catalog manager 111 may perform user authentication through the authentication information provider 121 in step S320.

로그인 및 사용자 인증이 완료된 후, 단계 S330에서 카탈로그 관리자(111)는 로그인 된 사용자 계정을 통해서 개발된 서비스를 카탈로그에 등록하기 위한 카탈로그 등록 요청을 수신할 수 있다. 카탈로그 관리자(111)는 수신된 카탈로그 등록 요청에 대한 승인 여부를 결정할 수 있다After login and user authentication are completed, in step S330, the catalog manager 111 may receive a catalog registration request for registering the developed service in the catalog through the logged-in user account. The catalog manager 111 may determine whether to approve the received catalog registration request.

수신된 카탈로그 등록 요청이 승인된 경우, 단계 S340에서 카탈로그 관리자(111)는 카탈로그 등록 요청에 상응하여 카탈로그 서비스 엔진(112)에 카탈로그를 등록할 수 있다. 여기서, 카탈로그를 등록하는 것은 카탈로그를 통해 서비스를 조회하고 구매할 수 있도록 등록하는 것을 의미할 수 있다.When the received catalog registration request is approved, the catalog manager 111 may register a catalog in the catalog service engine 112 in response to the catalog registration request in step S340. Here, registering a catalog may mean registering to inquire and purchase a service through the catalog.

이후, 단계 S350에서, 카탈로그 서비스 엔진(112)은 등록 요청에 상응하는 서비스가 서비스 게이트웨이(130)에 등록되지 않은 신규한 서비스인 경우, 인증 정보 제공자(121)에게 서비스에 대한 패스티켓 ID를 요청할 수 있다. 이후, 단계 S360에서 카탈로그 서비스 엔진(112)으로부터 수신된 요청에 따라 인증 정보 제공자(121)는 패스티켓 ID를 발급할 수 있다.Then, in step S350, if the service corresponding to the registration request is a new service not registered in the service gateway 130, the catalog service engine 112 requests the authentication information provider 121 for a passticket ID for the service. can Thereafter, according to the request received from the catalog service engine 112 in step S360, the authentication information provider 121 may issue a pass ticket ID.

이후, 단계 S370에서, 카탈로그 서비스 엔진(112)은 등록 요청에 상응하는 API를 서비스 게이트웨이(130)에 등록할 수 있다. 즉, 서비스 제공 시스템(100)은 신규 서비스를 등록할 경우, 서비스에 대한 패스티켓 ID를 발급하고, 해당 API를 서비스 게이트웨이(130)에 등록할 수 있다.Then, in step S370, the catalog service engine 112 may register the API corresponding to the registration request with the service gateway 130. That is, when registering a new service, the service providing system 100 may issue a pass ticket ID for the service and register a corresponding API in the service gateway 130 .

도 4는 몇몇 실시 예에 따라 서비스를 개발하기 위해 API를 호출하는 프로세스를 도시한 도면이다.4 is a diagram illustrating a process of calling an API to develop a service, according to some embodiments.

먼저, 단계 S410에서 서비스 인터페이스(200)를 통해서 개발자 ID로 로그인이 수행되는 경우, 카탈로그 관리자(111)는 단계 S420에서 인증 정보 제공자(121)를 통해서 사용자 인증을 수행할 수 있다.First, when login is performed with a developer ID through the service interface 200 in step S410, the catalog manager 111 may perform user authentication through the authentication information provider 121 in step S420.

이후, 카탈로그 관리자(111)는 단계 S430에서 서비스를 사용하기 위한 서비스 사용 등록 신청을 수신하고, 서비스 사용 등록 신청에 대한 승인 여부를 결정할 수 있다. 여기서, 서비스 사용 등록 신청은 서비스 인터페이스(200)를 통해서 서비스를 구매하는 구매 프로세스, 구매한 서비스를 조회하여 선택하는 프로세스, 서비스를 개발하기 위해 설정된 프로젝트에 대한 참여 요청 중 어느 하나일 수 있다. 서비스 사용 등록 신청을 승인한 경우 카탈로그 관리자(111)는 단계 S440에서 서비스 사용 등록 신청을 카탈로그 서비스 엔진(112)에 전달할 수 있다.Thereafter, the catalog manager 111 may receive a service use registration application for using the service in step S430 and determine whether to approve the service use registration application. Here, the service use registration application may be any one of a purchase process of purchasing a service through the service interface 200, a process of inquiring and selecting a purchased service, and a request for participation in a project set to develop a service. When the service use registration application is approved, the catalog manager 111 may transmit the service use registration application to the catalog service engine 112 in step S440.

이후, 단계 S450에서 서비스 사용 등록 신청에 상응하는 서비스에 대한 서비스 토큰을 인증 정보 제공자(121)에게 요청할 수 있다. 서비스 토큰에 대한 요청을 수신한 인증 정보 제공자(121)는 단계 S460에서 서비스에 대한 패스티켓 ID와 비밀 키를 이용하여 서비스 토큰을 발급할 수 있다. 서비스 토큰을 발급 받은 카탈로그 서비스 엔진(112)은 발급 받은 서비스 토큰을 카탈로그 관리자(111)에게 전달할 수 있다. 여기서, 서비스 토큰을 발급 받은 관리자는 서비스 인터페이스(200)를 통해서 발급 받은 서비스 토큰을 확인할 수 있다.Thereafter, a service token for a service corresponding to the service use registration application may be requested from the authentication information provider 121 in step S450. Upon receiving the request for the service token, the authentication information provider 121 may issue the service token using the passticket ID and secret key for the service in step S460. The catalog service engine 112 that has been issued a service token may transfer the issued service token to the catalog manager 111 . Here, the manager who has been issued the service token can check the issued service token through the service interface 200 .

이후, 단계 S480에서 서비스 토큰을 발급 받은 개발자 계정으로 로그인할 경우, 인증 정보 제공자(121)를 통한 사용자 인증을 수행하여 인증 정보 제공자(121)로부터 서비스 인터페이스(200)로 사용자 인증 토큰이 발급될 수 있다.Then, when logging in with the developer account for which the service token was issued in step S480, user authentication is performed through the authentication information provider 121, and the user authentication token can be issued from the authentication information provider 121 to the service interface 200. there is.

이후, 개발자는 서비스 인터페이스(200)를 통해서 API 호출을 발급 받은 사용자 인증 토큰과 서비스 토큰과 함께 서비스 게이트웨이(130)로 전달할 수 있다. 또한, 개발자는 서비스 인터페이스(200)를 통해서 발급 받은 사용자 인증 토큰과 서비스 토큰을 이용해 서비스를 개발하고 서비스 게이트웨이(130)에 등록할 수 있다.Thereafter, the developer may transfer the API call to the service gateway 130 through the service interface 200 along with the issued user authentication token and service token. In addition, a developer may develop a service using a user authentication token and a service token issued through the service interface 200 and register it in the service gateway 130 .

도 5는 몇몇 실시 에에 따라 사용자에게 서비스를 제공하기 위해 API를 호출하는 프로세스를 도시한 도면이다.5 is a diagram illustrating a process of calling an API to provide a service to a user, in accordance with some implementations.

먼저, 단계 S510에서, 서비스를 이용하고자 하는 사용자는 서비스 인터페이스(200)를 통해서 사용자 ID로 로그인을 시도할 수 있다. 이후, 단계 S520에서, 인증 정보 제공자(121)를 통해서 사용자를 인증할 수 있다.First, in step S510, a user who wants to use a service may attempt to log in with a user ID through the service interface 200. Thereafter, in step S520, the user may be authenticated through the authentication information provider 121.

단계 S520에서 사용자에 대한 인증을 수행한 이후, 인증 정보 제공자(121)는 단계 S530에서 IAM(123)을 이용하여 사용자에 대한 사용자 인증 토큰을 발급할 수 있다. 또한, 도 5에서는 별도로 도시되지 않았으나, 해당 사용자에 의한 서비스의 구매가 이루어지거나, 서비스 인터페이스(200)를 통해 구매한 서비스에 대한 선택이 이루어지는 경우, 인증 정보 제공자(121)는 키 관리 시스템(126)을 통해서 서비스 인터페이스(200)에게 해당 서비스에 대한 서비스 토큰을 발급할 수 있다.After performing authentication on the user in step S520, the authentication information provider 121 may issue a user authentication token for the user using the IAM 123 in step S530. In addition, although not separately shown in FIG. 5 , when a service is purchased by a corresponding user or a service purchased through the service interface 200 is selected, the authentication information provider 121 provides the key management system 126 ) through which a service token for a corresponding service can be issued to the service interface 200 .

이후, 단계 S540에서 서비스 인터페이스(200)를 통해 서비스를 이용하기 위한 서비스 요청이 수신되는 경우, 서비스 인터페이스(200)는 단계 S550에서 요청된 서비스의 API를 호출하기 위한 API 호출을 서비스 게이트웨이(130)에 전달할 수 있다. 여기서, 서비스 인터페이스(200)는 API 호출을 전달할 때, 발급된 사용자 인증 토큰과 서비스에 대한 서비스 토큰을 함께 전달할 수 있다.Subsequently, when a service request for using a service is received through the service interface 200 in step S540, the service interface 200 sends an API call to the service gateway 130 to call the API of the requested service in step S550. can be forwarded to Here, the service interface 200 may deliver an issued user authentication token and a service token for a service together when delivering an API call.

API 호출을 수신한 서비스 게이트웨이(130)는 단계 S560에서 인증 정보 제공자(121)에게 서비스 토큰의 유효성에 대한 검증을 요청할 수 있다. 여기서 인증 정보 제공자(121)는 키 관리 시스템(126)을 이용하여 기존에 발급했던 서비스 토큰에 대하여 수신된 서비스 토큰이 유효한지 검증할 수 있다. 여기서, 서비스 게이트웨이(130)는 수신된 API 호출과 함께 수신된 사용자 인증 토큰의 유무에 대해서만 확인할 수 있다.Upon receiving the API call, the service gateway 130 may request verification of validity of the service token from the authentication information provider 121 in step S560. Here, the authentication information provider 121 may use the key management system 126 to verify whether the received service token is valid for the previously issued service token. Here, the service gateway 130 may only check whether or not there is a user authentication token received along with the received API call.

서비스 토큰에 대한 검증이 완료되고, API 호출과 함께 수신된 사용자 인증 토큰이 존재하는 경우, 서비스 게이트웨이(130)는 단계 S570에서 해당 API 호출을 수신된 서비스 토큰 및 수신된 사용자 인증 토큰과 함께 서비스 제공자(300)에게 전달할 수 있다.When verification of the service token is completed and the user authentication token received along with the API call exists, the service gateway 130 transmits the corresponding API call to the service provider along with the received service token and the received user authentication token in step S570. (300).

이후, 단계 S580에서 서비스 제공자(300)는 인증 정보 제공자(121)에게 수신된 사용자 인증 토큰에 대한 검증을 요청할 수 있다. 여기서, 인증 정보 제공자(121)는 IAM(123)을 통해서 발급된 사용자 인증 토큰에 대하여 수신된 사용자 인증 토큰이 유효한지 여부를 검증할 수 있다.Then, in step S580, the service provider 300 may request verification of the received user authentication token from the authentication information provider 121. Here, the authentication information provider 121 may verify whether the received user authentication token is valid for the user authentication token issued through the IAM 123 .

몇몇 다른 실시 예에 따르면, 서비스 요청에 상응하는 서비스가 도 4에 도시된 프로세스에서와 같이 서비스 토큰을 이용하여 개발된 경우 서비스 토큰에 대하여도 검증을 수행할 필요가 있다. 따라서, 서비스 요청에 상응하는 서비스가 서비스 토큰을 이용하여 개발된 것인 경우에는 단계 S580에서 서비스 제공자(300)는 서비스 토큰에 대한 검증을 인증 정보 제공자(121)에게 더 요청할 수 있다.According to some other embodiments, when a service corresponding to a service request is developed using a service token as in the process shown in FIG. 4 , it is necessary to perform verification on the service token as well. Accordingly, when the service corresponding to the service request is developed using the service token, the service provider 300 may further request verification of the service token from the authentication information provider 121 in step S580.

인증 정보 제공자(121)가 사용자 인증 토큰에 대한 검증 결과를 서비스 제공자(300)에게 전달하면, 서비스 제공자(300)는 단계 S590에서 검증 결과에 따라 API 호출에 상응하는 API를 실행할 수 있다. 즉, 사용자 인증 토큰의 유효성이 검증된 경우, 서비스 제공자(300)는 API 호출에 상응하는 API를 실행하고, 단계 S595에서 API 호출에 대해 API를 실행한 결과를 서비스 게이트웨이(130)를 통해서 서비스 인터페이스(200)에 전달할 수 있다.When the authentication information provider 121 transfers the verification result of the user authentication token to the service provider 300, the service provider 300 may execute an API corresponding to the API call according to the verification result in step S590. That is, when the validity of the user authentication token is verified, the service provider 300 executes the API corresponding to the API call and transmits the result of executing the API to the API call in step S595 through the service gateway 130 to the service interface. (200).

도 6은 클라이언트 아이디를 등록하여 애플리케이션에서 서비스에 접근하는 방식에 따라 서비스의 API를 호출하는 구조를 설명하기 위한 예시를 도시한 도면이다.6 is a diagram illustrating an example for explaining a structure of calling an API of a service according to a method of accessing a service from an application by registering a client ID.

클라우드를 통해서 제공되는 서비스의 API를 호출하기 위하여, OAuth 2.0 프로토콜에 기반해 클라이언트 ID를 등록하고, 애플리케이션에서 서비스에 접근할 수 있다. 이 경우에 서비스의 API를 호출하는 구조를 예시를 들어 도시하면 도 6에 도시된 바와 같이 구성될 수 있다.In order to call the API of the service provided through the cloud, the client ID can be registered based on the OAuth 2.0 protocol, and the application can access the service. In this case, a structure for calling an API of a service may be configured as shown in FIG. 6 as an example.

먼저, 단계 S601에서 서비스 게이트웨이(130)는 서비스 제공자(300)에 의해 제공되는 제1 서비스의 /read에 대한 호출을 요청 받을 수 있다. 단계 S601은 로그인 프로세스 등을 통해 사용자에 대한 인증이 완료된 이후에 수행될 수 있다. 이 경우, 단계 S602에서 서비스 게이트웨이(130)는 서비스 게이트웨이(130)에 등록된 API들의 API 스토어(133)에서 /read에 대한 API의 영역(scope)을 확인할 수 있다.First, in step S601, the service gateway 130 may receive a call request for /read of the first service provided by the service provider 300. Step S601 may be performed after user authentication is completed through a login process or the like. In this case, in step S602, the service gateway 130 may check the scope of the API for /read in the API store 133 of the APIs registered in the service gateway 130.

/read에 대한 API의 영역(scope)이 news_read인 것을 확인한 서비스 게이트웨이(130)는 단계 S603에서 news_read에 대한 영역 및 인증된 사용자의 역할(role) 및 API의 영역에 대해 접근할 수 있는 사용자의 역할에 대한 확인을 인증 정보 제공자(121)에게 요청할 수 있다.After confirming that the scope of the API for /read is news_read, the service gateway 130 determines the scope for news_read and the role of the authenticated user and the role of the user who can access the scope of the API in step S603. Confirmation of can be requested to the authentication information provider 121 .

이후, 인증 정보 제공자(121)를 통한 확인 결과에 기반하여 서비스 게이트웨이(130)는 단계 S605에서 제1 서비스의 /read에 대한 API의 영역과 사용자의 역할을 확인한 결과에 따라 API에 대한 접근을 허여할 수 있다. 도 6에 도시된 방법을 통해서 API에 대한 접근 허여 여부를 판단하기 위해서, API를 서비스 게이트웨이에 등록하는 시점에 제1 서비스의 /read에 대한 API의 영역과 사용자의 역할을 지정한 이후, 서비스 게이트웨이(130)는 지정된 영역과 역할에 따라서 단계 S606에서 서비스 제공자(300)에게 제1 서비스의 /read를 요청할 수 있다. 이후, 서비스 게이트웨이(130)는 서비스 제공자(300)로부터 /read를 요청한 결과를 수신하여, 단계 S607에서 단계 S601에서 받은 요청에 대한 응답으로서 출력할 수 있다.Thereafter, based on the result of confirmation through the authentication information provider 121, the service gateway 130 grants access to the API according to the result of confirming the role of the user and the area of the API for /read of the first service in step S605. can do. In order to determine whether access to the API is allowed through the method shown in FIG. 6, after designating the API area for /read of the first service and the role of the user at the time of registering the API in the service gateway, the service gateway ( 130) may request /read of the first service from the service provider 300 in step S606 according to the designated area and role. Thereafter, the service gateway 130 may receive a result of requesting /read from the service provider 300 and output the result in step S607 as a response to the request received in step S601.

그러나, 도 6에 도시된 바와 같이 서비스 토큰을 사용하지 않고 클라이언트 ID를 등록하여 사용하는 경우, 서비스의 API에 접근하기 위해 사용자의 역할에 따른 API 영역이 정의 및 관리되어야 한다. 또한, 서비스별로 사용자의 역할과 영역을 지정하여 등록하고, API에 접근하고자 할 때마다 검증을 해야 하므로 호출의 수가 많아질수록 응답 성능이 저하될 수 있다.However, as shown in FIG. 6 , when a client ID is registered and used without using a service token, an API area according to a user's role must be defined and managed in order to access a service API. In addition, since a user's role and area must be specified and registered for each service, and verification must be performed each time an API is accessed, response performance may deteriorate as the number of calls increases.

또는, 서비스 제공 시스템(100)이 서비스 계정을 통해서 일 회 생성 후 반복하여 사용할 수 있는 어플리케이션 크리덴셜(Application Credential)을 프로젝트 단위로 부여하여 API 호출 시에 사용할 수도 있다.Alternatively, the service providing system 100 may grant an application credential that can be used repeatedly after being created once through a service account in units of projects and used when calling an API.

그러나, 이 경우 API를 호출할 때마다 어플리케이션 크리덴셜을 인증 서버(120)로 전송하여 토큰을 받아서 사용해야 한다. 또한, 이 경우에도 서비스의 API에 접근하기 위해 사용자의 역할에 따른 API 영역이 정의 및 관리되어야 하며, 서비스별로 사용자의 역할과 영역을 지정하여 등록하고, API에 접근하고자 할 때마다 검증을 해야 하므로 호출의 수가 많아질수록 응답 성능이 저하될 수 있다.However, in this case, whenever the API is called, the application credential must be transmitted to the authentication server 120 to receive and use the token. Also, in this case, API areas must be defined and managed according to the user's role in order to access the API of the service, designate and register the user's role and area for each service, and verify each time they want to access the API. As the number of calls increases, response performance may deteriorate.

도 7은 몇몇 실시 예에 따라 서비스 토큰을 이용하여 서비스의 API를 호출하는 구조를 설명하기 위한 예시를 도시한 도면이다.7 is a diagram illustrating an example for explaining a structure of calling an API of a service using a service token according to some embodiments.

몇몇 실시 예에 따라 사용자 인증 토큰과 서비스 토큰을 별개로 발급하여 이용할 경우, 도 7에 도시된 구조로 인증이 수행될 수 있다. 먼저, 사용자의 로그인 이후에 단계 S701에서 서비스 게이트웨이(130)는 서비스 제공자(300)에 의해 제공되는 제1 서비스의 /write에 대한 호출을 요청 받을 수 있다. 이 경우, 서비스 게이트웨이(130)의 API 관리자(131)는 서비스 게이트웨이(130)의 API 스토어(133)에 등록된 제1 서비스에 대한 정보를 확인할 수 있다. 도 7을 참조하면, API 스토어(133)에서 제1 서비스에 대한 서비스 ID, 패스티켓 ID를 확인할 수 있으며, 제1 서비스에 대해 등록된 API가 /read 및 /write임을 확인할 수 있다.According to some embodiments, when a user authentication token and a service token are separately issued and used, authentication may be performed with the structure shown in FIG. 7 . First, after the user logs in, in step S701, the service gateway 130 may receive a request for a call to /write of the first service provided by the service provider 300. In this case, the API manager 131 of the service gateway 130 may check information about the first service registered in the API store 133 of the service gateway 130 . Referring to FIG. 7 , it is possible to check the service ID and passticket ID for the first service in the API store 133, and it can be confirmed that APIs registered for the first service are /read and /write.

이후, 단계 S703에서 인증 정보 제공자에게 제1 서비스에 대하여 확인된 패스티켓 ID와 함께 서비스 토큰에 대한 검증을 요청할 수 있다. 인증 정보 제공자(121)를 통해서 서비스 토큰에 대한 검증이 완료되면, 서비스 게이트웨이(130)는 단계 S704에서 확인되며 제1 서비스에 대해 등록된 API 인 /write에 대하여, 단계 S705에서 서비스 제공자(300)에게 /write에 대한 요청과 함께 서비스 토큰 및 사용자 인증 토큰을 전달할 수 있다.Thereafter, in step S703, the authentication information provider may be requested to verify the service token along with the verified passticket ID for the first service. When verification of the service token is completed through the authentication information provider 121, the service gateway 130 is checked in step S704 and the service provider 300 in step S705 for /write, an API registered for the first service. You can pass a service token and user authentication token along with a request to /write.

이후 서비스 제공자(300)는 단계 S706에서 /write에 대한 요청과 함께 전달 받은 사용자 인증 토큰에 대한 검증을 인증 정보 제공자(121)에게 요청할 수 있다. 이후, 서비스 제공자(300)는 검증 결과에 따라서 제1 서비스의 /write를 수행하고, 단계 S707에서 서비스 게이트웨이(130)에게 /write를 수행한 결과를 전달할 수 있다. /write를 수행한 결과를 전달 받은 서비스 게이트웨이(130)는 단계 S701에서 받은 요청에 대한 응답으로서 /write를 수행한 결과를 출력할 수 있다. 몇몇 실시 예에 따르면, 서비스 ID는 패스티켓 ID에 일대 일로 대응될 수 있다. 또한 하나의 패스티켓 ID에 기초하여 서로 다른 복수 개의 서비스 토큰이 발급될 수도 있다. 예를 들어, 하나의 패스티켓 ID에 기초하여 사용 가능한 기간을 지정하여 복수 개의 서비스 토큰이 발급될 수 있다. 다른 예를 들면, 사용자 ID 별로 서비스를 사용할 수 있는 시간대를 지정하여 서비스 토큰이 발급될 수 있다. 또 다른 예를 들면, 한 번의 로그인이 유지되는 기간 동안, 즉, 한 사용자가 로그인한 시점부터 로그아웃하는 시점까지 유효한 서비스 토큰이 발급될 수도 있다. 또한, 몇몇 실시 예에 따르면, 하나의 사용자 ID에 기초해서 복수의 사용자 인증 토큰이 발급될 수도 있다. 예를 들면, 하나의 사용자 ID에 대해 하루 중 유효한 시간대를 서로 다르게 지정한 복수 개의 사용자 인증 토큰이 발급될 수도 있다. 다른 예를 들면, 하나의 사용자 ID에 대해 사용자가 로그인한 시점부터 로그아웃한 시점까지 유효한 사용자 인증 토큰이 발급될 수도 있다.Thereafter, the service provider 300 may request the authentication information provider 121 to verify the received user authentication token along with the request for /write in step S706. Thereafter, the service provider 300 may perform /write of the first service according to the verification result, and deliver the result of performing /write to the service gateway 130 in step S707. The service gateway 130 receiving the result of performing /write may output the result of performing /write as a response to the request received in step S701. According to some embodiments, service IDs may correspond to passticket IDs on a one-to-one basis. Also, a plurality of different service tokens may be issued based on one passticket ID. For example, a plurality of service tokens may be issued by specifying a usable period based on one pass ticket ID. For another example, a service token may be issued by specifying a time period in which a service can be used for each user ID. For another example, a valid service token may be issued for a period during which one login is maintained, that is, from a time when a user logs in to a time when a user logs out. Also, according to some embodiments, a plurality of user authentication tokens may be issued based on one user ID. For example, a plurality of user authentication tokens may be issued that designate valid time zones of the day differently for one user ID. For another example, a user authentication token valid for one user ID from the time the user logs in to the time the user logs out may be issued.

즉, 서비스 토큰을 이용하여 도 7에 도시된 구조로 인증을 수행하는 경우, 서비스 게이트웨이(130)가 API에 대한 영역과 사용자에 대한 역할을 매번 지정해야 할 필요가 없으므로, 불필요한 리소스의 사용을 줄일 수 있다. 따라서, API 호출의 수가 늘어나더라도 응답 성능이 저하되는 것을 방지할 수 있다.That is, when authentication is performed with the structure shown in FIG. 7 using a service token, the service gateway 130 does not need to designate an API realm and a user role each time, thereby reducing unnecessary resource use. can Accordingly, even if the number of API calls increases, response performance can be prevented from deteriorating.

도 8은 몇몇 실시 예에 따라 서비스 토큰이 생성되는 프로세스를 설명하기 위한 도면이다.8 is a diagram for explaining a process of generating a service token according to some embodiments.

먼저, 단계 S810에서 서비스 제공 시스템(100)은 서비스에 대한 등록 요청을 수신한 경우, 등록을 요청 받은 서비스가 서비스 게이트웨이(130)에 등록되지 않은 신규한 서비스인지 여부를 판단할 수 있다(S820). 단계 S820에서 판단한 결과, 등록을 요청 받은 서비스가 신규한 서비스인 경우, 인증 서버(120)는 패스티켓 ID를 생성할 수 있다. 몇몇 실시 예에 따르면, 인증 서버(120)는 키 관리 시스템(126)을 통해서 서비스나 프로젝트의 비밀 키에 대한 자원 식별자, 비밀 키에 대한 키 명칭 및 유효기간을 이용하여 패스티켓 ID를 생성할 수 있다. 여기서, 유효기간은 서비스에 대한 구매의 유효기간 또는 서비스의 개발에 대한 프로젝트의 유효기간일 수 있다. 예를 들어, 인증 서버(120)는 아래 표 1에 나타난 바와 같이 자원 식별자(KeyURI), 키 명칭(keyName) 및 프로젝트 유효기간(ProjectPeriod)를 이용하여 패스티켓 ID(ticketID)를 생성할 수 있다.First, when the service providing system 100 receives a service registration request in step S810, it may determine whether the service requested to be registered is a new service that has not been registered with the service gateway 130 (S820). . As a result of determination in step S820, if the service requested for registration is a new service, the authentication server 120 may generate a passticket ID. According to some embodiments, the authentication server 120 may generate a pass ticket ID using a resource identifier for a secret key of a service or project, a key name for the secret key, and an expiration date through the key management system 126. there is. Here, the validity period may be a validity period of purchasing a service or a validity period of a project for service development. For example, as shown in Table 1 below, the authentication server 120 may generate a pass ticket ID (ticketID) using a resource identifier (KeyURI), a key name (keyName), and a project validity period (ProjectPeriod).


KeyURI : /SDS/Dept/Project1, keyName : Project1-PassTicket,
ProjectPeriod = 1 year
ticketID = createServiceKey(keyName, keyURI, AES256, ProjectPeriod)

KeyURI: /SDS/Dept/Project1, keyName: Project1-PassTicket,
ProjectPeriod = 1 year
ticketID = createServiceKey(keyName, keyURI, AES256, ProjectPeriod)

S810 단계 내지 S830 단계를 통해서 서비스가 등록된 이후, 단계 S840 에서 서비스 제공 시스템(100)이 등록된 서비스를 사용하기 위한 사용 등록 신청을 수신한 경우, 인증 서버(120)는 단계 S850에서 해당 서비스의 패스티켓 ID에 따른 비밀키를 생성할 수 있다. 몇몇 실시 예에 따르면, 인증 서버(120)는 인증 키에 대한 유지기간(duration)을 설정하여 비밀 키를 생성할 수 있다. 예를 들어, 유지기간을 15분으로 지정하면 해당 비밀 키는 15분간 사용 가능하고, 유지기간을 0으로 설정할 경우 변경되지 않고 고정된 비밀 키를 생성할 수 있다. 패스티켓 ID(ticketID) 및 유지기간(duration)에 기초하여 비밀 키(Passkey)를 생성하기 위한 구문의 예시를 들면 표 2에 나타난 바와 같이 구성될 수 있다.After the service is registered through steps S810 to S830, when the service providing system 100 receives a use registration application for using the registered service in step S840, the authentication server 120 determines the corresponding service in step S850. A secret key can be generated according to the pass ticket ID. According to some embodiments, the authentication server 120 may generate a secret key by setting a duration for the authentication key. For example, if the maintenance period is set to 15 minutes, the corresponding secret key can be used for 15 minutes, and if the maintenance period is set to 0, a fixed secret key without change can be generated. An example of a syntax for generating a secret key (Passkey) based on a ticket ID (ticketID) and a duration (duration) may be configured as shown in Table 2.


Passkey = getServiceKey(ticket id, duration)

Passkey = getServiceKey(ticket id, duration)

이후, 단계 S860에서 인증 서버(120)는 패스티켓 ID 및 비밀 키를 이용하여 티켓 메시지를 생성할 수 있다. 몇몇 실시 예에 따르면 티켓 메시지는 패스티켓 ID, 프로젝트 ID, 비밀 키, 유지기간 등 서비스에 관련된 정보를 포함할 수 있다.Then, in step S860, the authentication server 120 may generate a ticket message using the pass ticket ID and the secret key. According to some embodiments, the ticket message may include service-related information such as a pass ticket ID, a project ID, a secret key, and a maintenance period.

이후, 단계 S870에서 인증 서버(120)는 이후 서비스 토큰을 검증하기 위해 티켓 메시지에 대한 시그니처(signature)를 생성할 수 있다. 여기서, 인증 서버(120)는 키 관리 시스템(126)을 통해서 패스티켓 ID, 비밀 키 및 티켓 메시지를 이용하여 시그니처를 생성할 수 있다. 예를 들어, 키 관리 시스템(126)은 아래 표 3에 나타난 바와 같이 패스티켓 ID(ticketID), 비밀 키(Passkey) 및 티켓 메시지(ticket message)를 이용하여 시그니처를 생성할 수 있다.Then, in step S870, the authentication server 120 may generate a signature for the ticket message to verify the service token. Here, the authentication server 120 may generate a signature using a pass ticket ID, a secret key, and a ticket message through the key management system 126 . For example, as shown in Table 3 below, the key management system 126 may generate a signature using a pass ticket ID (ticketID), a secret key (Passkey), and a ticket message (ticket message).


Signature = CreateSignature (ticket id, Passkey, ticket message)

Signature = CreateSignature (ticket id, passkey, ticket message)

이후, 인증 서버(120)는 단계 S880에서 티켓 메시지와 시그니처를 포함하는 서비스 토큰을 생성할 수 있다.Thereafter, the authentication server 120 may generate a service token including a ticket message and a signature in step S880.


ServiceToken = TicketMesasage+Signature

ServiceToken = TicketMesasage+Signature

몇몇 실시 예에 따르면, 도 8에 도시된 프로세스는 키 관리 시스템(126)을 이용하여 수행될 수 있으며, 이 경우 API 관리자(131)나 서비스 제공자(300)는 키 관리 시스템(126)을 통해서 서비스 토큰에 대한 검증을 수행할 수 있다.According to some embodiments, the process shown in FIG. 8 may be performed using the key management system 126, in which case the API manager 131 or the service provider 300 provides service through the key management system 126. Token verification can be performed.

도 9는 다른 몇몇 실시 예에 따라 복수의 서비스 사이에서 API 호출이 발생하는 경우에 관한 프로세스를 도시한 도면이다.9 is a diagram illustrating a process when an API call occurs between a plurality of services according to some other embodiments.

몇몇 실시 예에 따르면, 복수의 서비스 사이에서 API 호출이 발생하는 경우가 존재할 수 있다. 예를 들어, 제1 서비스(300-1)에서 제공하는 API를 실행하는 과정에서, 제2 서비스(300-2)에서 제공하는 API를 호출하게 되는 경우가 존재할 수 있다.According to some embodiments, API calls may occur between a plurality of services. For example, in the process of executing an API provided by the first service 300-1, there may be a case in which an API provided by the second service 300-2 is called.

여기서, 단계 S910 내지 단계 S990은 도 5의 단계 S510 내지 단계 S590과 유사하게 수행될 수 있다. 단계 S990에서 API를 실행하는 과정에서 제1 서비스(300-1)가 제2 서비스(300-2)의 API를 호출하는 경우, 제1 서비스(300-1)는 단계 S991에서 제2 서비스(300-2)의 API에 대한 호출과, 단계 S970에서 전달 받은 서비스 토큰 및 사용자 인증 토큰을 제2 서비스(300-2)에 전달할 수 있다.Here, steps S910 to S990 may be performed similarly to steps S510 to S590 of FIG. 5 . When the first service 300-1 calls the API of the second service 300-2 in the process of executing the API in step S990, the first service 300-1 calls the API of the second service 300-2 in step S991. The API call of -2) and the service token and user authentication token received in step S970 may be delivered to the second service 300-2.

이후, 단계 S992에 제2 서비스(300-2)는 인증 정보 제공자(121)에게 사용자 인증 토큰에 대한 검증을 요청할 수 있다. 이후, 단계 S993에서 제2 서비스(300-2)는 검증 결과에 따라 API를 실행한 후 단계 S994에서 제2 서비스(300-2)의 API 호출 결과를 제1 서비스(300-1)에 전달할 수 있다.Thereafter, in step S992, the second service 300-2 may request verification of the user authentication token from the authentication information provider 121. Thereafter, in step S993, the second service 300-2 executes the API according to the verification result, and then in step S994, the API call result of the second service 300-2 may be delivered to the first service 300-1. there is.

이후, 제1 서비스(300-1)는 제2 서비스(300-2)의 API 호출 결과를 이용하여 API 실행을 마친 후 단계 S995에서 제1 서비스(300-1)의 API 호출 결과를 서비스 인터페이스(200)에 전달할 수 있다.Then, after the first service 300-1 finishes executing the API using the API call result of the second service 300-2, the API call result of the first service 300-1 is sent to the service interface (S995). 200) can be passed on.

도 10은 몇몇 실시 예에 따라 서비스 제공 시스템이 사용자에게 서비스를 제공하기 위해 수행하는 프로세스를 설명하기 위한 도면이다.10 is a diagram for explaining a process performed by a service providing system to provide a service to a user according to some embodiments.

먼저, 단계 S1010에서 서비스 제공 시스템(100)은 신규 서비스를 등록할 수 있다. 여기서, 서비스 제공 시스템(100)는 개발이 완료된 서비스를 등록하거나, 제공될 서비스를 개발할 수 있도록 프로젝트를 제공하고, 개발된 서비스를 등록할 수 있다.First, in step S1010, the service providing system 100 may register a new service. Here, the service providing system 100 may register a developed service, provide a project to develop a service to be provided, and register the developed service.

이후, 단계 S1020에서 서비스 제공 시스템(100)은 사용자에 대해 서비스 제공 시스템(100)에 로그인을 통한 인증이 수행된 이후, 사용자에 대해 사용자 인증 토큰을 발급할 수 있다.Thereafter, in step S1020, the service providing system 100 may issue a user authentication token to the user after the user is authenticated by logging into the service providing system 100.

이후, 단계 S1030에서 서비스 제공 시스템(100)은 등록된 서비스에 대한 사용 등록 신청을 처리할 수 있다. 여기서, 사용 등록 신청은 서비스 인터페이스(200)를 통해 등록된 서비스에 대한 구매, 구매한 서비스에 대한 선택 및 서비스를 개발하기 위해 설정된 프로젝트에 대한 참여 중 어느 하나를 수행하는 것을 의미할 수 있다. 단계 S1030에서, 서비스 제공 시스템(100)은 사용 등록 신청을 처리함으로써 등록된 서비스에 대한 인증을 위한 서비스 토큰을 발급할 수 있다.Then, in step S1030, the service providing system 100 may process a use registration application for the registered service. Here, application for use registration may mean performing any one of purchasing a registered service through the service interface 200, selecting a purchased service, and participating in a project set to develop the service. In step S1030, the service providing system 100 may issue a service token for authentication of a registered service by processing a use registration application.

이후, 단계 S1040에서 서비스 제공 시스템(100)은 서비스를 이용하기 위한 API 호출과 함께 사용자 인증 토큰 및 서비스 토큰을 수신할 수 있다. 이후, 단계 S1050에서 서비스 제공 시스템(100)은 서비스 토큰의 유효성에 대한 검증을 인증 서버(120)에 요청할 수 있다. 인증 서버(120)는 키 관리 시스템(126)을 이용하여 서비스 토큰의 유효성에 대한 검증을 수행할 수 있다.Then, in step S1040, the service providing system 100 may receive a user authentication token and a service token together with an API call for using the service. Then, in step S1050, the service providing system 100 may request the authentication server 120 to verify validity of the service token. The authentication server 120 may perform verification of validity of the service token using the key management system 126 .

서비스 토큰이 검증된 경우, 서비스 제공 시스템(100)은 단계 S1060에서 API 호출과 함께 사용자 인증 토큰 및 서비스 토큰을 서비스를 제공하는 서비스 제공자(300)에게 전달할 수 있다.When the service token is verified, the service providing system 100 may transfer the user authentication token and the service token to the service provider 300 providing the service along with an API call in step S1060.

이후, API 호출과 함께 사용자 인증 토큰 및 서비스 토큰을 전달 받은 서비스 제공자(300)는 서비스 제공 시스템(100)의 인증 서버(120)에 사용자 인증 토큰의 유효성에 대한 검증을 요청할 수 있다. 인증 서버(120)는 IAM(123)을 이용하여 사용자 인증 토큰의 유효성에 대한 검증을 수행할 수 있다.Thereafter, the service provider 300 receiving the user authentication token and the service token along with the API call may request verification of validity of the user authentication token to the authentication server 120 of the service providing system 100 . The authentication server 120 may use the IAM 123 to verify the validity of the user authentication token.

이후, 사용자 인증 토큰이 검증된 경우, 서비스 제공자(300)는 단계 S1080에서 호출된 API를 수행한 후 API 수행 결과를 서비스 제공 시스템(100)에 전달할 수 있다.Thereafter, when the user authentication token is verified, the service provider 300 may perform the API called in step S1080 and deliver the API performance result to the service providing system 100 .

지금까지 설명된 본 발명의 실시예에 따른 방법들은 컴퓨터가 읽을 수 있는 코드로 구현된 컴퓨터프로그램의 실행에 의하여 수행될 수 있다. 상기 컴퓨터프로그램은 인터넷 등의 네트워크를 통하여 제1 컴퓨팅 장치로부터 제2 컴퓨팅 장치에 전송되어 상기 제2 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 제2 컴퓨팅 장치에서 사용될 수 있다. 상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는, 서버 장치, 클라우드 서비스를 위한 서버 풀에 속한 물리 서버, 데스크탑 피씨와 같은 고정식 컴퓨팅 장치를 모두 포함한다.The methods according to the embodiments of the present invention described so far can be performed by executing a computer program implemented as a computer readable code. The computer program may be transmitted from the first computing device to the second computing device through a network such as the Internet, installed in the second computing device, and thus used in the second computing device. The first computing device and the second computing device include both a server device, a physical server belonging to a server pool for a cloud service, and a fixed computing device such as a desktop PC.

상기 컴퓨터프로그램은 DVD-ROM, 플래시 메모리 장치 등의 기록매체에 저장된 것일 수도 있다.The computer program may be stored in a recording medium such as a DVD-ROM or a flash memory device.

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art to which the present invention pertains can be implemented in other specific forms without changing the technical spirit or essential features of the present invention. can understand that Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting.

Claims (12)

클라우드 플랫폼을 이용한 서비스를 제공하는 방법에 있어서,
서비스 게이트웨이에 서비스에 대한 어플리케이션 프로그램 인터페이스를 등록할 경우, 상기 클라우드 플랫폼의 인증 정보 제공자가 패스티켓 아이디를 생성하는 단계;
사용자의 로그인 프로세스를 통해 상기 서비스에 대한 사용자의 인증이 이루어진 경우, 상기 인증 정보 제공자가 상기 사용자에 대한 사용자 인증 토큰을 발급하는 단계;
상기 서비스를 사용하기 위한 사용 등록 신청이 수신된 경우, 상기 인증 정보 제공자가 상기 서비스에 대해 상기 패스티켓 아이디를 이용하여 생성된 서비스 토큰을 발급하는 단계;
상기 서비스 게이트웨이가 상기 어플리케이션 프로그램 인터페이스에 대한 호출, 사용자 인증 토큰 및 서비스 토큰을 수신한 경우, 상기 수신된 서비스 토큰이 상기 발급한 서비스 토큰으로서 유효한지 여부를 상기 인증 정보 제공자를 통해서 검증하는 단계; 및
상기 수신된 서비스 토큰이 유효한 경우, 상기 서비스 게이트웨이가 제1 서비스 제공자에게 상기 호출, 상기 수신된 사용자 인증 토큰 및 상기 수신된 서비스 토큰을 전달하는 단계를 포함하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
In the method of providing a service using a cloud platform,
generating a passticket ID by an authentication information provider of the cloud platform when registering an application program interface for a service in a service gateway;
issuing, by the authentication information provider, a user authentication token for the user when the user is authenticated for the service through the user's login process;
issuing, by the authentication information provider, a service token generated by using the passticket ID for the service when a use registration application for using the service is received;
when the service gateway receives a call to the application program interface, a user authentication token, and a service token, verifying whether the received service token is valid as the issued service token through the authentication information provider; and
If the received service token is valid, the service gateway forwarding the call, the received user authentication token, and the received service token to a first service provider.
A method of providing services using a cloud platform.
제1항에 있어서,
상기 검증하는 단계는
상기 호출이 수신된 경우 상기 발급한 서비스 토큰을 관리하는 상기 인증 정보 제공자의 키 관리 시스템을 통해서 상기 수신된 서비스 토큰의 유효성에 대한 검증을 수행하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 1,
The verification step is
When the call is received, verifying the validity of the received service token through a key management system of the authentication information provider that manages the issued service token.
A method of providing services using a cloud platform.
제1항에 있어서,
상기 제1 서비스 제공자가 상기 호출을 수신한 경우, 상기 제1 서비스 제공자가 상기 인증 정보 제공자에게 상기 수신된 사용자 인증 토큰의 유효성에 대한 검증을 요청하는 단계; 및
상기 인증 정보 제공자에 의해 상기 수신된 사용자 인증 토큰의 유효성의 검증이 완료된 경우, 상기 제1 서비스 제공자가 상기 어플리케이션 프로그램 인터페이스를 호출하고, 상기 어플리케이션 프로그램 인터페이스를 호출한 결과를 상기 서비스 게이트웨이를 통해 상기 호출을 발생시킨 단말에 전달하는 단계를 더 포함하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 1,
requesting, by the first service provider, verification of validity of the received user authentication token to the authentication information provider, when the first service provider receives the call; and
When verification of validity of the received user authentication token is completed by the authentication information provider, the first service provider calls the application program interface, and transmits the calling result of the application program interface through the service gateway. Further comprising the step of delivering to the terminal that generated the,
A method of providing services using a cloud platform.
제3항에 있어서,
상기 수신된 사용자 인증 토큰의 유효성에 대한 검증을 요청하는 단계는,
상기 발급된 사용자 인증 토큰을 관리하는 상기 인증 정보 제공자의 신원 및 접근 관리자를 통해서 상기 수신된 사용자 인증 토큰의 유효성을 검증하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 3,
Requesting verification of the validity of the received user authentication token,
verifying the validity of the received user authentication token through an identity and access manager of the authentication information provider managing the issued user authentication token;
A method of providing services using a cloud platform.
제1항에 있어서,
상기 사용 등록 신청은,
상기 서비스에 대한 구매, 구매한 서비스에 대한 선택 및 상기 서비스를 개발하기 위해 설정된 프로젝트에 대한 참여 요청 중 어느 하나인,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 1,
The application for registration of use,
Any one of purchasing the service, selecting the purchased service, and requesting participation in a project set to develop the service,
A method of providing services using a cloud platform.
제1항에 있어서,
상기 서비스 토큰을 발급하는 단계는,
상기 사용 등록 신청에 상응하는 비밀 키를 생성하는 단계와,
상기 패스티켓 아이디 및 상기 비밀 키를 포함하는 메시지를 생성하는 단계와,
상기 패스티켓 아이디, 상기 비밀 키 및 상기 메시지를 이용하여 시그니처를 생성하는 단계와,
상기 메시지와 상기 시그니처로 구성되는 상기 서비스 토큰을 생성하는 단계를 포함하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 1,
The step of issuing the service token,
generating a secret key corresponding to the use registration application;
generating a message including the pass ticket ID and the secret key;
generating a signature using the pass ticket ID, the secret key, and the message;
Generating the service token composed of the message and the signature,
A method of providing services using a cloud platform.
제1항에 있어서,
상기 서비스 토큰을 발급하는 단계는,
상기 서비스에 대한 구매, 구매한 서비스에 대한 선택 또는 상기 서비스의 개발을 위해 설정된 프로젝트 단위로 상기 서비스 토큰을 발급하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 1,
The step of issuing the service token,
Issuing the service token in units of projects set for purchase of the service, selection of the purchased service, or development of the service,
A method of providing services using a cloud platform.
제7항에 있어서,
상기 패스티켓 아이디는,
상기 서비스 또는 상기 프로젝트에 대한 비밀 키의 자원 식별자, 상기 비밀 키에 대한 키 명칭 및 상기 서비스 또는 상기 프로젝트에 대한 유효기간을 포함하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 7,
The pass ticket ID is,
Including the resource identifier of the secret key for the service or the project, the key name for the secret key, and the validity period for the service or the project,
A method of providing services using a cloud platform.
제8항에 있어서,
상기 인증 정보 제공자가 제품 아이디를 입력 받는 단계; 및
상기 패스티켓 아이디를 생성할 경우, 상기 제품 아이디를 이용하여 상기 자원 식별자를 생성하는 단계를 더 포함하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 8,
receiving a product ID by the authentication information provider; and
Further comprising generating the resource identifier using the product ID when generating the passticket ID,
A method of providing services using a cloud platform.
제1항에 있어서,
상기 제1 서비스 제공자가 상기 호출을 처리하기 위해 제2 서비스 제공자에 의해 제공되는 추가 어플리케이션 프로그램 인터페이스에 대한 호출이 발생하는 경우, 상기 제1 서비스 제공자가 상기 추가 어플리케이션 프로그램 인터페이스에 대한 호출, 상기 수신된 사용자 인증 토큰 및 상기 수신된 서비스 토큰을 상기 제2 서비스 제공자에게 전달하는 단계를 더 포함하는,
클라우드 플랫폼을 이용한 서비스 제공 방법.
According to claim 1,
When the first service provider calls an additional application program interface provided by a second service provider to process the call, the first service provider calls the additional application program interface, the received Further comprising passing the user authentication token and the received service token to the second service provider.
A method of providing services using a cloud platform.
클라우드 플랫폼을 이용한 서비스 제공 시스템에 있어서,
상기 클라우드 플랫폼을 통해 서비스를 제공하는 어플리케이션 프로그램 인터페이스의 등록 시점에 상기 서비스를 식별하는 패스티켓 아이디를 할당하고, 상기 패스티켓 아이디를 이용하여 상기 서비스에 대한 사용 등록 신청에 대한 응답으로 서비스 토큰을 생성하며, 사용자의 로그인 프로세스를 통해 상기 사용자의 인증이 이루어진 경우 상기 사용자에 대한 사용자 인증 토큰을 생성하며, 상기 서비스 토큰 및 사용자 인증 토큰에 대한 유효성 검증을 수행하는 인증 정보 제공자;
상기 어플리케이션 프로그램 인터페이스를 관리하며, 상기 어플리케이션 프로그램 인터페이스에 대한 호출, 사용자 인증 토큰 및 서비스 토큰을 수신한 경우 상기 인증 정보 제공자를 통해 상기 서비스 토큰의 유효성을 검증 받은 후 상기 서비스 토큰이 유효한 경우 상기 어플리케이션 프로그램 인터페이스를 제공하는 서비스 제공자에게 상기 호출, 상기 사용자 인증 토큰 및 상기 서비스 토큰을 전달하는 서비스 게이트웨이; 및
카탈로그 등록 요청을 수신하면, 상기 카탈로그 등록 요청에 상응하는 카탈로그를 등록하고, 상기 인증 정보 제공자로부터 패스티켓 아이디를 제공 받아 상기 서비스 게이트웨이에 상기 어플리케이션 프로그램 인터페이스를 등록하는 카탈로그 서비스 제공자;을 포함하는,
클라우드 플랫폼을 이용한 서비스 제공 시스템.
In a service providing system using a cloud platform,
A passticket ID identifying the service is allocated at the time of registration of an application program interface that provides services through the cloud platform, and a service token is generated in response to a request for registration of use of the service using the passticket ID. and an authentication information provider generating a user authentication token for the user when the user is authenticated through the user's login process and validating the service token and the user authentication token;
The application program manages the application program interface, and when a call to the application program interface, a user authentication token, and a service token are received, the validity of the service token is verified through the authentication information provider, and the service token is valid. a service gateway that forwards the call, the user authentication token, and the service token to a service provider providing an interface; and
When receiving a catalog registration request, a catalog service provider registers a catalog corresponding to the catalog registration request, receives a passticket ID from the authentication information provider, and registers the application program interface with the service gateway.
A service delivery system using a cloud platform.
비일시적(non-transitory) 컴퓨터 판독 가능한 매체에 기록된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램의 명령어들이 컴퓨팅 장치의 프로세서에 의해 실행되는 경우에,
서비스 게이트웨이에 클라우드 플랫폼을 이용한 서비스에 대한 어플리케이션 프로그램 인터페이스를 등록할 경우, 상기 클라우드 플랫폼의 인증 정보 제공자가 패스티켓 아이디를 생성하는 단계;
사용자의 로그인 프로세스를 통해 상기 서비스에 대한 사용자의 인증이 이루어진 경우, 상기 인증 정보 제공자가 상기 사용자에 대한 사용자 인증 토큰을 발급하는 단계;
상기 서비스에 대한 사용 등록 신청이 수신된 경우, 상기 인증 정보 제공자가 상기 서비스에 대해 상기 패스티켓 아이디를 이용하여 생성된 서비스 토큰을 발급하는 단계;
상기 서비스 게이트웨이가 상기 어플리케이션 프로그램 인터페이스에 대한 호출, 사용자 인증 토큰 및 서비스 토큰을 수신한 경우, 상기 수신된 서비스 토큰이 상기 발급한 서비스 토큰으로서 유효한지 여부를 상기 인증 정보 제공자를 통해서 검증하는 단계; 및
상기 수신된 서비스 토큰이 유효한 경우, 상기 서비스 게이트웨이가 제1 서비스 제공자에게 상기 호출, 상기 수신된 사용자 인증 토큰 및 상기 수신된 서비스 토큰을 전달하는 단계를 포함하는 동작이 수행되는 것을 특징으로 하는,
컴퓨터 프로그램.


As a computer program recorded on a non-transitory computer readable medium, when the instructions of the computer program are executed by a processor of a computing device,
generating a pass ticket ID by an authentication information provider of the cloud platform when registering an application program interface for a service using a cloud platform with a service gateway;
issuing, by the authentication information provider, a user authentication token for the user when the user is authenticated for the service through the user's login process;
issuing, by the authentication information provider, a service token generated by using the passticket ID for the service when a use registration application for the service is received;
when the service gateway receives a call to the application program interface, a user authentication token, and a service token, verifying whether the received service token is valid as the issued service token through the authentication information provider; and
Characterized in that, if the received service token is valid, an operation comprising transferring the call, the received user authentication token, and the received service token to a first service provider by the service gateway is performed.
computer program.


KR1020180059389A 2018-05-25 2018-05-25 Service providing method based on cloud platform and system thereof KR102502167B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180059389A KR102502167B1 (en) 2018-05-25 2018-05-25 Service providing method based on cloud platform and system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180059389A KR102502167B1 (en) 2018-05-25 2018-05-25 Service providing method based on cloud platform and system thereof

Publications (2)

Publication Number Publication Date
KR20190134135A KR20190134135A (en) 2019-12-04
KR102502167B1 true KR102502167B1 (en) 2023-02-20

Family

ID=69004475

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180059389A KR102502167B1 (en) 2018-05-25 2018-05-25 Service providing method based on cloud platform and system thereof

Country Status (1)

Country Link
KR (1) KR102502167B1 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220023009A (en) * 2020-08-20 2022-03-02 이트너스 주식회사 System of multi-connection solution in platform and method performing the same
CN114598490B (en) * 2021-04-09 2024-03-29 亚信科技(南京)有限公司 Method, device, equipment and storage medium for redirecting page based on API gateway
KR102392469B1 (en) * 2021-05-04 2022-04-29 에스디티 주식회사 Method for replicating a project server for trouble-shooting and a cloud development platform system using the same
KR102417742B1 (en) * 2021-09-08 2022-07-06 비엠텍시스템 주식회사 API Data Aggregation System And Method Of The Same
KR20230085000A (en) 2021-12-06 2023-06-13 한국전자기술연구원 Intergrated cloud server supporting a single configuration and method for providing intergrated cloud service platform thereof
KR102430882B1 (en) * 2021-12-13 2022-08-09 에스지에이솔루션즈 주식회사 Method, apparatus and computer-readable medium for container work load executive control of event stream in cloud
CN115001807A (en) * 2022-05-31 2022-09-02 中国银行股份有限公司 User login processing method and device of application program
KR102628775B1 (en) * 2023-02-02 2024-01-23 (주)케이스마텍 Cloud HSM system for accessing token based on certificates and ID and method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101626723B1 (en) 2015-08-27 2016-06-13 목포대학교산학협력단 Service gateway using internet of things and operating method of the same

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102318279B1 (en) * 2014-02-18 2021-10-28 삼성전자주식회사 Method and apparatus for transmitting and receiving authentication information in a wireless communication system
US20150281225A1 (en) * 2014-03-27 2015-10-01 Microsoft Corporation Techniques to operate a service with machine generated authentication tokens
KR101824562B1 (en) * 2015-12-07 2018-02-01 숭실대학교산학협력단 Gateway and method for authentication

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101626723B1 (en) 2015-08-27 2016-06-13 목포대학교산학협력단 Service gateway using internet of things and operating method of the same

Also Published As

Publication number Publication date
KR20190134135A (en) 2019-12-04

Similar Documents

Publication Publication Date Title
KR102502167B1 (en) Service providing method based on cloud platform and system thereof
US11388158B2 (en) System and method for authenticating clients
TWI659313B (en) Automatic login method and device between multiple websites
US11544356B2 (en) Systems and methods for dynamic flexible authentication in a cloud service
US11082225B2 (en) Information processing system and control method therefor
KR102313859B1 (en) Authority transfer system, control method therefor, and client
US10922401B2 (en) Delegated authorization with multi-factor authentication
JP5423397B2 (en) Access authority management system, access authority management method, and access authority management program
WO2018145605A1 (en) Authentication method and server, and access control device
JP6245949B2 (en) Authorization server system, control method thereof, and program thereof.
JP6468013B2 (en) Authentication system, service providing apparatus, authentication apparatus, authentication method, and program
US20110004753A1 (en) Certificate generating/distributing system,certificate generating/distributing method and certificate generating/distributing program
KR20130007797A (en) Method and system for open authentication
JP2017004301A (en) Authentication server system, method, program, and storage medium
JP2014232433A (en) Image forming apparatus, server device, information processing method, and program
US11870766B2 (en) Integration of legacy authentication with cloud-based authentication
WO2009129753A1 (en) A method and apparatus for enhancing the security of the network identity authentication
CN114254289A (en) Cloud platform access method and device
KR20070009490A (en) System and method for authenticating a user based on the internet protocol address
KR102651448B1 (en) Method and Apparatus of A Blockchain-based Decentralized Authorization Protocol
JP7043480B2 (en) Information processing system and its control method and program
KR20220096846A (en) Method and apparatus for managing user profile
US20220116217A1 (en) Secure linking of device to cloud storage
US20230064529A1 (en) User controlled identity provisioning for software applications
US20230315830A1 (en) Web-based authentication for desktop applications

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