KR101882685B1 - 클라우드 기반의 서비스 제공 방법 - Google Patents

클라우드 기반의 서비스 제공 방법 Download PDF

Info

Publication number
KR101882685B1
KR101882685B1 KR1020160122414A KR20160122414A KR101882685B1 KR 101882685 B1 KR101882685 B1 KR 101882685B1 KR 1020160122414 A KR1020160122414 A KR 1020160122414A KR 20160122414 A KR20160122414 A KR 20160122414A KR 101882685 B1 KR101882685 B1 KR 101882685B1
Authority
KR
South Korea
Prior art keywords
license
virtual machine
machine interface
user terminal
software
Prior art date
Application number
KR1020160122414A
Other languages
English (en)
Other versions
KR20180013647A (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 PCT/KR2017/008148 priority Critical patent/WO2018021864A1/ko
Priority to JP2019527107A priority patent/JP6821805B2/ja
Priority to CN201780047321.9A priority patent/CN109643337A/zh
Priority to US16/321,560 priority patent/US11157597B2/en
Publication of KR20180013647A publication Critical patent/KR20180013647A/ko
Application granted granted Critical
Publication of KR101882685B1 publication Critical patent/KR101882685B1/ko
Priority to US17/488,350 priority patent/US11636184B2/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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2139Recurrent verification

Abstract

라이선스 관리 서버의 소프트웨어 서비스 제공 방법이 개시된다. 클라우드 서버로부터 가상 머신 인터페이스를 제공받는 단계, 상기 가상 머신 인터페이스에 서비스 제공 업체의 소프트웨어를 설치하는 단계, 상기 가상 머신 인터페이스에 라이선스를 전송하는 단계, 사용자 단말에 아이디 및 패스워드에 관한 권한을 부여하는 단계; 및 상기 사용자 단말이 상기 소프트웨어에 접속한 경우, 상기 가상 머신 인터페이스를 통해 상기 사용자 단말에 상기 소프트웨어의 서비스를 제공하는 단계를 포함한다. 따라서 정적 분석으로 인한 소스코드 유출을 원천적으로 방지할 수 있는 효과가 있다.

Description

클라우드 기반의 서비스 제공 방법{METHOD FOR PROVIDING CLOUD-BASED SERVICE}
본 발명은 클라우드 기반의 서비스 제공 방법에 관한 것으로, 더욱 상세하게는 소스 코드 유출 방지를 위한 클라우드 기반의 서비스 제공 방법에 관한 것이다.
애플리케이션이 사용자 단말에서 실행되기 위해서는, 서비스 제공 업체의 제품은 클라우드 제공 업체의 운영체제 상에서 설치되어야 한다. 즉, 서비스 제공 업자는 클라우드 제공 업체의 운영체제 상에서 서비스 제공 업체의 제품을 설치함으로써, 애플리케이션 관련 사업을 영위할 수 있다. 서비스가 실행되는 하나의 방법으로, 사용자는 클라우드 제공 업체와 IaaS(Infrastructure as a Service)에 관한 계약을 하고, 서비스 제공 업체와 제품 및 라이선스에 관한 계약을 할 수 있다. 이 경우, 서비스 제공 업체는 제품을 사용자가 계약한 IaaS에 설치할 수 있고, 사용자는 IaaS를 이용하여 애플리케이션 관련 사업을 영위할 수 있다. 이러한 방법은 사용자가 클라우드 제공 업체 및 서비스 제공 업체 모두와 계약을 해야 하기 때문에 절차가 번거로운 문제점이 있다.
서비스가 실행되는 또 다른 방법으로, 서비스 제공 업체는 클라우드 제공 업체와 IaaS에 관한 계약을 하고, 서비스 제공 업체는 사용자와 SaaS(Software as a Service)를 계약하고, 서비스 제공 업자는 서비스를 이용하여 애플리케이션 관련 사업을 영위할 수 있다. 이 경우 클라우드 제공 업체는 클라우드 시스템의 운영 권한이 있다. 정적 분석을 하려는 사용자는 소스 코드에 대한 보안을 원한다. 그러나, 서버스 제공 업체는 애플리케이션을 제작하는 서비스 제공 업체의 모든 소스를 가로챌 수 있다는 문제점이 있었다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, SaaS 기반의 서비스를 제공하면서도, 사용자의 소스 코드의 유출을 방지할 수 있는 서비스를 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 서비스 제공 업체의 라이선스(license) 관리 서버(server)의 소프트웨어 서비스 제공 방법은, 클라우드(cloud) 제공 업체의 클라우드 서버로부터 가상 머신 인터페이스(virtual machine interface)를 제공받는 단계; 상기 가상 머신 인터페이스에 상기 서비스 제공 업체의 소프트웨어를 설치하는 단계; 사용자 단말에 아이디(id) 및 패스워드(password)에 관한 권한을 부여하는 단계; 및 상기 사용자 단말이 상기 소프트웨어에 접속한 경우, 상기 가상 머신 인터페이스를 통해 상기 사용자 단말에 상기 소프트웨어의 서비스를 제공하는 단계를 포함한다.
여기서, 라이선스 관리 서버의 소프트웨어 서비스 제공 방법은, 상기 사용자 단말에 아이디 및 패스워드에 관한 권한을 인증하기 위해, 상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하는 단계를 더 포함할 수 있다.
여기서, 상기 아이디 및 패스워드에 관한 권한은 상기 소프트웨어의 이용을 위한 비용이 결제된 경우에 부여될 수 있다.
여기서, 상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급을 요청 받는 경우, 상기 아이디 및 상기 패스워드에 관한 권한을 다시 부여하는 단계를 더 포함할 수 있다.
여기서, 상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급 요청을 받지 않은 경우, 상기 소프트웨어에 접속하기 위한 상기 아이디 및 상기 패스워드를 폐기할 수 있다.
여기서, 상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하는 단계 이전에, 상기 클라우드 서버로부터 사용자의 회원 가입 정보를 포함하는 제1 메시지를 수신하고, 발급 요청 관리부에 상기 회원 가입 정보를 등록하는 단계; 상기 클라우드 서버로부터 사용자 식별 정보에 의해 식별되는 새로운 인스턴스 정보를 지시하는 제2 메시지를 수신하고, 라이선스 발급 관리부에 저장된 원시 인스턴스 정보를 상기 새로운 인스턴스 정보로 갱신하는 단계; 인스턴스 고유 식별자를 요청하는 제3 메시지를 상기 클라우드 서버에 전송하는 단계;
상기 클라우드 서버로부터 상기 인스턴스 고유 식별자를 수신하는 단계; 상기 발급 요청 관리부에 상기 인스턴스 고유 식별자 정보를 클라우드 서버로부터 수신한 인스턴스 고유 식별자로 갱신하는 단계; 및 상기 라이선스 발급 관리부를 통해 상기 라이선스를 발급할 수 있다.
여기서, 상기 라이선스가 상기 가상 머신 인터페이스로 전송된 경우, 상기 가상 머신 인터페이스로부터 라이선스 발급 완료를 지시하는 제4 메시지를 수신할 수 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 서비스 제공 업체의 라이선스(license) 관리 서버(server)는, 프로세서(processor); 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 데이터 베이스를 포함하고, 상기 적어도 하나의 명령은, 클라우드(cloud) 제공 업체의 클라우드 서버로부터 가상 머신 인터페이스(virtual machine interface)를 제공받고, 상기 가상 머신 인터페이스에 상기 서비스 제공 업체의 소프트웨어를 설치하고, 사용자 단말에 아이디(id) 및 패스워드(password)에 관한 권한을 부여하고, 그리고 상기 사용자 단말이 상기 소프트웨어에 접속한 경우, 상기 가상 머신 인터페이스를 통해 상기 사용자 단말에 상기 소프트웨어의 서비스를 제공하도록 실행 가능하다.
여기서, 상기 적어도 하나의 명령은, 상기 사용자 단말에 아이디 및 패스워드에 관한 권한을 인증하기 위해, 상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하도록 더 실행 가능할 수 있다.
여기서, 상기 아이디 및 패스워드에 관한 권한은 상기 소프트웨어의 이용을 위한 비용이 결제된 경우에 부여될 수 있다.
여기서, 상기 적어도 하나의 명령은, 상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급을 요청 받는 경우, 상기 아이디 및 상기 패스워드에 관한 권한을 다시 부여하도록 실행 가능할 수 있다.
여기서, 상기 적어도 하나의 명령은, 상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급 요청을 받지 않은 경우, 상기 소프트웨어에 접속하기 위한 상기 아이디 및 상기 패스워드를 폐기 하도록 실행 가능할 수 있다.
여기서, 상기 적어도 하나의 명령은, 상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하기 이전에, 상기 클라우드 서버로부터 사용자의 회원 가입 정보를 포함하는 제1 메시지를 수신하고, 발급 요청 관리부에 상기 회원 가입 정보를 등록하고, 상기 클라우드 서버로부터 사용자 식별 정보에 의해 식별되는 새로운 인스턴스 정보를 지시하는 제2 메시지를 수신하고, 라이선스 발급 관리부에 저장된 원시 인스턴스 정보를 상기 새로운 인스턴스 정보로 갱신하고, 인스턴스 고유 식별자를 요청하는 제3 메시지를 상기 클라우드 서버에 전송하고, 상기 클라우드 서버로부터 상기 인스턴스 고유 식별자를 수신하고, 상기 발급 요청 관리부에 상기 인스턴스 고유 식별자 정보를 클라우드 서버로부터 수신한 인스턴스 고유 식별자로 갱신하고, 그리고 상기 라이선스 발급 관리부를 통해 상기 라이선스를 발급하도록 더 실행 가능할 수 있다.
여기서, 상기 적어도 하나의 명령은, 상기 라이선스가 상기 가상 머신 인터페이스로 전송된 경우, 상기 가상 머신 인터페이스로부터 라이선스 발급 완료를 지시하는 제4 메시지를 수신하도록 더 실행 가능할 수 있다.
본 발명에 따르면, SaaS 기반의 사용임에도 불구하고, 사용자가 IaaS에 대한 제어권한을 갖게 되는바 SaaS의 장점 및 IaaS의 장점을 모두 갖게 되는 효과가 있다.
구체적으로, 본 발명에 따르면, 각 고객에게 맞는 설정을 통해 맞춤형 서비스 제공이 가능하고, 하드웨어 확장이 용이하다는 SaaS의 장점과, 사용자의 소스 코드의 유출을 방지할 수 있다는 IaaS의 장점을 모두 갖게 되는 효과가 있다.
도 1은 라이선스 발급을 지원하는 시스템을 개략적으로 도시한 블록도이다.
도 2는 라이선스 발급을 지원하는 시스템을 구성하는 노드를 도시한 블록도이다.
도 3은 IaaS 사용에 관한 블록도이다.
도 4는 SaaS 사용에 관한 블록도이다.
도 5는 IaaS-SaaS 사용에 관한 블록도이다.
도 6은 라이선스 발급을 지원하는 시스템을 구체적으로 도시한 블록도이다.
도 7은 라이선스 관리 서버에 라이선스 발급에 필요한 정보를 전송하는 과정을 도시한 순서도이다.
도 8은 라이선스 발급을 통해 애플리케이션(또는 소프트웨어)이 활성화되는 과정을 도시한 순서도이다.
도 9는 라이선스 발급 후 사용자 단말이 서비스를 이용하기까지의 과정을 도시한 순서도이다.
도 10은 라이선스를 재발급하는 방법을 도시한 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. 이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 라이선스 발급을 지원하는 시스템을 개략적으로 도시한 블록도이다.
도 1을 참조하면, 라이선스 발급을 지원하는 시스템은 클라우드 서버(100), 사용자 단말(140), 라이선스 관리 서버(110), 관리자 단말(150), 회원 메일 서버(120), 가상 머신 인터페이스(130) 등을 포함할 수 있다. 가상 머신 인터페이스(130)는 IaaS 또는 VM 인스턴스 등일 수 있다.
클라우드 서버(100)는 유선 네트워크 또는 무선 네트워크를 통해 사용자 단말(140), 라이선스 관리 서버(110) 및 회원 메일 서버(120)와 연결 될 수 있다. 예를 들어, 클라우드 서버(100)는 3GPP 표준에서 규정된 LTE(long term evolution), LTE-A(long term evolution-advanced) 등에 의해 사용자 단말(140), 라이선스 관리 서버(110) 및 회원 메일 서버(120)와 연결될 수 있다.
또는, 클라우드 서버(100)는 IEEE 표준에서 규정된 WLAN(wireless LAN), WPAN(wireless personal area network) 등에 의해 사용자 단말(140), 라이선스 관리 서버(110) 및 회원 메일 서버(120)와 연결될 수 있다.
클라우드 서버(100)는 유선 랜 등에 의해 사용자 단말(140), 라이선스 관리 서버(110) 및 회원 메일 서버(120)와 연결될 수 있다. 라이선스 관리 서버(110)는 유선 네트워크 또는 무선 네트워크를 통해 클라우드 서버(100) 및 관리자 단말(150)과 연결되어 있을 수 있다.
클라우드 서버(100)는 사용자 단말(140), 라이선스 관리 서버(110) 및 회원 메일 서버(120)로부터 라이선스 발급에 필요한 정보를 수신할 수 있고, 수신된 정보를 기초로 애플리케이션을 실행하는 동작을 수행할 수 있다. 여기서 애플리케이션은 소프트웨어일 수 있다. 사용자 단말(140), 라이선스 관리 서버(110)는 라이선스 발급에 필요한 정보를 클라우드 서버(100)에 전송할 수 있다.
사용자 단말(140)은 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 태블릿(tablet) PC, 무선전화기(wireless phone), 모바일폰(mobile phone), 스마트 폰(smart phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB (digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 영상 녹화기(digital picture recorder), 디지털 영상 재생기(digital picture player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player) 등을 일 수 있다.
가상 머신 인터페이스(130)는 클라우드 서버(100) 상에서 동작하는 소프트웨어일 수 있다.
도 2는 본 발명의 일 실시예에 따른 라이선스 발급을 지원하는 시스템을 구성하는 노드를 도시한 블록도이다.
도 2를 참조하면, 노드(200)는 적어도 하나의 프로세서(210), 메모리(220) 및 네트워크와 연결되어 통신을 수행하는 네트워크 인터페이스 장치(230)를 포함할 수 있다. 또한, 노드(200)는 입력 인터페이스 장치(240), 출력 인터페이스 장치(250), 저장 장치(260) 등을 더 포함할 수 있다.
여기서, 노드(200)는 도 1을 참조하여 설명된 사용자 단말(140), 클라우드 서버(100), 라이선스 관리 서버(110), 관리자 단말(150), 회원 메일 서버(120) 등일 수 있다. 노드(200)에 포함된 각각의 구성 요소들은 버스(bus)(270)에 의해 연결되어 서로 통신을 수행할 수 있다.
프로세서(210)는 메모리(220) 및/또는 저장 장치(260)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(210)는 중앙 처리 장치(central processing unit; CPU), 그래픽 처리 장치(graphics processing unit; GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다.
메모리(220)와 저장 장치(260)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(220)는 읽기 전용 메모리(read only memory; ROM) 및/또는 랜덤 액세스 메모리(random access memory; RAM)로 구성될 수 있다.
또한, 노드들 중에서 제1 노드에서 수행되는 방법(예를 들어, 메시지의 전송 또는 수신)이 설명되는 경우에도 이에 대응하는 제2 노드는 제1 노드에서 수행되는 방법과 상응하는 방법(예를 들어, 메시지의 수신 또는 전송)을 수행할 수 있다.
즉, 클라우드 서버(100)의 동작이 설명된 경우에 이에 대응하는 라이선스 관리 서버(110)는 클라우드 서버(100)의 동작과 상응하는 동작을 수행할 수 있다. 반대로, 라이선스 관리 서버(110)의 동작이 설명된 경우에 이에 대응하는 클라우드 서버(100)은 라이선스 관리 서버(110)의 동작과 상응하는 동작을 수행할 수 있다.
도 3은 IaaS 사용에 관한 블록도이다.
도 3을 참고하면, 일반적인 IaaS 사용 관계가 설명되어 있다. IaaS는 서버, 스토리지, 네트워크를 가상화 환경으로 만들어, 필요에 따라 인프라 자원을 사용할 수 있게 서비스를 제공하는 것을 의미할 수 있다. IaaS는 가상 머신 인터페이스(130)일 수 있다.
사용자 단말(140)은 클라우드 제공 업체(105)에게서 IaaS 서비스를 구입할 수 있다. 즉, 사용자 단말(140)은 클라우드 제공 업체(105)와 IaaS에 관한 계약을 할 수 있고, 클라우드 제공 업체(105)로부터 IaaS에 관한 제어 권한 및 사용 권한을 획득할 수 있다.
사용자 단말(140)은 서비스 제공 업체(115)로부터 서비스 제공업체(310)의 제품과 라이선스를 수신할 수 있다. 서비스 제공업체(310)의 제품은 애플리케이션일 수 있다. 구체적으로, 서비스 제공업체(310)의 제품은 개발자의 소스 코드를 정적 분석하는 애플리케이션일 수 있다. 사용자 단말(140)은 서비스 제공 업체(115)로부터 제공받은 라이선스를 통해 서비스 제공 업체(115)의 제품에 관한 사용 권한을 인증 받을 수 있다.
서비스 제공 업체(115)는 도 6에서 기재된 라이선스 관리 서버(110)를 운영하는 업체일 수 있다. 또한, 클라우드 제공 업체(105)는 도 6에서 기재된 클라우드 서버를 운영하는 업체일 수 있다. 서비스 제공 업체(115)는 서비스 제공 업체(115)의 제품을 사용자 단말(140)이 구매한 IaaS에 설치할 수 있다.
사용자 단말(140)의 라이선스 기간이 만료된 경우, 클라우드 제공 업체(105)는 사용자 단말(140)의 라이선스 연장 의사를 확인할 수 있다. 클라우드 제공 업체(105)는 사용자 단말(140)의 라이선스 연장 의사를 확인한 경우, 서비스 제공 업체(115)를 통해 라이선스를 재발급하거나 연장할 수 있다.
클라우드 제공 업체(105)는 사용자 단말(140)의 라이선스 연장하지 않겠다는 의사를 확인한 경우, 서비스 제공 업체(115)를 통해 라이선스를 폐기할 수 있다.
도 4는 SaaS 사용에 관한 블록도이다.
도 4를 참고하면, 일반적인 SaaS 사용 관계가 설명되어 있다. SaaS는 클라우드 기반의 소프트웨어를 의미할 수 있다. 서비스 제공 업체(115)는 클라우드 제공 업체(105)에게서 IaaS를 구입할 수 있다. 즉, 서비스 제공 업체(115)는 클라우드 제공 업체(105)와 IaaS에 관한 계약을 할 수 있고, 클라우드 제공 업체(105)로부터 IaaS에 관한 제어 권한 및 사용 권한을 획득할 수 있다.
사용자 단말(140)은 서비스 업체(310)와 SaaS에 관한 계약을 할 수 있다. 사용자 단말(140)은 별도로 소프트웨어나 애플리케이션을 설치할 필요 없이 서비스 제공 업체(115)의 IaaS를 통해서 서비스 제공 업체(115)의 제품을 사용할 수 있다. 즉, 사용자 단말(140)은 서비스 제공 업체(115)로부터 IaaS의 사용 권한을 획득할 수 있다.
사용자 단말(140)의 계약 기간이 만료된 경우, 서비스 제공 업체(115)는 사용자 단말(140)의 계약 연장 의사를 확인할 수 있다. 서비스 제공 업체(115)는 사용자 단말(140)의 계약 연장 의사를 확인한 경우, 계약 기간을 연장할 수 있다.
클라우드 제공 업체(105)는 사용자 단말(140)의 계약을 연장하지 않겠다는 의사를 확인한 경우, 사용자 단말(140)의 사용 권한을 폐기할 수 있다.
도 5는 IaaS-SaaS 사용에 관한 블록도이다.
도 5를 참고하면, IaaS-SaaS 중간 형태가 설명되어있다. 서비스 제공 업체(115)는 클라우드 제공 업체(105)에게서 IaaS를 구입할 수 있다. 즉, 서비스 제공 업체(115)는 클라우드 제공 업체(105)와 IaaS에 관한 계약을 할 수 있다. 이 경우 사용자 단말(140)이 클라우드 제공 업체(105)로부터 IaaS에 관한 제어 권한을 획득하도록 할 수 있다.
사용자 단말(140)은 서비스 업체(310)와 SaaS에 관한 계약을 할 수 있다. 사용자 단말(140)은 별도로 소프트웨어나 애플리케이션을 설치할 필요 없이 서비스 제공 업체(115)의 IaaS를 통해서 서비스 제공 업체(115)의 제품을 사용할 수 있다. 즉, 사용자 단말(140)은 서비스 제공 업체(115)로부터 IaaS의 사용 권한을 획득할 수 있다.
이 경우, 사용자 단말(140)은 IaaS에 관한 제어 권한과 사용 권한을 모두 획득할 수 있다. 반면, 서비스 제공 업체(115)는 IaaS에 관한 제어 권한과 사용 권한을 모두 가지지 않을 수 있다. 따라서, IaaS에 대한 모든 제어 권한이 사용자에게 넘어 가므로 서비스 제공 업체(115)는 사용자의 소스코드를 가로챌 수 없다.
서비스 제공 업체(115)는 구입한 IaaS에 서비스 제공 업체(115)의 제품과 라이선스를 설치할 수 있다. 서비스 제공 업체(115)의 제품은 실행 의미 분석 엔진을 바탕으로 소스코드 구문 분석만으로는 찾기 어려운 프로그램 실행 시 발생하는 보안약점과 결함을 정확히 검출하는 정적 분석 도구일 수 있다.
서비스 제공 업체(115)는 IaaS에 서비스 제공 업체(115)의 제품을 미리 설치해 놓을 수도 있다. 서비스 제공 업체(115)는 IaaS에 서비스 제공 업체(115)의 제품을 실행하기 위한 라이선스를 미리 전송할 수도 있다.
사용자 단말(140)의 라이선스 기간이 만료된 경우, 서비스 제공 업체(115)는 사용자 단말(140)의 라이선스 연장 의사를 확인할 수 있다. 서비스 제공 업체(115)의 제품의 라이선스가 만료되면 사용자는 라이선스를 재 요청할 수 있다.
서비스 제공 업체(115)는 사용자 단말(140)의 라이선스 연장 의사를 확인한 경우, 라이선스를 재발급하거나 연장할 수 있다. 서비스 제공 업체(115)는 사용자 단말(140)의 라이선스 연장하지 않겠다는 의사를 확인한 경우, 라이선스를 폐기할 수 있다.
서비스 제공 업체(115)는 서비스 제공 업체(115)의 제품을 탑재한 가상 머신 인터페이스를 준비할 수 있다. 서비스 제공 업체(115)는 클라우드 업체(300)와 협력하여 제품을 준비할 수 있다. 사용자 단말(140)은 가상 머신 인터페이스를 생성(또는 활성화)할 수 있다.
사용자 단말(140)은 서비스 제공 업체(115)로부터 라이선스를 수신할 수 있다. 가상 머신 인터페이스 제어권은 사용자 단말(140)에게 있어서 서비스 제공 업체(115)는 가상 머신 인터페이스에 접속할 수 있는 아이디 또는 패스워드에 접근할 수 없다. 가상 머신 인터페이스에 접속할 수 있는 아이디 또는 패스워드는 사용자 단말(140)이 가질 수 있다. 사용자 단말(140)은 가상 머신 인터페이스를 사용할 수 있다.
사용자 단말(140)이 서비스 제공 업체(115)에게 가상 머신 인터페이스 기반의 서비스(예를 들어, SaaS)의 제공을 요청할 수 있다. 가상 머신 인터페이스 기반의 서비스의 제공이 요청된 경우, 서비스 제공 업체(115)와 사용자 단말(140)간에 과금 방식이 협의될 수 있다. 과금 방식은 서비스 사용 기간, 사용 횟수, 사용 빈도 등을 기초로 결정될 수 있다.
서비스 제공 업체(115)는 클라우드 제공 업체(105)로부터 IaaS를 획득할 수 있다. 서비스 제공 업체(115)는 서비스 제공 업체(115)의 제품을 설치하기 위해 라이선스 발급을 요청하는 신호를 클라우드 제공 업체(105)로부터 수신할 수 있다.
라이선스는 도 7, 8 및 10에 기재되어 있는 방법과 동일 또는 유사한 방법으로 발급될 수 있다. 서비스 제공 업체(115)는 라이선스가 발급된 경우, IaaS에 서비스 제공 업체(115)의 제품을 설치하기 위해 라이선스를 설치할 수 있다. 서비스 제공 업체(115)는 제품과 라이선스를 IaaS에 미리 설치해 놓을 수도 있다. 제품 및 라이선스가 설치된 IaaS는 SaaS로 지칭될 수 있다. 도 7,8 및 10을 참조하여 설명될 라이선스 발급 절차와 동일 또는 유사한 방식으로 SaaS가 생성될 수 있다. SaaS는 라이선스가 발급된 클라우드를 기초로 인증된 소프트웨어 또는 애플리케이션일 수 있다.
서비스 제공 업체(115)는 사용자 단말(140)에 SaaS를 제공할 수 있다. SaaS가 사용자 단말(140)에 제공될 때 모든 권한(사용/폐기 등)이 사용자 단말(140)에게 넘어갈 수 있다. 이 경우 IaaS에 대한 모든 제어 권한이 사용자 단말(140)에게 넘어 가므로 서비스 제공 업체(115)는 사용자 단말(140)의 소스코드를 가로챌 수 없다.
사용자 단말(140)은 SaaS를 사용할 수 있다. 라이선스 기간이 만료되면 사용자 단말(140)은 SaaS 서비스를 사용할 수 없다. 라이선스 기간이 만료되면 사용자 단말(140)은 IaaS 또는 SaaS를 폐기할 수 있다.
서비스 제공 업체(115)는 서비스 제공 업체(115)의 제품을 탑재한 서비스 가상 머신 인터페이스를 준비할 수 있다. 서비스 제공 업체(115)는 클라우드 제공 업체(105)와 협력하여 제품을 준비할 수 있다.
사용자 단말(140)은 가상 머신 인터페이스 생성에 사용될 인스턴스 정보를 생성할 수 있다. 사용자 단말(140)은 서비스 제공 업체(115)로부터 라이선스를 수신할 수 있다. 가상 머신 인터페이스 제어권은 사용자 단말(140)에게 있어서 서비스 제공자는 접근할 수 없다. 아이디 또는 패스워드는 사용자 단말(140)이 가질 수 있다.
도 6은 라이선스 발급을 지원하는 시스템을 구체적으로 도시한 블록도이다.
도 6을 참조하면, 라이선스를 발급하는 시스템은 사용자 단말(140), 클라우드 서버(100), 관리자 단말(150), 회원 메일 서버(120), 가상 머신 인터페이스(130)를 포함할 수 있다.
클라우드 서버(100)는 처리부 3(102)을 포함할 수 있다. 라이선스 관리 서버(110)는 수신 서버(112), 처리부 1(114), 가입 요청 관리부(116), 라이선스 발급 관리부(118)를 포함할 수 있다. 가상 머신 인터페이스(130)는 처리부 2(132), 애플리케이션(134)을 포함할 수 있다.
라이선스 관리 서버(110)는 수신 서버(112), 처리부 1(114), 가입 요청 관리부(116), 라이선스 발급 관리부(118)를 포함할 수 있다. 수신 서버(112) 및 처리부 1(114)은 클라우드 서버(100)와 유/무선 통신 방법으로 연결되어 있을 수 있다. 라이선스 관리 서버(110)의 처리부 1(114)은 라이선스 발급절차를 자동으로 수행할 수 있도록 지원하는 프로세서일 수 있다. 처리부 1(114)은 수신 서버(112)의 프로세서일 수 있다. 처리부 1(114)은 가입 요청 관리부(116) 및 라이선스 발급 관리부(118)와 유선으로 연결되어 있을 수 있다.
처리부 1(114)은 가상 머신 인터페이스(130)의 처리부 2(132)와 유/무선 통신 방법으로 연결되어 있을 수 있다. 처리부 1(114)은 가상 머신 인터페이스(130)의 처리부 2(132)와 유/무선 통신 방법으로 연결되어 있을 수 있다. 처리부 1(114)은 가상 관리자 단말(150)와 유/무선 통신 방법으로 연결되어 있을 수 있다. 처리부 1(114)은 회원 메일 서버(120)와 유/무선 통신 방법으로 연결되어 있을 수 있다. 라이선스 발급 관리부(118)는 가상 머신 인터페이스(130)의 처리부 2(132)와 유/무선 통신 방법으로 연결되어 있을 수 있다.
가상 머신 인터페이스(130)는 IaaS를 의미할 수 있다. IaaS는 서버, 스토리지, 네트워크를 가상화 환경으로 만들어, 필요에 따라 인프라 자원을 사용할 수 있게 서비스를 제공하는 것을 의미할 수 있다. IaaS는 가상 머신 인터페이스(130)일 수 있다.
또한 가상 머신 인터페이스(130)는 소프트웨어 상에서 가상의 처리부 2(132), 애플리케이션(134)을 통칭하는 개념일 수 있다.
처리부 2(132)는 클라우드 서버(100)의 처리부 3(102)와 유/무선 통신 방법으로 연결되어 있을 수 있다. 처리부 2(132)는 애플리케이션(134)을 실행 시킬 수 있다. 처리부 2(132)는 라이선스 발급 관리부(118) 및 처리부 1(114)과 유/무선 통신 방법으로 연결되어 있을 수 있다.
사용자 단말(140)은 가상 머신 인터페이스(130)를 통해 애플리케이션(134)에 접속할 수 있다. 가상 머신 인터페이스(130)의 처리부 2(132)는 라이선스 인증절차를 자동으로 수행할 수 있도록 지원하는 프로세서일 수 있다.
클라우드 서버(100)는 라이선스 발급을 지원하는 처리부 3(102)을 포함할 수 있다. 처리부 3(102)은 사용자 단말(140)과 유/무선 통신 방법으로 연결되어 있을 수 있다. 처리부 3(102)은 가상 머신 인터페이스(130)를 활성화 시킬 수 있다.
처리부 3(102)은 회원 메일 서버(120)와 연결되어 있을 수 있다. 처리부 3(102)은 라이선스 인증 절차에서 회원 메일 서버(120)로 라이선스 인증과 관련된 메일을 전송할 수 있다. 처리부 3(102)은 사용자 단말(140)과 클라우드 서버(100)는 인터페이스를 통해 연결될 수 있다.
클라우드 서버(100)의 처리부 3(102)은 가상 머신 인터페이스(130)의 처리부 2(132)와 신호를 주고 받을 수 있다. 처리부 3(102)은 클라우드 서버(100) 내부에서 라이선스를 발급하는 절차를 수행하는 프로세서일 수 있다.
처리부 1(114)은 수신 서버(112)가 단말과 연결된 클라우드 서버(100)로부터 사용자의 회원 가입 정보를 포함하는 제1 메시지 또는 클라우드 서버(100)로부터 사용자 식별 정보에 의해 식별되는 새로운 인스턴스 정보를 지시하는 제2 메시지를 수신하는지 여부를 모니터링 할 수 있다.
처리부 1(114)은 수신 서버(112)가 제1 메시지 또는 제2 메시지를 획득하는 경우, 수신 서버(112)로부터 제1 메시지 또는 제2 메시지를 획득할 수 있다. 처리부 1(114)은 수신 서버(112)로부터 제1 메시지 또는 제2 메시지를 획득한 경우, 라이선스 관리 서버(110)에 포함된 데이터베이스(database)에 제1 메시지 또는 제2 메시지를 저장할 수 있다.
또한, 처리부 1(114)은 라이선스 발급이 완료된 경우, 라이선스 관리 서버(110)에 포함된 데이터베이스에 발급된 라이선스를 저장할 수 있다. 구체적으로, 처리부 1(114)은 제1 메시지, 제2 메시지, 제4 메시지를 라이선스 관리 서버(110)의 데이터베이스에 저장할 수 있다. 라이선스를 저장하는 경우, 처리부1(114)은 라이선스 관리 서버(110)에 포함된 데이터베이스에 라이선스 발급한 시간 및 사용자 식별 정보와 함께 저장할 수 있다. 데이터베이스는 추후 이러한 저장 정보를 바탕으로 사용자 단말(140)의 애플리케이션(134) 접속에 관한 빅데이터(big data)를 생성할 수 있다.
데이터베이스는 API(application program interface)를 지원할 수 있다. 클라우드 서버(100), 라이선스 관리 서버(110), 가상 머신 인터페이스(130)는 각각 정보를 저장할 수 있는 데이터베이스를 포함할 수 있다. 처리부 2(132)는 라이선스 발급 완료 정보를 포함하는 제5 메시지를 가상 머신 인터페이스(130)의 데이터베이스에 저장할 수 있다.
처리부 3(102)은 사용자 식별 정보를 얻기 위해, 사용자 등의 회원 가입 또는 로그인 등이 필요할 수 있다. 사용자 등은 클라우드 서버(100)에 접속하여 회원 가입 또는 로그인 등을 할 수 있다. 사용자 등이 클라우드 서버(100)에 회원으로 가입을 할 경우, 사용자 등은 사용자 식별 정보를 클라우드 서버(100)에 입력할 수 있고, 이 경우 처리부 3(102)은 사용자가 로그인을 하기만 하면 쉽게 사용자의 식별정보를 획득할 수 있다.
사용자가 회원 가입이 되어 있지 않을 경우에도 사용자 식별 정보를 입력하여 라이선스 발급 절차를 수행할 수 있다. 식별정보는 회원 가입된 회원의 경우, 아이디 및 패스워드일 수 있다. 또한 식별정보는 비회원의 경우, 사용자 이름, 주소, 국적, 사용 기기, 인증 번호 등을 포함할 수 있다.
라이선스 기간이 만료된 후에 사용자가 애플리케이션(134)에 접속한 경우, 애플리케이션(134)은 라이선스 기간이 만료되었다는 메시지를 사용자 단말에 출력 인터페이스에 출력할 수 있다. 애플리케이션(134)이 사용자 단말(140)로부터 라이선스 재발급 요청 신호를 입력 받은 경우, 처리부 2(132)는 처리부 1(114)에 라이선스 재발급을 요청하는 신호를 전송할 수 있다.
라이선스 재발급을 요청하는 신호를 수신한 처리부 1(114)은 관리자 단말(150)에 라이선스 재발급을 요청하는 신호를 전송할 수 있다. 라이선스 재발급을 요청하는 신호를 수신한 관리자 단말(150)은 처리부 1(114)에 라이선스 재발급 신호를 전송할 수 있다. 라이선스 재발급 신호를 수신한 처리부 1(114)은 사용자 정보와 대응되는 라이선스를 발급할 수 있다. 처리부 1(114)은 발급된 라이선스를 처리부 2(132)에 전송할 수 있다. 처리부 2(132)는 처리부 1(114)로부터 수신한 라이선스 파일을 복사할 수 있다. 또한 처리부 2(132)는 처리부 1(114)로부터 수신한 라이선스 파일을 애플리케이션(134)에 저장할 수 있다. 가상 머신 인터페이스(130)는 라이선스 발급 완료 정보를 포함하는 제5 메시지를 처리부 1(114)로 전송할 수 있다.
라이선스 기간이 만료된 경우, 처리부 1(114)은 관리자 단말(150)에 라이선스 기간이 만료되었다는 신호를 전송할 수 있다. 라이선스 기간이 만료되었다는 신호를 수신한 관리자 단말(150)은 처리부 1(114)에 라이선스 폐기 신호를 전송할 수 있다. 라이선스 폐기 신호를 수신한 처리부 1(114)은 라이선스 처리부 2(132)에 라이선스 폐기 신호를 전송할 수 있다. 라이선스 폐기 신호를 수신한 처리부 2(132)는 가상 머신 인터페이스(130)에 저장된 라이선스를 폐기할 수 있다.
도 7은 라이선스 관리 서버에 라이선스 발급에 필요한 정보를 전송하는 과정을 도시한 순서도이다.
도 7을 참조하면, 도 7은 라이선스를 발급하는 방법 중 사용자 단말(140)이 클라우드 서버(100)에 전송하는 회원가입 정보와, 인스턴스 정보를 라이선스 관리 서버(100)가 모니터링 하는 과정일 수 있다.
구체적으로, 사용자 단말(140)은 클라우드 서버(100)에 접속할 수 있다. 사용자 단말(140)은 사용자의 식별정보를 포함하는 회원 가입 정보를 클라우드 서버(100)로 전송할 수 있다(S700). 클라우드 서버(100)는 사용자 단말(140)로부터 사용자의 식별정보를 포함하는 회원 가입 정보를 수신할 수 있다.
식별정보는 회원 가입된 회원의 경우, 아이디 및 패스워드일 수 있다. 또한 식별정보는 비회원의 경우, 사용자 이름, 주소, 국적, 사용 기기, 인증 번호, 은행명, 은행 계좌번호 등을 포함할 수 있다. 클라우드 서버(100)는 라이선스 관리 서버(110)의 수신 서버(112)로 사용자의 회원 가입 정보를 포함하는 제1 메시지를 전송할 수 있다(S702).
수신 서버(112)는 클라우드 서버(100)로부터 사용자의 회원 가입 정보를 포함하는 제1 메시지를 수신할 수 있다. 라이선스 관리 서버(110)의 처리부 1(114)은 수신 서버(112)의 제1 메시지 수신 여부를 모니터링 할 수 있다(S704).
처리부 1(114)은 수신 서버(112)가 제1 메시지를 수신한 경우, 발급 요청 관리부에 회원 가입 정보를 등록할 수 있다(S706). 사용자 단말(140)은 클라우드 서버(100)에 접속하여 사용자 식별 정보에 의해 식별되는 인스턴스 생성에 필요한 정보를 클라우드 서버(100)로 전송할 수 있다(S708).
클라우드 서버(100)는 사용자 단말(140)로부터 사용자 식별 정보에 의해 식별되는 인스턴스 생성에 필요한 정보를 수신할 수 있다. 클라우드 서버(100)는 사용자 식별 정보에 의해 식별되는 인스턴스 생성에 필요한 정보를 사용자 단말(140)로부터 수신한 경우, 수신한 인스턴스 생성에 필요한 정보를 기초로 인스턴스 정보를 생성할 수 있다(S710). 여기서 인스턴스 정보는 가상 머신 인터페이스(130)의 식별 정보일 수 있다.
클라우드 서버(100)의 처리부 3은 사용자의 결제 정보를 확인할 수 있다. 처리부 3은 결제 정보가 유효하고, 미리 정해진 결제액이 사용자 단말(140)의 계좌 입금되면, 입금된 금액에 상응하는 기 인스턴스를 생성할 수 있다. 클라우드 서버(100)는 사용자의 결제 정보를 확인하여 결제 정보가 유효하지 않으면 인스턴스를 생성하지 않을 수 있다.
클라우드 서버(100)는 사용자 식별 정보에 의해 식별되는 정보가 등록된 식별자인 경우, 사용자 식별 정보에 의해 식별되는 사용자를 위한 가상 머신 인터페이스(130)를 활성화시킬 수 있다(S712).
클라우드 서버(100)는 수신 서버(112)로 새로운 인스턴스 정보를 포함하는 제2 메시지를 전송할 수 있다(S714). 수신 서버(112)는 클라우드 서버(100)로부터 새로운 인스턴스 정보를 포함하는 제2 메시지를 수신할 수 있다.
제2 메시지에는 라이선스 발급을 요청하는 신호를 포함할 수 있다. 라이선스 관리 서버(110)의 처리부 1(114)은 수신 서버(112)의 제2 메시지 수신 여부를 모니터링 할 수 있다(S716).
도 8은 라이선스 발급을 통해 애플리케이션(또는 소프트웨어)이 활성화되는 과정을 도시한 순서도이다.
도 8을 참조하면, 도 8은 라이선스를 발급하는 방법 중 라이선스 관리 서버(110)가 모니터링한 회원 가입 정보 및 인스턴스 정보를 기초로 가상 머신 인터페이스(130)를 활성화 시키는 과정일 수 있다.
구체적으로, 라이선스 발급 관리부는 인스턴스 정보를 저장하고 있을 수 있다. 라이선스 관리 서버(110)의 처리부 1(114)은 수신 서버(112)의 제2 메시지 수신 여부를 모니터링 할 수 있다(S716). 처리부 1(114)은 수신 서버(112)가 제2 메시지를 수신한 경우, 라이선스 발급 관리부에 수신 서버(112)가 수신한 제2 메시지에 포함된 새로운 인스턴스 정보를 저장할 수 있다(S718). 저장된 인스턴스 정보들은 빅데이터로 이용될 수 있다.
라이선스 관리 서버(110)의 처리부 1(114)은 인스턴스 고유 식별자를 요청하는 제3 메시지를 클라우드 서버(100)로 전송 할 수 있다(S720). 클라우드 서버(100)는 처리부 1(114)로부터 인스턴스 고유 식별자를 요청하는 제3 메시지를 수신할 수 있다.
클라우드 서버(100)는 제3 메시지에 대한 응답으로 라이선스 관리 서버(110)의 처리부 1(114)에 인스턴스 고유 식별자를 전송할 수 있다(S722). 처리부 1(114)은 클라우드 서버(100)로부터 제3 메시지에 대한 응답인 인스턴스 고유 식별자를 수신할 수 있다.
처리부 1(114)은 클라우드 서버(100)로부터 제3 메시지에 대응하는 인스턴스 고유 식별자를 수신한 경우, 발급 요청 관리부에 클라우드 서버(100)로부터 수신한 인스턴스 고유 식별자를 저장할 수 있다(S724). 저장된 인스턴스 고유 식별자 정보들은 빅데이터로 이용될 수 있다.
처리부 1(114)은 클라우드 서버(100)로부터 인스턴스 고유 식별자를 수신한 경우, 라이선스 발급 관리부의 새로운 인스턴스 정보
라이선스 발급 관리부를 통해 라이선스를 발급할 수 있다(S726). 처리부 1(114)은 라이선스를 발급한 경우, 가상 머신 인터페이스(130)에 발급된 라이선스를 포함하는 제4 메시지를 전송할 수 있다(S728).
가상 머신 인터페이스(130)는 처리부 1(114)로부터 발급된 라이선스를 포함하는 제4 메시지를 수신할 수 있다. 제4 메시지를 수신한 가상 머신 인터페이스(130)는 애플리케이션을 활성화 시킬 수 있다. 또한 제4 메시지를 수신한 가상 머신 인터페이스(130)는 가상 머신 인터페이스(130)의 처리부 2를 활성화 시킬 수 있다(S730).
가상 머신 인터페이스(130)의 처리부 2는 처리부 1(114)로부터 수신한 라이선스 파일을 복사할 수 있다. 또한 처리부 2는 처리부 1(114)로부터 수신한 라이선스 파일을 애플리케이션에 저장할 수 있다(S732). 가상 머신 인터페이스(130)는 라이선스 발급 완료 정보를 포함하는 제5 메시지를 처리부 1(114)로 전송할 수 있다(S734).
처리부 2가 라이선스 발급 완료 정보를 포함하는 제5 메시지를 처리부 1(114)로 전송한 경우, 처리부 2는 종료될 수 있다(S736).
처리부 1(114)은 제5 메시지를 수신한 경우, 라이선스 발급 관리부에 라이선스 발급 여부에 관한 정보를 저장할 수 있다. 라이선스 발급 관리부에서 라이선스 발급 여부에 관한 정보는 라이선스 발급 또는 라이선스 미발급 등으로 표현될 수 있다(S738).
도 9는 라이선스 발급 후 사용자 단말이 서비스를 이용하기까지의 과정을 도시한 순서도이다.
도 9를 참조하면, 도 9는 라이선스를 발급하는 방법 중 사용자 단말(140)이 가상 머신 인터페이스(130)에 접속하여 원하는 서비스를 제공받는 과정일 수 있다. 구체적으로, 사용자 단말(140)은 가상 머신 인터페이스(130)에 접속 및 로그인 할 수 있다(S740).
사용자 단말(140)이 가상 머신 인터페이스(130)에 접속된 경우, 가상 머신 인터페이스(130)는 인스턴스 고유 식별자를 요청하는 제6 메시지를 클라우드 서버(100)에 전송할 수 있다(S742). 클라우드 서버(100)는 가상 머신 인터페이스(130)로부터 인스턴스 고유 식별자를 요청하는 제6 메시지를 수신할 수 있다.
클라우드 서버(100)는 제6 메시지에 대응하여 가상 머신 인터페이스(130)에 인스턴스 고유 식별자를 전송할 수 있다(S744). 가상 머신 인터페이스(130)는 클라우드 서버(100)로부터 제6 메시지에 대응한 인스턴스 고유 식별자를 수신할 수 있다.
가상 머신 인터페이스(130)에서 동작하는 애플리케이션은 인스턴스 고유 식별자(가상 머신 인터페이스의 고유 식별자)와 라이선스에 포함된 가상 머신 인터페이스(130)의 고유 식별자를 비교하여 동일 여부를 판단 할 수 있다(S746). 애플리케이션은 인스턴스 고유 식별자와 라이선스에 포함된 가상 머신 인터페이스(130)의 고유 식별자가 동일한 경우 작동될 수 있다(S748). 애플리케이션은 인스턴스 고유 식별자와 라이선스 고유 식별자가 동일하지 않은 경우, 작동되지 않을 수 있다.
처리부 1(114)은 가상 머신 인터페이스(130)로부터 라이선스 요청을 받은 경우에만, 라이선스를 발급하는 절차를 수행할 수 있다. 이 경우에는 백도어 위험이 작기 때문에 단계 S738(처리부 2가 종료되는 단계)을 수행하지 않을 수 있다.
백도어란 서비스 기술자나 유지보수 프로그래머들의 다른 PC에 대한 액세스 편의를 위해 시스템 설계자가 고의적으로 만들어 놓은 것을 의미한다. 백도어는 최근에는 해킹에 취약한 부분을 일컫는 용어를 지시한다.
제1 메시지, 제2 메시지 및 제5 메시지는 라이선스 관리 서버(110)에 포함된 데이터베이스에 저장되며, 데이터베이스는 API를 지원할 수 있다.
도 10은 라이선스를 재발급하는 방법을 도시한 순서도이다.
도 10을 참조하면, 라이선스 기간이 만료된 후에 사용자가 애플리케이션에 접속한 경우, 애플리케이션은 라이선스 기간이 만료되었다는 화면을 출력할 수 있다. 애플리케이션이 사용자로부터 라이선스 재발급 요청 신호를 입력 받은 경우, 라이선스 관리 서버(110)는 처리부 1(114)에 라이선스 재발급을 요청하는 제7 메시지가 포함된 신호를 전송할 수 있다(S750).
라이선스 재발급을 요청하는 신호를 수신한 처리부 1(114)은 관리자 단말(150)에 라이선스 재발급을 요청하는 제7 메시지를 포함하는 신호를 전송할 수 있다(S752). 라이선스 재발급을 요청하는 신호를 수신한 관리자 단말(150)은 처리부 1(114)에 라이선스 재발급 신호인 제8 메시지를 포함하는 신호를 전송할 수 있다(S754).
라이선스 재발급 신호를 수신한 처리부 1(114)은 라이선스 발급 관리부를 통해 사용자 정보와 대응되는 라이선스를 발급할 수 있다(S756). 처리부 1(114)은 발급된 라이선스를 포함하는 제8 메시지를 가상 머신 인터페이스(130)에 전송할 수 있다(S758). 가상 머신 인터페이스(130)는 애플리케이션 및 처리부 2를 활성화 시킬 수 있다(S760).
처리부 2는 처리부 1(114)로부터 수신한 라이선스 파일을 복사할 수 있다. 또한 처리부 2는 처리부 1(114)로부터 수신한 라이선스 파일을 애플리케이션에 저장할 수 있다(S762). 처리부 2는 라이선스 발급 완료 정보인 제9 메시지를 포함하는 신호를 처리부 1(114)로 전송할 수 있다(S764). 처리부 2가 라이선스 발급 완료 정보를 포함하는 제9 메시지를 처리부 1(114)로 전송한 경우, 처리부 2는 종료될 수 있다(S766).
라이선스 기간이 만료된 경우, 처리부 1(114)은 관리자 단말(150)에 라이선스 기간이 만료되었다는 신호(사용자가 재발급을 원치 않는다는 신호)를 전송할 수 있다. 라이선스 기간이 만료되었다는 신호를 수신한 관리자 단말(150)은 처리부 1(114)에 라이선스 폐기 신호를 전송할 수 있다.
라이선스 폐기 신호를 수신한 처리부 1(114)은 라이선스 관리 서버(110)에 라이선스 폐기 신호를 전송할 수 있다. 라이선스 폐기 신호를 수신한 라이선스 관리 서버(110)는 가상 머신 인터페이스(130)에 저장된 라이선스를 폐기할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (14)

  1. 서비스(service) 제공 업체의 라이선스(license) 관리 서버(server)의 소프트웨어(software) 서비스 제공 방법에 관한 것으로,
    클라우드(cloud) 제공 업체의 클라우드 서버로부터 가상 머신 인터페이스(virtual machine interface)를 제공받는 단계;
    상기 가상 머신 인터페이스에 상기 서비스 제공 업체의 소프트웨어를 설치하는 단계;
    사용자 단말에 상기 가상 머신 인터페이스에 관한 제어 권한을 부여하는 단계;
    상기 사용자 단말이 상기 소프트웨어에 접속한 경우, 상기 가상 머신 인터페이스를 통해 상기 사용자 단말에 상기 소프트웨어의 서비스를 제공하는 단계; 및
    상기 제어 권한을 인증하기 위해, 상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하는 단계;를 포함하고,
    상기 제어 권한은 상기 가상 머신 인터페이스에 접속하기 위한 아이디 및 패스워드를 포함하고,
    상기 제어 권한을 상기 사용자 단말에 부여하고 상기 라이선스를 상기 사용자 단말에 전송한 경우, 상기 제어 권한 및 상기 사용 권한은 상기 서비스 제공 업체가 가지지 않는, 소프트웨어 서비스 제공 방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 아이디 및 패스워드에 관한 권한은 상기 소프트웨어의 이용을 위한 비용이 결제된 경우에 부여되는, 소프트웨어 서비스 제공 방법.
  4. 청구항 1에 있어서,
    상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급을 요청 받는 경우,
    상기 아이디 및 상기 패스워드에 관한 권한을 다시 부여하는 단계를 더 포함하는, 소프트웨어 서비스 제공 방법.
  5. 청구항 1에 있어서,
    상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급 요청을 받지 않은 경우,
    상기 소프트웨어에 접속하기 위한 상기 아이디 및 상기 패스워드를 폐기하는, 소프트웨어 서비스 제공 방법.
  6. 청구항 1에 있어서,
    상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하는 단계 이전에,
    상기 클라우드 서버로부터 사용자의 회원 가입 정보를 포함하는 제1 메시지를 수신하고, 발급 요청 관리부에 상기 회원 가입 정보를 등록하는 단계;
    상기 클라우드 서버로부터 사용자 식별 정보에 의해 식별되는 새로운 인스턴스 정보를 지시하는 제2 메시지를 수신하고, 라이선스 발급 관리부에 저장된 원시 인스턴스 정보를 상기 새로운 인스턴스 정보로 갱신하는 단계;
    인스턴스 고유 식별자를 요청하는 제3 메시지를 상기 클라우드 서버에 전송하는 단계;
    상기 클라우드 서버로부터 상기 인스턴스 고유 식별자를 수신하는 단계;
    상기 발급 요청 관리부에 상기 인스턴스 고유 식별자 정보를 클라우드 서버로부터 수신한 인스턴스 고유 식별자로 갱신하는 단계; 및
    상기 라이선스 발급 관리부를 통해 상기 라이선스를 발급하는 단계를 더 포함하는, 소프트웨어 서비스 제공 방법.
  7. 청구항 6에 있어서,
    상기 라이선스가 상기 가상 머신 인터페이스로 전송된 경우,
    상기 가상 머신 인터페이스로부터 라이선스 발급 완료를 지시하는 제4 메시지를 수신하는 단계를 더 포함하는, 소프트웨어 서비스 제공 방법.
  8. 라이선스(license) 관리 서버(server)로서,
    프로세서(processor); 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 데이터 베이스를 포함하고,
    상기 적어도 하나의 명령은,
    클라우드(cloud) 제공 업체의 클라우드 서버로부터 가상 머신 인터페이스(virtual machine interface)를 제공받고,
    상기 가상 머신 인터페이스에 서비스 제공 업체의 소프트웨어를 설치하고,
    사용자 단말에 상기 가상 머신 인터페이스에 관한 제어 권한을 부여하고, 그리고
    상기 사용자 단말이 상기 소프트웨어에 접속한 경우, 상기 가상 머신 인터페이스를 통해 상기 사용자 단말에 상기 소프트웨어의 서비스를 제공하도록 실행 가능하고, 그리고
    상기 제어 권한을 인증하기 위해, 상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하고,
    상기 제어 권한은 상기 가상 머신 인터페이스에 접속하기 위한 아이디 및 패스워드를 포함하고,
    상기 제어 권한을 상기 사용자 단말에 부여하고 상기 라이선스를 상기 사용자 단말에 전송한 경우, 상기 제어 권한 및 상기 사용 권한은 상기 서비스 제공 업체가 가지지 않는 라이선스 관리 서버.
  9. 삭제
  10. 청구항 8에 있어서,
    상기 아이디 및 패스워드에 관한 권한은 상기 소프트웨어의 이용을 위한 비용이 결제된 경우에 부여되는, 라이선스 관리 서버.
  11. 청구항 8에 있어서,
    상기 적어도 하나의 명령은,
    상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급을 요청 받는 경우,
    상기 아이디 및 상기 패스워드에 관한 권한을 다시 부여하도록 실행 가능한, 라이선스 관리 서버.
  12. 청구항 8에 있어서,
    상기 적어도 하나의 명령은,
    상기 라이선스가 만료된 후, 상기 사용자 단말로부터 새로운 라이선스의 발급 요청을 받지 않은 경우,
    상기 소프트웨어에 접속하기 위한 상기 아이디 및 상기 패스워드를 폐기 하도록 실행 가능한, 라이선스 관리 서버.
  13. 청구항 8에 있어서,
    상기 적어도 하나의 명령은,
    상기 가상 머신 인터페이스에 상기 소프트웨어 사용 권한에 대한 인증을 위한 라이선스를 전송하기 이전에,
    상기 클라우드 서버로부터 사용자의 회원 가입 정보를 포함하는 제1 메시지를 수신하고, 발급 요청 관리부에 상기 회원 가입 정보를 등록하고,
    상기 클라우드 서버로부터 사용자 식별 정보에 의해 식별되는 새로운 인스턴스 정보를 지시하는 제2 메시지를 수신하고, 라이선스 발급 관리부에 저장된 원시 인스턴스 정보를 상기 새로운 인스턴스 정보로 갱신하고,
    인스턴스 고유 식별자를 요청하는 제3 메시지를 상기 클라우드 서버에 전송하고,
    상기 클라우드 서버로부터 상기 인스턴스 고유 식별자를 수신하고,
    상기 발급 요청 관리부에 상기 인스턴스 고유 식별자 정보를 클라우드 서버로부터 수신한 인스턴스 고유 식별자로 갱신하고, 그리고
    상기 라이선스 발급 관리부를 통해 상기 라이선스를 발급하도록 더 실행 가능한, 라이선스 관리 서버.
  14. 청구항 13에 있어서,
    상기 적어도 하나의 명령은,
    상기 라이선스가 상기 가상 머신 인터페이스로 전송된 경우,
    상기 가상 머신 인터페이스로부터 라이선스 발급 완료를 지시하는 제4 메시지를 수신하도록 더 실행 가능한, 라이선스 관리 서버.
KR1020160122414A 2016-07-29 2016-09-23 클라우드 기반의 서비스 제공 방법 KR101882685B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/KR2017/008148 WO2018021864A1 (ko) 2016-07-29 2017-07-28 클라우드 기반의 서비스 제공 방법
JP2019527107A JP6821805B2 (ja) 2016-07-29 2017-07-28 クラウド基盤のサービス提供方法
CN201780047321.9A CN109643337A (zh) 2016-07-29 2017-07-28 基于云的服务提供方法
US16/321,560 US11157597B2 (en) 2016-07-29 2017-07-28 Method for providing cloud-based service
US17/488,350 US11636184B2 (en) 2016-07-29 2021-09-29 Method for providing cloud-based service

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160097511 2016-07-29
KR1020160097511 2016-07-29

Publications (2)

Publication Number Publication Date
KR20180013647A KR20180013647A (ko) 2018-02-07
KR101882685B1 true KR101882685B1 (ko) 2018-08-24

Family

ID=61203714

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160122414A KR101882685B1 (ko) 2016-07-29 2016-09-23 클라우드 기반의 서비스 제공 방법

Country Status (4)

Country Link
US (2) US11157597B2 (ko)
JP (1) JP6821805B2 (ko)
KR (1) KR101882685B1 (ko)
CN (1) CN109643337A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102320258B1 (ko) * 2021-01-12 2021-10-29 박상균 웹 애플리케이션 서비스 제공 시스템 및 그 서비스 제공 방법과 이를 위한 프로그램

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102201221B1 (ko) * 2019-06-05 2021-01-12 주식회사 시큐아이 네트워크 보안 장치 및 그의 라이선스 관리 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013526742A (ja) * 2010-05-21 2013-06-24 エスエフエヌティー・ジャーマニー・ゲーエムベーハー コンピュータシステム上でアプリケーションの実行を制御する方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5023907A (en) * 1988-09-30 1991-06-11 Apollo Computer, Inc. Network license server
US6189103B1 (en) * 1998-07-21 2001-02-13 Novell, Inc. Authority delegation with secure operating system queues
JPWO2002042920A1 (ja) * 2000-11-22 2004-04-02 株式会社エヌ・ティ・ティ・ドコモ ネットワークへのアクセスを管理する方法および装置
US7308717B2 (en) * 2001-02-23 2007-12-11 International Business Machines Corporation System and method for supporting digital rights management in an enhanced Java™ 2 runtime environment
JP2002333928A (ja) * 2001-05-08 2002-11-22 Being:Kk ライセンスコントロールシステム
US20100138652A1 (en) * 2006-07-07 2010-06-03 Rotem Sela Content control method using certificate revocation lists
KR20090022831A (ko) * 2007-08-31 2009-03-04 경원대학교 산학협력단 팩미디어 데이터를 이용한 콘텐츠 관리 시스템 및 그 관리방법
US8353012B2 (en) * 2008-02-26 2013-01-08 Alejandro Emilio Del Real Internet-based group website technology for content management and exchange (system and methods)
US8700776B2 (en) * 2009-03-23 2014-04-15 Google Inc. System and method for editing a conversation in a hosted conversation system
US20100332629A1 (en) 2009-06-04 2010-12-30 Lauren Ann Cotugno Secure custom application cloud computing architecture
CA2674834A1 (en) 2009-06-04 2010-12-04 Unisys Corporation Secure custom application cloud computing architecture
US8381284B2 (en) * 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
JP2011076504A (ja) * 2009-09-30 2011-04-14 Brother Industries Ltd 仮想マシン、仮想マシンのプログラム、アプリケーションサービス提供システム及びアプリケーションサービス提供方法
US9053472B2 (en) * 2010-02-26 2015-06-09 Red Hat, Inc. Offering additional license terms during conversion of standard software licenses for use in cloud computing environments
US8370899B2 (en) * 2010-08-11 2013-02-05 Emc Corporation Disposable browser for commercial banking
AU2011296303B2 (en) * 2010-08-30 2015-01-22 VMware LLC Unified workspace for thin, remote, and SaaS applications
US8572741B2 (en) * 2010-10-14 2013-10-29 Moka5, Inc. Providing security for a virtual machine by selectively triggering a host security scan
US8601265B2 (en) 2010-11-22 2013-12-03 Netapp, Inc. Method and system for improving storage security in a cloud computing environment
US20120216269A1 (en) * 2011-02-18 2012-08-23 Mitel Networks Corporation Software licensing in a virtualization environment
US8966652B2 (en) * 2011-06-08 2015-02-24 International Business Machines Corporation Software utilization privilege brokering in a networked computing environment
JP2013020440A (ja) * 2011-07-11 2013-01-31 Hitachi Solutions Ltd ソフトウェアのライセンス管理システム
KR101297441B1 (ko) * 2011-10-31 2013-08-16 삼성에스디에스 주식회사 멀티 테넌트 환경을 위한 SaaS 서비스 프로비저닝 장치 및 방법
US9245096B2 (en) * 2012-01-24 2016-01-26 International Business Machines Corporation Software license management in a networked computing environment
US20140096208A1 (en) * 2012-07-26 2014-04-03 Mrk Networks, Inc. Automated system and method for provisioning and managing cloud desktop services
CN102833314A (zh) * 2012-07-27 2012-12-19 合肥华云通信技术有限公司 云公共服务平台
JP5970314B2 (ja) * 2012-09-26 2016-08-17 エヌ・ティ・ティ・コミュニケーションズ株式会社 サービス制御装置およびサービス制御プログラム
US9015845B2 (en) * 2012-10-30 2015-04-21 Samsung Sds Co., Ltd. Transit control for data
WO2014079009A1 (zh) * 2012-11-22 2014-05-30 华为技术有限公司 虚拟机的管理控制方法及装置、系统
US9185562B2 (en) * 2013-07-17 2015-11-10 Cisco Technology, Inc. Coordination of multipath traffic
US9411942B2 (en) * 2013-08-30 2016-08-09 D&M Holdings, Inc. Network device, system and method for rendering an interactive multimedia playlist
CN103957237A (zh) * 2014-04-03 2014-07-30 华南理工大学 一种弹性云的体系结构

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013526742A (ja) * 2010-05-21 2013-06-24 エスエフエヌティー・ジャーマニー・ゲーエムベーハー コンピュータシステム上でアプリケーションの実行を制御する方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102320258B1 (ko) * 2021-01-12 2021-10-29 박상균 웹 애플리케이션 서비스 제공 시스템 및 그 서비스 제공 방법과 이를 위한 프로그램

Also Published As

Publication number Publication date
US20200167445A1 (en) 2020-05-28
CN109643337A (zh) 2019-04-16
KR20180013647A (ko) 2018-02-07
JP2019525370A (ja) 2019-09-05
US20220019644A1 (en) 2022-01-20
JP6821805B2 (ja) 2021-01-27
US11157597B2 (en) 2021-10-26
US11636184B2 (en) 2023-04-25

Similar Documents

Publication Publication Date Title
US10412575B2 (en) System and method for virtual SIM card
US10326637B2 (en) Functionality management via application modification
US20210012357A1 (en) Protection against misuse of software-defined silicon
US8918856B2 (en) Trusted intermediary for network layer claims-enabled access control
CN105812479B (zh) 使用权限的请求方法和装置及获取方法和装置
CN110602088A (zh) 基于区块链的权限管理方法及装置、设备和介质
CN103620556A (zh) 将应用绑定到设备能力
EP3777082B1 (en) Trusted platform module-based prepaid access token for commercial iot online services
US20140115675A1 (en) Smart card service method and apparatus for performing the same
CN112732827A (zh) 利用运行时访问确定来安全地共享区块链中的被选字段
US20150310432A1 (en) Secure element architectural services
US11636184B2 (en) Method for providing cloud-based service
CN108400875B (zh) 基于键值的授权认证方法、系统、电子设备、存储介质
CN108734005B (zh) 一种安全/身份验证方法、移动设备及存储装置
WO2016045042A1 (zh) 一种安全单元中内容管理的方法及装置
US10225261B2 (en) Adaptive enhanced environment-aware authentication for IoT devices
US10708129B1 (en) Changing hardware capabilities of a device
JP7445685B2 (ja) オープンインタフェースの管理方法、電子機器、及び記憶媒体
KR20130053867A (ko) 보안 어플리케이션 다운로드 관리방법, 이를 적용한 보안 어플리케이션 다운로드 관리서버, 단말기, 및 관리시스템
KR101926133B1 (ko) 클라우드에서 라이선스 자동 발급 방법 및 장치
KR101382436B1 (ko) 결제 처리 방법 및 그를 이용한 결제 모듈 관리 장치
CN115242528A (zh) Kubernetes集群管理面板的登录方法
KR20150031666A (ko) 사용자 인증 서비스 제공 사용자 장치, 서비스 장치, 시스템 그리고 그 제공 방법 및 컴퓨터 프로그램이 기록된 기록매체

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