KR102328987B1 - 웹 기반 파일 공유 시스템 및 방법 - Google Patents

웹 기반 파일 공유 시스템 및 방법 Download PDF

Info

Publication number
KR102328987B1
KR102328987B1 KR1020210118814A KR20210118814A KR102328987B1 KR 102328987 B1 KR102328987 B1 KR 102328987B1 KR 1020210118814 A KR1020210118814 A KR 1020210118814A KR 20210118814 A KR20210118814 A KR 20210118814A KR 102328987 B1 KR102328987 B1 KR 102328987B1
Authority
KR
South Korea
Prior art keywords
file
web
client module
server
web server
Prior art date
Application number
KR1020210118814A
Other languages
English (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 KR1020210118814A priority Critical patent/KR102328987B1/ko
Application granted granted Critical
Publication of KR102328987B1 publication Critical patent/KR102328987B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/184Distributed file systems implemented as replicated file system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

웹 기반 파일 공유 시스템 및 방법이 개시된다. 본 발명의 일 실시예에 따른 웹 기반 파일 공유 시스템은, 공유 대상이 되는 파일을 저장하고 관리하며, 웹 상에서 공유 가능하게 하는 웹 서버를 포함하는 서버 장치; 및 상기 웹 서버에 접속하여 파일 공유 서비스를 제공받는 하나 이상의 사용자 단말을 포함하되, 상기 사용자 단말은, 상기 웹 서버가 제공하는 웹 페이지를 실행하는 웹 브라우저와; 상기 사용자 단말에 설치되어 백그라운드 실행 중에 있으며, 상기 웹 브라우저로부터의 호출에 의해 지정된 동작을 수행하는 런쳐 모듈과; 상기 런쳐 모듈에 의해 호출되며, 파일 확장자에 대응되는 어플리케이션 S/W를 실행시켜 상기 파일에 대한 편집이 이루어지게 하는 클라이언트 모듈을 포함할 수 있다.

Description

웹 기반 파일 공유 시스템 및 방법{File sharing system and method based on web}
본 발명은 웹 기반 파일 공유 시스템 및 방법에 관한 것이다.
소프트웨어 발전에 따라 기업에서 사용하는 많은 소프트웨어가 웹에서 구동되는 형태로 수렴되어 가고 있다. 특히나 데이터를 저장하는 서버나 이에 대한 사용자 입출력을 담당하는 클라이언트가 구분되는 업무용 소프트웨어는 과거 임직원의 PC에 설치하여 사용되는 방식에서 설치가 필요 없이 웹 브라우저에서 동작할 수 있는 형태로 변화되었다.
그와 함께 여전히 설치되어 사용되는 유형의 소프트웨어가 존재하는데, 이는 한글, MS-Office와 같은 프로그램을 비롯한 다양한 어플리케이션들이다. 특히 3D CAD 프로그램은 파일들이 상호 간의 연결관계를 가지고 있어서, 특정한 파일을 열거나 수정하기 위해서는 관련된 파일이 필요하며, 하나의 화면에서 여러 개의 파일이 동시에 수정되기도 한다.
이에 따라 두 영역의 소프트웨어(웹에서 동작하는 업무용 소프트웨어와 PC에 설치되어 사용되는 어플리케이션 소프트웨어)가 서로 긴밀하게 동작할 수 있도록 하는 방법이 필요하게 된다. 일반적으로 익히 사용하는 방식인 웹에서 파일을 다운로드한 후 수정하고 다시 업로드하는 방식이 적용될 수 있다. 하지만 공동 작업이 필요한 경우, 특히 3D CAD와 같이 여러 사람이 각각의 부품을 설계하고 서로가 각자의 파일을 참조하여 작업을 해야 하며, 때로는 같은 파일을 여러 사람이 함께 설계해야 하는 경우 다운로드하고 수정하며 다시 업로드하는 작업 방식은 다른 사람이 수정한 파일을 덮어씌우는 등의 실수를 유발할 수 있어 이를 방지하기 위해 많은 노력이 필요하게 된다.
한국공개특허 제10-2006-0125399호 (2006.12.06. 공개) - 인터넷 웹브라우저 기반 캐드 시스템
본 발명은 사용자가 웹에서 파일을 편집 목적으로 열 경우 파일을 다른 사람이 수정할 수 없도록 설정하고 PC에 설치된 어플리케이션 프로그램을 실행하여 편집이 가능하게 하며 작업 완료 시 수정된 파일을 서버 측에 업로드하고 파일 상태에 관한 웹 화면을 새로 고쳐서 표기해 줄 수 있는 웹 기반 파일 공유 시스템 및 방법을 제공하기 위한 것이다.
본 발명은 강화된 보안 방법이 적용되어 공유 파일의 전송 과정에서 전달되는 인증 정보가 탈취되어 발생되는 보안 이슈에 대응할 수 있는 웹 기반 파일 공유 시스템 및 방법을 제공하기 위한 것이다.
본 발명의 이외의 목적들은 하기의 설명을 통해 쉽게 이해될 수 있을 것이다.
본 발명의 일 측면에 따르면, 웹 기반 파일 공유 시스템으로서, 공유 대상이 되는 파일을 저장하고 관리하며, 웹 상에서 공유 가능하게 하는 웹 서버를 포함하는 서버 장치; 및 상기 웹 서버에 접속하여 파일 공유 서비스를 제공받는 하나 이상의 사용자 단말을 포함하되, 상기 사용자 단말은, 상기 웹 서버가 제공하는 웹 페이지를 실행하는 웹 브라우저와; 상기 사용자 단말에 설치되어 백그라운드 실행 중에 있으며, 상기 웹 브라우저로부터의 호출에 의해 지정된 동작을 수행하는 런쳐 모듈과; 상기 런쳐 모듈에 의해 호출되며, 파일 확장자에 대응되는 어플리케이션 S/W를 실행시켜 상기 파일에 대한 편집이 이루어지게 하는 클라이언트 모듈을 포함하는 것을 특징으로 하는 웹 기반 파일 공유 시스템이 제공된다.
상기 클라이언트 모듈은 세션 정보와 세션 인증키를 전송하여 상기 웹 서버에서 인증이 이루어지게 하고, 편집 중에는 상기 웹 서버에 상기 파일에 대한 체크아웃 설정을 요청하여 타 사용자 단말에 의한 편집을 배제시킬 수 있다.
상기 세션 정보는 사용자가 상기 웹 브라우저를 통해 로그인할 때 사용하는 상기 사용자 단말의 IP, 호스트명, Mac Address 중 하나 이상의 식별정보를 포함할 수 있다.
상기 클라이언트 모듈은 상기 파일에 대한 편집을 위한 체크아웃 설정 혹은 해제에 관한 정보를 웹 소켓을 이용하는 노드 서버로 전송하여 상기 웹 브라우저를 통한 사용자 화면이 갱신되도록 요청할 수 있다.
상기 클라이언트 모듈이 편집하고자 하는 상기 파일을 상기 웹 서버로부터 다운로드한 후 변경된 파일을 업로드할 때 상기 어플리케이션 S/W의 API를 이용하여 연관된 정보를 추출하고 함께 변경되거나 새롭게 생성된 타 파일도 포함하여 업로드할 수 있다.
상기 클라이언트 모듈은 상기 다운로드한 파일과 작업 종료된 파일 간에 최종 수정시간 및 용량 중 하나 이상의 파일 상태 정보를 비교하여 수정 여부를 판정할 수 있다.
상기 클라이언트 모듈은 상기 어플리케이션 S/W를 통한 상기 파일의 실행 시 실행 중 여부를 탐지하기 위해 프로세스의 동작 여부를 검증하거나 보조적으로 어플리케이션 API를 활용할 수 있다.
또한, 본 발명의 다른 측면에 따르면, 서버 장치와 네트워크 연결된 사용자 단말에서 수행되는 파일 공유 방법 및 이 방법을 수행하는 프로그램이 기록된 기록매체가 제공된다. 본 실시예에 따른 파일 공유 방법은, 사용자 단말의 웹 브라우저를 통해 사용자가 로그인하는 단계; 상기 사용자 단말에 설치되어 동작 중인 런쳐 모듈에서 사용자 로그인을 감지하고, 세션 정보를 추출하여 상기 웹 브라우저와 상기 서버 장치의 웹 서버로 전송하는 단계; 상기 웹 서버에서 상기 세션 정보를 저장하고 세션 인증키를 생성하여 상기 사용자 단말로 전달하는 단계; 상기 웹 브라우저를 통한 사용자 입력에 따라 상기 웹 서버에서 제공하는 파일에 대한 요청이 있을 경우, 상기 런쳐 모듈이 호출되어 상기 파일의 확장자에 따른 어플리케이션 S/W를 실행하기 위한 클라이언트 모듈로 상기 세션 인증키와 파일 정보를 전달하는 단계; 상기 클라이언트 모듈에서 상기 세션 인증키와 상기 세션 정보를 상기 웹 서버로 전송하여 정상 호출 여부에 대해 검증받는 단계; 정상 호출로 검증된 경우 상기 클라이언트 모듈의 파일 요청에 상응하는 상기 파일에 대해 체크아웃이 설정되고, 상기 클라이언트 모듈로 다운로드되는 단계; 상기 어플리케이션 S/W를 실행시켜 상기 파일에 대한 작업을 가능하게 하고, 작업 종료를 대기하는 단계; 작업 종료 시 파일 변경사항을 확인하는 단계; 변경사항이 있을 경우 변경된 파일을 상기 웹 서버로 업로드하여 업데이트시키고 상기 파일에 대한 체크아웃을 해제시키며, 변경사항이 없을 경우 상기 파일에 대한 체크아웃만 해제시키는 단계를 포함할 수 있다.
상기 파일에 대한 체크아웃이 설정되거나 해제된 경우, 상기 클라이언트 모듈에서 노드 서버로 화면 갱신을 요청하여 상기 웹 브라우저에서 표시되는 사용자 화면에 대한 갱신이 이루어지는 단계를 더 포함할 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
본 발명의 실시예에 따르면, 사용자가 웹에서 파일을 편집 목적으로 열 경우 파일을 다른 사람이 수정할 수 없도록 설정하고 PC에 설치된 어플리케이션 프로그램을 실행하여 편집이 가능하게 하며 작업 완료 시 수정된 파일을 서버 측에 업로드하고 파일 상태에 관한 웹 화면을 새로 고쳐서 표기해 줄 수 있는 효과가 있다.
또한, 강화된 보안 방법이 적용되어 공유 파일의 전송 과정에서 전달되는 인증 정보가 탈취되어 발생되는 보안 이슈에 대응할 수 있는 효과도 있다.
도 1은 본 발명의 일 실시예에 따른 웹 기반 파일 공유 시스템의 구성도,
도 2는 본 발명의 일 실시예에 따른 런쳐 모듈의 설치 과정을 나타낸 도면,
도 3은 본 발명의 일 실시예에 따른 사용자 단말에서의 동작 흐름도,
도 4 및 도 5는 본 발명의 일 실시예에 따른 웹 기반 파일 공유 방법의 순서도.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 각 도면을 참조하여 설명하는 실시예의 구성 요소가 해당 실시예에만 제한적으로 적용되는 것은 아니며, 본 발명의 기술적 사상이 유지되는 범위 내에서 다른 실시예에 포함되도록 구현될 수 있으며, 또한 별도의 설명이 생략될지라도 복수의 실시예가 통합된 하나의 실시예로 다시 구현될 수도 있음은 당연하다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일하거나 관련된 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
또한, 명세서에 기재된 "…부", "…유닛", "…모듈", "…기" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명의 일 실시예에 따른 웹 기반 파일 공유 시스템의 구성도이고, 도 2는 본 발명의 일 실시예에 따른 런쳐 모듈의 설치 과정을 나타낸 도면이며, 도 3은 본 발명의 일 실시예에 따른 사용자 단말에서의 동작 흐름도이고, 도 4 및 도 5는 본 발명의 일 실시예에 따른 웹 기반 파일 공유 방법의 순서도이다.
본 발명의 일 실시예에 따른 웹 기반 파일 공유 시스템 및 방법은 사용자 단말에 설치된 런쳐 모듈을 통해 웹 브라우저에서의 사용자 행위에 따라 클라이언트 모듈을 호출하여 파일 공유 및 편집이 가능하게 하는 것을 특징으로 한다.
도 1을 참조하면, 본 실시예에 따른 웹 기반 파일 공유 시스템(100)은 통신망을 통해 상호 연결된 서버 장치(110)와 사용자 단말(120)을 포함한다. 여기서, 통신망에는 널리 알려진 다양한 유무선 통신 방식(예컨대, WLAN, 블루투스, Wi-Fi, PLC, 이더넷 등)이 적용될 수 있다.
서버 장치(110)는 공유 대상이 되는 파일을 저장하고 관리하며, 웹 상에서 하나 이상의 사용자 단말(120)이 공유 가능하게 한다. 서버 장치(110)는 웹 서버(111), 데이터베이스(113), 노드 서버(115)를 포함한다.
웹 서버(111)는 사용자 단말(120)의 웹 브라우저(121)와 통신하며, 웹을 통한 파일 공유 서비스를 제공한다. 데이터베이스(113)를 관리하며, 웹 브라우저(121)를 통해 출력되는 화면에 관한 데이터를 전송한다.
데이터베이스(113)에는 공유 대상이 되는 파일이 저장된다. 데이터베이스(113)는 웹 서버(111)에 의해 관리된다. 3D CAD 파일과 같이 임의의 파일에 대해 연관된 파일이 존재하는 경우 관련 파일들은 서로 매칭되어 저장되고 목록화 등을 통해 연계 관리될 수 있다.
노드 서버(115)는 사용자 단말(120)에서 발생한 이벤트를 처리하는 서버이다. 처리 대상이 되는 이벤트로는 파일 체크아웃에 관한 화면 갱신 요청이 있을 수 있다. 화면 갱신 요청이 있을 경우 노드 서버(115)는 대상이 되는 사용자 단말(120)의 웹 브라우저(121)에서 해당 파일에 대한 체크아웃 여부에 관한 화면 갱신이 이루어지게 할 수 있다. 여기서, 노드 서버(115)는 Node.js 프레임워크에 따른 서버로서, 웹 소켓(web socket) 처리를 통해 화면 갱신을 처리할 수 있다.
사용자 단말(120)은 웹 서버(111)에 접속하여 파일 공유 서비스를 제공받는 단말 장치이다. 본 실시예에 따른 파일 공유 서비스를 지원하는 웹 브라우저의 구동이 가능한 컴퓨팅 장치로서, 예를 들어 스마트폰, 태블릿PC, 노트북, 데스크탑PC 등 일 수 있다. 본 실시예에서 사용자 단말(120)은 서버에 대응되는 로컬 컴퓨터에 해당한다.
사용자 단말(120)은 웹 브라우저(121), 런쳐 모듈(123), 클라이언트 모듈(125), 어플리케이션 S/W(127)을 포함한다. 또한, 사용자 단말(120)은 사용자 입력을 수신하는 사용자 입력부, 통신망을 통해 통신하는 통신부, 각종 정보가 저장된 저장부, 각종 정보를 출력하는 표시부 및 각 구성요소를 제어하는 제어부 등을 포함할 수 있다.
제어부는 저장부에 저장된 프로그램 및 데이터를 이용하여 사용자 단말(120)의 전반적인 제어 기능을 실행한다. 제어부는 RAM, ROM, CPU, GPU, 버스를 포함할 수 있으며, RAM, ROM, CPU, GPU 등은 버스를 통해 서로 연결될 수 있다. CPU는 저장부에 액세스하여, 저장부에 저장된 운영체제(OS)를 이용하여 부팅을 수행할 수 있으며, 저장부에 저장된 각종 프로그램, 컨텐츠, 데이터 등을 이용하여 다양한 동작을 수행할 수 있다.
웹 브라우저(121)는 웹 서버(111)가 제공하는 웹 페이지를 실행하는 웹 브라우징 기능을 구현한 웹 데이터일 수 있다.
웹 브라우저(121)를 통해 표시되는 웹 페이지는 본 실시예에 따른 웹 기반 파일 공유 서비스를 제공하기 위해 제작된 웹 페이지로서, 다수의 사용자가 접속하여 공유 파일 정보를 열람하고 권한 있는 작업자의 경우 편집이 가능하도록 하는 파일 공유 기능이 구현되어 있을 수 있다.
일반적인 웹 브라우저의 경우, 브라우저 사용자의 정보와 데이터를 보호하기 위하여 다양한 보안 기능을 가지고 있다. 이 중 대표적인 것이 브라우저에서 실행되는 웹 페이지가 로컬 컴퓨터의 제한된 자원만을 접근할 수 있도록 차단하는 샌드박스 개념이다. 또한, 인가되지 않은 출처(URL)로 웹 서버를 접속할 수 없도록 차단하는 CORS(Cross-Origin Resource Sharing) 정책이 적용되어 있다.
하지만 웹 브라우저를 사용하면서 로컬 컴퓨터의 파일이나 프로그램을 호출하여 사용하는 것은 많은 사용 사례에서 요구된다. 과거에는 ActiveX, Flash 등을 이용하여 샌드박스를 탈출하는 방식의 구현이 많았지만, 이로 인한 보안 문제점과 특정 브라우저에서만 동작하는 문제점 등이 제기되어 현재는 이와 같은 웹 표준을 벗어나는 형태의 개발 방식은 사라지고 있다.
일반적으로 통용되는 방식은 커스텀 URL 스키마(Custom URL Schema)로 불리는 방식으로, 파일 확장자에 대해 윈도우 레지스트리를 정의하여 실행되는 exe 파일을 정의하고 호출 정보를 넘겨서 호출하는 방식이지만, 웹에서 어플리케이션으로 일방향으로만 동작한다는 약점이 있다.
따라서, 본 실시예에서는 웹 브라우저가 가지는 이러한 문제점을 해결하고자, 사용자 단말(120)(즉, 로컬 컴퓨터 측)에 런쳐 모듈(123)이 설치된다.
런쳐 모듈(123)은 일종의 웹 서버로서, 웹 브라우저(121)에서 실행되는 웹 페이지의 주소를 CROS 필터 주소에 넣어 웹 페이지에서 사용자 단말(120)의 런쳐 모듈(123)을 통해 원하는 기능을 동작하게 한다.
도 2를 참조하면, 런쳐 모듈의 설치 과정이 도시되어 있다. 런쳐 모듈(123)은 웹 브라우저(121)에 의해 최초 호출될 때 1회 설치된다. 웹 브라우저(121)에서 호출된 경우 런쳐 모듈(123)이 실행 중인지(혹은 접속이 되는지)를 확인하고, 접속이 되지 않을 경우 런쳐 모듈(123)을 설치하는 파일이 웹 서버(111)로부터 다운로드되며, 실행 시 런쳐 모듈(123)에 해당하는 프로그램이 로컬 컴퓨터에 설치되게 된다.
런쳐 모듈(123)은 시작 프로그램으로 등록되어, 사용자 단말(120)에서 백그라운드로 항상 실행되고 있다가 웹 브라우저(121)로부터 호출을 받으면 미리 지정된 동작을 수행한다. 런쳐 모듈(123)이 수행하는 동작에는 실행하고자 하는 파일의 열람 혹은 편집이 가능한 어플리케이션에 맵핑된 클라이언트 모듈(125)의 호출이 포함될 수 있다.
런쳐 모듈(123)이 설치된 상태에서 웹 브라우저(121)를 통해 특정 파일에 대한 실행을 실시할 때(실행 버튼 누름 등) 호출하는 서비스에 따라 적절한 클라이언트 모듈(125)이 호출되며, 호출한 결과는 JSON, HTML 등 다양한 형식으로 웹 페이지에 반영할 수 있다.
즉, 런쳐 모듈(123)을 통해 사용자 단말(120)에 설치된 파일이나 프로그램을 실행할 수 있으며, 또는 클라이언트 모듈(125)을 호출하게 하는 등 로컬 컴퓨터의 자원을 무제한으로 접근하고 활용할 수 있게 된다.
어플리케이션 S/W(127)은 파일을 실행시키는 응용 프로그램으로, 예를 들어 워드프로세서, 3D CAD 등이 포함될 수 있다. 이외에도 로컬 컴퓨터 측에 설치 가능한 다양한 응용 소프트웨어가 어플리케이션 S/W(127)에 포함될 수 있다.
사용자 단말(120)에 설치된 각종 응용 프로그램이 어플리케이션 S/W(127)로 포함되는 바, 어플리케이션 S/W(127)은 하나 이상이 될 수 있다.
클라이언트 모듈(125)은 대상 파일을 다운로드하고 상응하는 어플리케이션 S/W(127)에 의해 실행되게 한다. 그리고 어플리케이션 S/W(127)의 동작을 감시하며, 파일 수정이 이루어진 경우 변경 여부를 판정하고 변경된 파일을 업로드한다.
어플리케이션 S/W(127) 각각은 동작하는 방식과 실행 방식에 있어서 요구사항이 응용 프로그램마다 다르기 때문에 적절한 기능 구현이 요구된다. 따라서, 어플리케이션 S/W(127) 각각에 대해 해당 어플리케이션 S/W(127)을 제어하는 클라이언트 모듈(125)이 일대일로 매칭되어 있을 수 있다.
클라이언트 모듈(125)은 런쳐 모듈(123)에 의해 호출되며, 클라이언트 모듈(125)에서는 인증을 실시하고, 파일을 체크아웃한다. 체크아웃은 웹에서 파일을 편집 목적으로 열 경우 해당 파일을 다른 사람이 수정할 수 없도록 설정하는 것을 의미한다.
도 4 및 도 5를 참조하여 본 실시예에 따른 웹 기반 파일 공유 시스템에서 수행되는 파일 공유 방법에 대해 설명하기로 한다.
사용자 단말(120), 즉 로컬 컴퓨터 측에는 최초 1회 호출을 통해 런쳐 모듈(123)이 설치된 경우를 가정한다. 이 경우 런쳐 모듈(123)은 시작 프로그램 등으로 등록되어, 사용자 단말(120)에서 백그라운드 구동되고 있을 수 있다(단계 S200).
런쳐 모듈(123)이 설치된 사용자 단말(120)에서 사용자가 웹 브라우저(121)를 통해 로그인하게 된다(단계 S202).
런쳐 모듈(123)은 웹 브라우저(121)를 통한 사용자 로그인이 있을 경우, IP, 호스트명, Mac Address(네트워크 카드의 물리적 ID) 등의 단말 식별정보를 포함하는 세션 정보를 추출하고(단계 S204) 웹 브라우저(121)와 웹 서버(111)로 전송하여 로그인한 세션의 정보로 저장시킨다(단계 S206). 사용자 단말(120)과 서버 장치(110)에 모두 저장하는 것은 이중화가 적용된 것으로, 서버 재기동의 경우 정보를 가져오기 위한 목적 등으로의 저장도 포함된다.
웹 서버(111)에서는 로그인이 이루어진 사용자 단말(120)에서 전송된 세션 정보를 저장하고, 세션 정보를 이용하여 세션 인증키를 생성한다(단계 S208). 세션 인증키는 세션에 대하여 UUID 형식을 활용하여 만들어진다.
세션 인증키는 사용자 단말(120)(웹 브라우저(121)와 런쳐 모듈(123))로 전달된다(단계 S210).
웹 브라우저(121)에서는 사용자 입력에 따라 공유 대상이 되는 파일리스트를 웹 서버(111)에 요청할 수 있다(단계 S212).
웹 서버(111)에서는 파일리스트 요청에 대응하여 데이터베이스(113)에서 관리하는 파일에 관한 파일리스트를 전송한다(단계 S214).
웹 브라우저(121)는 전송받은 파일리스트를 화면 출력하고, 사용자 입력에 따라 공유하고자 하는 파일을 선택하여 실행하게 된다(단계 S216).
파일 실행의 경우, 런쳐 모듈(123)에서는 해당 파일을 실행시킬 수 있는 어플리케이션 S/W(127)을 제어하는 클라이언트 모듈(125)을 찾아 호출한다(단계 S218).
그리고 해당 클라이언트 모듈(125)에 세션 인증키와 파일 정보를 전달한다(단계 S220).
클라이언트 모듈(125)에서는 세션 인증키와 세션 정보를 웹 서버(111)로 전송하여(단계 S222) 정상적인 호출 여부에 대한 검증을 받게 된다(단계 S224). 웹 서버(111)는 저장된 세션 정보와 알고 있는 세션 인증키를 활용하여 검증을 수행한다. 이러한 검증은 세션 인증키가 네트워크 상에서 전달되는 과정 중에 해킹 등에 의해 탈취되지 않았는지를 확인하기 위함으로 보안성을 한층 강화시킬 수 있게 된다.
정상 호출인 것으로 검증된 경우, 클라이언트 모듈(125)은 파일 정보에 기초하여 웹 서버(111)에 파일을 요청한다(단계 S226). 본 실시예에서 파일 요청은 편집을 위한 파일 요청일 수 있다.
웹 서버(111)에서는 요청받은 파일에 대해 체크아웃을 설정한다(단계 S228). 파일 체크아웃을 통해 요청한 사용자 단말(120) 이외의 타 사용자 단말에서는 해당 파일에 대한 수정이 방지되게 함으로써, 동일 파일에 대한 이중 편집 가능성을 배제시킬 수 있다.
클라이언트 모듈(125)에서는 사용자 단말(120)의 웹 브라우저(121)와 통신 가능한 노드 서버(115)로 화면 갱신 요청을 보내고(단계 S230), 이에 따라 사용자 단말(120)의 화면이 갱신될 수 있다(단계 S232). 이는 웹 브라우저(121)를 통해 표시되는 화면에서 실행 요청된 파일의 경우, 새로고침을 하기 이전에는 웹 서버(111)에서 제공하였던 파일리스트 정보에 따라 체크아웃이 해제된 편집 가능 상태로 표시되는 것을 체크아웃 설정되어 편집 중인 것으로 표시되게 함으로써 해당 파일에 대한 체크아웃이 제대로 설정되었음을 사용자(작업자)에게 알려주기 위함이다.
갱신되는 화면에는 해당 파일에 누가 언제 수정을 시작했는지를 알리는 정보가 표시될 수 있다. 예컨대, 특정 색상(예: 파란색)으로 체크아웃한 사용자 이름과 시간이 표기될 수 있다. 추후 파일 수정이 완료된 경우에는 사용자가 입력한 코멘트와 파일의 용량, 수정시간 등의 정보가 갱신될 수 있다.
클라이언트 모듈(125)은 체크아웃이 완료되면 파일을 다운로드한다(단계 S234). 다운로드한 파일은 사용자 단말(120)의 저장부에 저장될 수 있다. 다운로드한 파일의 최종 수정시간, 용량 등에 관한 파일 상태 정보를 저장하고, 추후 파일이 닫혔을 때 수정 여부를 판정하기 위한 용도로 사용할 수 있다.
파일 다운로드 과정에서 서버 장치(110)의 데이터베이스(113)에 저장된 파일이 연관된 다른 필요 파일이 있을 경우 함께 다운로드될 수 있다.
클라이언트 모듈(125)은 어플리케이션 S/W(127)을 호출하여 다운로드한 파일의 확장자에 따라 정해진 방식으로 실행시킬 수 있다(단계 S236). 이후 사용자가 작업(파일 편집)을 종료할 때까지 대기한다(단계 S238).
파일 확장자에 따른 실행 방식은 다음과 같다.
파일이 실행 중인지를 탐지하기 위해 프로세스의 동작 여부를 검증하는 기본 방식이 적용될 수 있다. 기본 방식에 따르면, 운영체제에서 정의된 방식에 따라 응용 프로그램(어플리케이션)을 실행해 주는 것으로, 운영체제에서 설정한 응용 프로그램이 자동으로 실행되고 이렇게 실행된 프로세스가 종료될 때까지 기다릴 수 있다.
기본 방식에 의해 동작하지 않는 응용 프로그램의 경우 어플리케이션 탐지 방식(어플리케이션 API 활용)이 적용될 수 있다. 이러한 응용 프로그램은 MS-Office와 같은 프로그램으로, 다른 파일이 열려 있을 경우 모든 파일을 닫을 때까지 프로세스가 종결되지 않는 특징을 가진다. 이 경우 클라이언트 모듈(125)에서는 해당 확장자의 파일을 실행하면, 실행 중인 응용 프로그램을 탐지하여 주기적으로(예컨대, 매초) 응용 프로그램에서 해당 파일을 닫았는지를 확인함으로써 사용자가 파일을 닫을 때까지 기다릴 수 있다.
클라이언트 모듈(125)은 작업 종료(사용자의 파일 닫음)가 확인되면, 앞서 추출한 파일 상태 정보와 작업 종료된 파일의 상태 정보를 비교함으로써 파일 변경사항을 확인한다(단계 S240). 최종 수정시간 혹은 용량에서 변화가 있을 경우 파일 편집이 이루어진 것으로 간주할 수 있다.
파일 변경사항이 있을 경우에는 작업 종료된 파일을 웹 서버(111)에 업로드한다(단계 S242). 웹 서버(111)에서는 해당 파일을 데이터베이스(113)에 업데이트할 수 있다(단계 S244).
그리고 클라이언트 모듈(125)에서는 해당 파일에 대해 설정된 체크아웃 해제를 요청하고(단계 S246), 웹 서버(111)에서는 해당 파일에 대한 체크아웃을 해제할 수 있다(단계 S248).
만약 파일 변경사항이 없을 경우 단계 S242 및 S244가 생략되고, 해당 파일에 대한 체크아웃만 해제되게 할 수 있다(단계 S246 및 S248).
또한, 이 경우 클라이언트 모듈(125)에서는 사용자 단말(120)의 웹 브라우저(121)와 통신 가능한 노드 서버(115)로 화면 갱신 요청을 보내고(단계 S250), 이에 따라 사용자 단말(120)의 화면이 갱신될 수 있다(단계 S252). 이는 웹 브라우저(121)를 통해 표시되는 화면에서 체크아웃이 해제된 파일의 경우, 새로고침을 하기 이전에는 웹 서버(111)에서 제공하였던 파일리스트 정보에 따라 체크아웃이 설정되어 편집 불가 상태로 표시되는 것을 체크아웃이 해제되어 편집 가능한 것으로 표시되게 함으로써 해당 파일에 대한 체크아웃 해제가 제대로 이루어졌음을 사용자(작업자)에게 알려주기 위함이다.
단계 S242에서의 파일 업로드 과정에서, 클라이언트 모듈(125)에 의해 호출된 어플리케이션 S/W(127)이 CAD 프로그램 등으로 연관 파일에 대한 처리가 함께 이루어지는 경우, 연관된 파일 목록을 해당 어플리케이션 S/W(127)이 제공하는 API를 활용하여 추출한 후 함께 저장되게 할 수 있다. 이 과정에서 새롭게 생성된 파일이 있을 경우 함께 업로드되어 저장되게 할 수 있다.
본 실시예에 따르면, 클라우드 파일 편집, 클라우드 상에 보관된 파일을 로컬 컴퓨터에 다운로드하고 연관 프로그램(워드, 엑셀, CAD 등)을 호출하고 프로그램이 종료되거나 파일이 닫히는 시점을 포착하여 수정된 파일을 서버에 업로드할 수 있게 된다.
또한, CAD 프로그램 연동, 3D CAD 프로그램에서 다루는 데이터는 여러 파일 간의 연관 관계를 가지고 있으며 Assembly(조립물)은 하위의 파일이 함께 존재해야 정상적으로 열람할 수 있으며 수정하는 경우도 하위 파일의 수정을 포함하는 경우가 많음. CAD 프로그램과의 연동을 통하여 클라우드에 저장된 파일을 연관관계와 함께 다운로드할 수 있으며, 수정할 경우 연관된 파일을 함께 클라우드로 업로드할 수 있다.
전술한 웹 기반 파일 공유 방법은, 컴퓨터에 의해 실행되는 애플리케이션이나 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 웹 기반 파일 공유 방법은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 마스터 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 웹 기반 파일 공유 방법은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
상기에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 웹 기반 파일 공유 시스템 110: 서버 장치
111: 웹 서버 113: 데이터베이스
115: 노드 서버 120: 사용자 단말
121: 웹 브라우저 123: 런쳐 모듈
125: 클라이언트 모듈 127: 어플리케이션 S/W

Claims (9)

  1. 웹 기반 파일 공유 시스템으로서,
    공유 대상이 되는 파일을 저장하고 관리하며, 웹 상에서 공유 가능하게 하는 웹 서버를 포함하는 서버 장치; 및
    상기 웹 서버에 접속하여 파일 공유 서비스를 제공받는 하나 이상의 사용자 단말을 포함하되,
    상기 사용자 단말은,
    상기 웹 서버가 제공하는 웹 페이지를 실행하는 웹 브라우저와;
    상기 사용자 단말에 설치되어 시작 프로그램으로 등록되어 백그라운드 실행 중에 있으며, 상기 웹 브라우저로부터의 호출에 의해 지정된 동작을 수행하는 런쳐 모듈과;
    상기 런쳐 모듈에 의해 호출되며, 상기 웹 서버로부터 상기 파일을 다운로드하고 파일 확장자에 대응되는 어플리케이션 S/W를 실행시켜 상기 파일에 대한 편집이 이루어지게 하고, 편집에 의해 변경된 파일을 상기 웹 서버로 업로드하는 클라이언트 모듈을 포함하고,
    상기 클라이언트 모듈은 세션 정보와 세션 인증키를 전송하여 상기 웹 서버에서 인증이 이루어지게 하고, 편집 중에는 상기 웹 서버에 상기 파일에 대한 체크아웃 설정을 요청하여 타 사용자 단말에 의한 편집을 배제시키며,
    상기 클라이언트 모듈이 편집하고자 하는 상기 파일을 상기 웹 서버로부터 다운로드한 후 변경된 파일을 업로드할 때 상기 어플리케이션 S/W의 API를 이용하여 연관된 정보를 추출하고 함께 변경되거나 새롭게 생성된 타 파일도 포함하여 업로드하는 것을 특징으로 하는 웹 기반 파일 공유 시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 세션 정보는 사용자가 상기 웹 브라우저를 통해 로그인할 때 사용하는 상기 사용자 단말의 IP, 호스트명, Mac Address 중 하나 이상의 식별정보를 포함하는 것을 특징으로 하는 웹 기반 파일 공유 시스템.
  4. 제1항에 있어서,
    상기 클라이언트 모듈은 상기 파일에 대한 편집을 위한 체크아웃 설정 혹은 해제에 관한 정보를 웹 소켓을 이용하는 노드 서버로 전송하여 상기 웹 브라우저를 통한 사용자 화면이 갱신되도록 요청하는 것을 특징으로 하는 웹 기반 파일 공유 시스템.
  5. 삭제
  6. 제1항에 있어서,
    상기 클라이언트 모듈은 상기 다운로드한 파일과 작업 종료된 파일 간에 최종 수정시간 및 용량 중 하나 이상의 파일 상태 정보를 비교하여 수정 여부를 판정하는 것을 특징으로 하는 웹 기반 파일 공유 시스템.
  7. 제1항에 있어서,
    상기 클라이언트 모듈은 상기 어플리케이션 S/W를 통한 상기 파일의 실행 시 실행 중 여부를 탐지하기 위해 프로세스의 동작 여부를 검증하거나 보조적으로 어플리케이션 API를 활용하는 것을 특징으로 하는 웹 기반 파일 공유 시스템.
  8. 서버 장치와 네트워크 연결된 사용자 단말에서 수행되는 파일 공유 방법으로서,
    사용자 단말의 웹 브라우저를 통해 사용자가 로그인하는 단계;
    상기 사용자 단말에 설치되어 동작 중인 런쳐 모듈에서 사용자 로그인을 감지하고, 세션 정보를 추출하여 상기 웹 브라우저와 상기 서버 장치의 웹 서버로 전송하는 단계;
    상기 웹 서버에서 상기 세션 정보를 저장하고 세션 인증키를 생성하여 상기 사용자 단말로 전달하는 단계;
    상기 웹 브라우저를 통한 사용자 입력에 따라 상기 웹 서버에서 제공하는 파일에 대한 요청이 있을 경우, 상기 런쳐 모듈이 호출되어 상기 파일의 확장자에 따른 어플리케이션 S/W를 실행하기 위한 클라이언트 모듈로 상기 세션 인증키와 파일 정보를 전달하는 단계;
    상기 클라이언트 모듈에서 상기 세션 인증키와 상기 세션 정보를 상기 웹 서버로 전송하여 정상 호출 여부에 대해 검증받는 단계;
    정상 호출로 검증된 경우 상기 클라이언트 모듈의 파일 요청에 상응하는 상기 파일에 대해 체크아웃이 설정되고, 상기 클라이언트 모듈로 다운로드되는 단계;
    상기 어플리케이션 S/W를 실행시켜 상기 파일에 대한 작업을 가능하게 하고, 작업 종료를 대기하는 단계;
    작업 종료 시 파일 변경사항을 확인하는 단계;
    변경사항이 있을 경우 변경된 파일을 상기 웹 서버로 업로드하여 업데이트시키고 상기 파일에 대한 체크아웃을 해제시키며, 변경사항이 없을 경우 상기 파일에 대한 체크아웃만 해제시키는 단계를 포함하되,
    상기 클라이언트 모듈이 편집하고자 하는 상기 파일을 상기 웹 서버로부터 다운로드한 후 변경된 파일을 업로드할 때 상기 어플리케이션 S/W의 API를 이용하여 연관된 정보를 추출하고 함께 변경되거나 새롭게 생성된 타 파일도 포함하여 업로드하는 것을 특징으로 하는 웹 기반 파일 공유 방법.
  9. 제8항에 있어서,
    상기 파일에 대한 체크아웃이 설정되거나 해제된 경우, 상기 클라이언트 모듈에서 노드 서버로 화면 갱신을 요청하여 상기 웹 브라우저에서 표시되는 사용자 화면에 대한 갱신이 이루어지는 단계를 더 포함하는 웹 기반 파일 공유 방법.

KR1020210118814A 2021-09-07 2021-09-07 웹 기반 파일 공유 시스템 및 방법 KR102328987B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210118814A KR102328987B1 (ko) 2021-09-07 2021-09-07 웹 기반 파일 공유 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210118814A KR102328987B1 (ko) 2021-09-07 2021-09-07 웹 기반 파일 공유 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102328987B1 true KR102328987B1 (ko) 2021-11-19

Family

ID=78717954

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210118814A KR102328987B1 (ko) 2021-09-07 2021-09-07 웹 기반 파일 공유 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102328987B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115396414A (zh) * 2022-08-29 2022-11-25 企查查科技有限公司 基于WebSocket实现多页面共享的方法、电子设备及存储介质
KR102587505B1 (ko) * 2022-11-01 2023-10-11 주식회사 동성엔지니어링 멀티 에이전트 주행 시뮬레이션 데이터 생성을 위한 파일 변환 방법
KR102587503B1 (ko) * 2022-11-01 2023-10-11 주식회사 동성엔지니어링 멀티 에이전트 주행 시뮬레이션 데이터 생성을 위한 파일 변환 시스템

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060125399A (ko) 2005-06-02 2006-12-06 수 웅 박 인터넷 웹브라우저 기반 캐드 시스템
JP2007066200A (ja) * 2005-09-01 2007-03-15 Toshiba Corp 文書管理システム、文書管理サーバ、文書管理方法及び文書管理プログラム
JP2007304947A (ja) * 2006-05-12 2007-11-22 Ricoh Co Ltd ネットワークを介してドキュメント編集を行うためのクライアント端末装置、ドキュメント編集システムおよびプログラム
JP2009211413A (ja) * 2008-03-04 2009-09-17 Nec Corp ファイル管理システム、ファイル管理方法、及びファイル管理プログラム
KR101312456B1 (ko) * 2012-11-20 2013-10-08 주식회사 버즈피아 모바일 단말의 홈 스크린 큐레이션 시스템
KR20150047915A (ko) * 2013-10-25 2015-05-06 에스케이플래닛 주식회사 오픈 api를 적용한 런처 서비스 제공 방법, 이를 위한 시스템 및 장치
JP2015515056A (ja) * 2013-05-21 2015-05-21 ファスト トラック テクノロジーズ リミテッド ファイルをインターネット経由で公開及び共有する方法及びシステム
KR20150110559A (ko) * 2013-01-28 2015-10-02 삼성전자주식회사 디스플레이 모드 메커니즘을 갖춘 전자 시스템 및 그 작동 방법
KR20160137565A (ko) * 2014-03-31 2016-11-30 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 전자 사용자 인터페이스를 통한 협업 공동-저작 기법
US20170206371A1 (en) * 2016-01-19 2017-07-20 Electronics And Telecommunications Research Institute Apparatus and method for managing document based on kernel
KR20180089368A (ko) * 2018-08-01 2018-08-08 엔에이치엔엔터테인먼트 주식회사 디바이스 간 파일 공유를 위한 방법 및 시스템
JP2020537212A (ja) * 2017-10-16 2020-12-17 ドロップボックス, インコーポレイテッド クライアントデバイスによって実施されるコンテンツ管理システムのワークフロー機能

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060125399A (ko) 2005-06-02 2006-12-06 수 웅 박 인터넷 웹브라우저 기반 캐드 시스템
JP2007066200A (ja) * 2005-09-01 2007-03-15 Toshiba Corp 文書管理システム、文書管理サーバ、文書管理方法及び文書管理プログラム
JP2007304947A (ja) * 2006-05-12 2007-11-22 Ricoh Co Ltd ネットワークを介してドキュメント編集を行うためのクライアント端末装置、ドキュメント編集システムおよびプログラム
JP2009211413A (ja) * 2008-03-04 2009-09-17 Nec Corp ファイル管理システム、ファイル管理方法、及びファイル管理プログラム
KR101312456B1 (ko) * 2012-11-20 2013-10-08 주식회사 버즈피아 모바일 단말의 홈 스크린 큐레이션 시스템
KR20150110559A (ko) * 2013-01-28 2015-10-02 삼성전자주식회사 디스플레이 모드 메커니즘을 갖춘 전자 시스템 및 그 작동 방법
JP2015515056A (ja) * 2013-05-21 2015-05-21 ファスト トラック テクノロジーズ リミテッド ファイルをインターネット経由で公開及び共有する方法及びシステム
KR20150047915A (ko) * 2013-10-25 2015-05-06 에스케이플래닛 주식회사 오픈 api를 적용한 런처 서비스 제공 방법, 이를 위한 시스템 및 장치
KR20160137565A (ko) * 2014-03-31 2016-11-30 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 전자 사용자 인터페이스를 통한 협업 공동-저작 기법
US20170206371A1 (en) * 2016-01-19 2017-07-20 Electronics And Telecommunications Research Institute Apparatus and method for managing document based on kernel
JP2020537212A (ja) * 2017-10-16 2020-12-17 ドロップボックス, インコーポレイテッド クライアントデバイスによって実施されるコンテンツ管理システムのワークフロー機能
KR20180089368A (ko) * 2018-08-01 2018-08-08 엔에이치엔엔터테인먼트 주식회사 디바이스 간 파일 공유를 위한 방법 및 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115396414A (zh) * 2022-08-29 2022-11-25 企查查科技有限公司 基于WebSocket实现多页面共享的方法、电子设备及存储介质
KR102587505B1 (ko) * 2022-11-01 2023-10-11 주식회사 동성엔지니어링 멀티 에이전트 주행 시뮬레이션 데이터 생성을 위한 파일 변환 방법
KR102587503B1 (ko) * 2022-11-01 2023-10-11 주식회사 동성엔지니어링 멀티 에이전트 주행 시뮬레이션 데이터 생성을 위한 파일 변환 시스템

Similar Documents

Publication Publication Date Title
KR102328987B1 (ko) 웹 기반 파일 공유 시스템 및 방법
CN107733922B (zh) 用于调用服务的方法和装置
US20220276910A1 (en) Dynamically integrating a client application with third-party services
CN112035215B (zh) 节点集群的节点自治方法、系统、装置及电子设备
EP3391616B1 (en) Device management with tunneling
EP2771803B1 (en) File fetch from a remote client device
CN110363026B (zh) 文件操作方法、装置、设备、系统及计算机可读存储介质
US9710649B2 (en) Techniques for presenting and collecting end user license agreement acceptance
US10701053B2 (en) Authentication and approval control system for distributed ledger platform
US8677508B2 (en) Confidential information leakage prevention system, confidential information leakage prevention method and confidential information leakage prevention program
CN108604187B (zh) 托管的虚拟机部署
US11882154B2 (en) Template representation of security resources
WO2020135492A1 (zh) 软件分层管理系统
CN108289098A (zh) 分布式文件系统的权限管理方法和装置、服务器、介质
CA2883029C (en) Method and system for securely updating a website
JP7072574B2 (ja) ユーザ認可のためのシステムおよび方法
CN113254534A (zh) 数据同步方法、装置及计算机存储介质
CN114079653B (zh) 一种通信方法、装置、计算机设备和存储介质
CN111314355B (zh) 一种vpn服务器的认证方法、装置、设备及介质
WO2020224108A1 (zh) Url拦截转换方法、装置以及计算机设备
US11757976B2 (en) Unified application management for heterogeneous application delivery
CN111447080B (zh) 私有网络去中心化控制方法、装置及计算机可读存储介质
JP6710230B2 (ja) 認証システム及び認証方法
KR102666949B1 (ko) 휴대폰 번호를 이용한 로그인 지원 방법 및 그 시스템
US11818183B2 (en) System and method for workspace sharing

Legal Events

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