RISS 학술연구정보서비스

검색

인기 검색어

    다국어 입력

    http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.

    변환된 중국어를 복사하여 사용하시면 됩니다.

    예시)
    • 中文 을 입력하시려면 zhongwen을 입력하시고 space를누르시면됩니다.
    • 北京 을 입력하시려면 beijing을 입력하시고 space를 누르시면 됩니다.
    닫기

    Automated RESTful API Dependency Extraction in Microservice Architecture = 마이크로서비스 아키텍처에서의 자동화 RESTful API 의존성 추출

    한글로보기

    https://www.riss.kr/link?id=T17449859

    • 0

      상세조회
    • 0

      다운로드
    서지정보 열기
    • 내보내기
    • 내책장담기
    • 공유하기
    • 오류접수

    부가정보

    다국어 초록 (Multilingual Abstract) kakao i 다국어 번역

    RESTful APIs have become the dominant interaction method for web services and REST API testing is essential for detecting bugs or vulnerabilities. Analyzing REST API dependencies and performing stateful REST API testing are required for uncovering latent bugs or vulnerabilities within complex system states.

    The adoption of microservice architecture in modern software development presents a challenge to automated stateful REST API testing. While the existing state-of-the-art tools assume a single, comprehensive OpenAPI Specification (OAS) document, multiple independently managed OAS documents are ideal within microservice architectures. This decentralized structure requires resolving inter-service dependencies. A significant challenge is the presence of cross-document inconsistencies regarding parameters and schemas.

    We define 12 cross-document inconsistency types across 3 domains that obstruct REST API dependency extraction in decentralized software systems. Effectively modeling and managing these conflicts is requisite for generating global executable REST API sequences.

    Leveraging the 12 inconsistency types, we introduce a novel two-stage method to automatically extract REST API dependencies from disparate documents. The process begins with graph generation, where a matching algorithm utilizes exact matching and semantic similarity matching to resolve the inconsistencies and identify potential dependencies. This is followed by graph traversal, which performs a modified Breadth-First Search (BFS), using the generated lists to inject data into subsequent requests, considering the inconsistencies inherent in the cross-document environment.

    The method is evaluated on a test application consisting of 19 endpoints and 30 ground-truth dependencies. Our approach successfully executes 84% of the test cases at an optimal semantic similarity threshold. This demonstrates the method’s capability to extract and execute stateful REST API sequences across microservice boundaries, establishing a foundational method for security testing and integration analysis in distributed environments.
    번역하기

    RESTful APIs have become the dominant interaction method for web services and REST API testing is essential for detecting bugs or vulnerabilities. Analyzing REST API dependencies and performing stateful REST API testing are required for uncovering lat...

    RESTful APIs have become the dominant interaction method for web services and REST API testing is essential for detecting bugs or vulnerabilities. Analyzing REST API dependencies and performing stateful REST API testing are required for uncovering latent bugs or vulnerabilities within complex system states.

    The adoption of microservice architecture in modern software development presents a challenge to automated stateful REST API testing. While the existing state-of-the-art tools assume a single, comprehensive OpenAPI Specification (OAS) document, multiple independently managed OAS documents are ideal within microservice architectures. This decentralized structure requires resolving inter-service dependencies. A significant challenge is the presence of cross-document inconsistencies regarding parameters and schemas.

    We define 12 cross-document inconsistency types across 3 domains that obstruct REST API dependency extraction in decentralized software systems. Effectively modeling and managing these conflicts is requisite for generating global executable REST API sequences.

    Leveraging the 12 inconsistency types, we introduce a novel two-stage method to automatically extract REST API dependencies from disparate documents. The process begins with graph generation, where a matching algorithm utilizes exact matching and semantic similarity matching to resolve the inconsistencies and identify potential dependencies. This is followed by graph traversal, which performs a modified Breadth-First Search (BFS), using the generated lists to inject data into subsequent requests, considering the inconsistencies inherent in the cross-document environment.

    The method is evaluated on a test application consisting of 19 endpoints and 30 ground-truth dependencies. Our approach successfully executes 84% of the test cases at an optimal semantic similarity threshold. This demonstrates the method’s capability to extract and execute stateful REST API sequences across microservice boundaries, establishing a foundational method for security testing and integration analysis in distributed environments.

    더보기

    국문 초록 (Abstract) kakao i 다국어 번역

    RESTful API는 현재 웹 서비스의 핵심 통신 방식으로 자리매김했으며, REST API 테스팅은 소프트웨어 시스템 버그나 보안 취약점 탐지에 필수적이다. 특히 복잡한 시스템 내부 상태를 파악하고 잠재된 취약점을 발견하기 위해 REST API 간의 의존성을 분석하여 스테이트풀(Stateful) REST API 테스팅을 수행하는 것이 필요하다.

    최근 소프트웨어 개발에서 마이크로서비스 아키텍처의 도입은 이러한 스테이트풀(Stateful) REST API 테스팅에 난제를 제시한다. 기존 도구들은 단일 OpenAPI Specification (OAS) 문서에 기반하고 있는 반면, 마이크로서비스 아키텍처에서는 다수의, 독립적으로 관리되는 OAS 문서를 소유하는 것이 가능하다. 그리고 다수의, 독립적인 OAS 문서가 존재하는 환경에서 파라미터 및 스키마 정의가 일치하지 않는 문서 간 불일치 문제가 REST API 의존성 추출하는 데 문제가 된다.

    본 논문에서는 다수의 독립적으로 관리되는 OAS 문서가 존재하는 분산된 환경에서 REST API 의존성 추출을 방해하는 12가지 유형의 문서 간 불일치를 정의한다. 이 유형들은 스키마 대 파라미터 불일치, 스키마 대 스키마 불일치, 속성 대 속성 불일치의 세 가지 영역으로 분류된다. 이러한 불일치들을 효과적으로 모델링하고 해결하는 것은 마이크로서비스 아키텍처 환경에서 REST API 의존성을 추출하고 글로벌 REST API 실행 순서를 생성하는 데 필수적이다.

    정의된 12가지 불일치 유형 기반 분산된 OAS 문서로부터 글로벌 REST API 의존성 그래프를 생성하고 순회하는 두 단계 기법을 제시한다. 그래프 생성(Graph Generation) 과정에서 매칭 알고리즘을 통해 완전 일치(Exact Match)와 유사성 일치(Semantic Similarity Match) 실시하고 12가지 유형의 불일치를 해결하며 REST API 의존성을 파악한다. 발견된 의존성에 따라 그래프를 생성한다. 그 다음은 그래프 순회(Graph Traversal) 단계로, 수정된 BFS 탐색을 수행한다. 이 순회는 생성된 리스트를 사용하여 문서 간 불일치 문제를 고려하며 진행된다. 또한 의존 API가 존재하는 API의 호출을 성공적으로 생성하고 수행한다.

    제안된 기법은 19개의 엔드포인트와 30개의 실제 의존성(Ground-Truth Dependencies)을 포함한 테스트 애플리케이션을 통해 평가되었다. 실험 결과, 본 기법은 최적의 유사성 임계값에서 84% 커버리지를 달성한다. 이는 제안하는 기법이 다수의 독립적인 OAS 문서를 관리하는 마이크로서비스 환경에서도 API 시퀀스(Sequence)를 추출하고 실행할 수 있음을 입증하며, 향후 분산 환경에서의 보안 테스팅 및 통합 분석을 위한 기반 기술로서의 가치를 보여준다.
    번역하기

    RESTful API는 현재 웹 서비스의 핵심 통신 방식으로 자리매김했으며, REST API 테스팅은 소프트웨어 시스템 버그나 보안 취약점 탐지에 필수적이다. 특히 복잡한 시스템 내부 상태를 파악하고 잠...

    RESTful API는 현재 웹 서비스의 핵심 통신 방식으로 자리매김했으며, REST API 테스팅은 소프트웨어 시스템 버그나 보안 취약점 탐지에 필수적이다. 특히 복잡한 시스템 내부 상태를 파악하고 잠재된 취약점을 발견하기 위해 REST API 간의 의존성을 분석하여 스테이트풀(Stateful) REST API 테스팅을 수행하는 것이 필요하다.

    최근 소프트웨어 개발에서 마이크로서비스 아키텍처의 도입은 이러한 스테이트풀(Stateful) REST API 테스팅에 난제를 제시한다. 기존 도구들은 단일 OpenAPI Specification (OAS) 문서에 기반하고 있는 반면, 마이크로서비스 아키텍처에서는 다수의, 독립적으로 관리되는 OAS 문서를 소유하는 것이 가능하다. 그리고 다수의, 독립적인 OAS 문서가 존재하는 환경에서 파라미터 및 스키마 정의가 일치하지 않는 문서 간 불일치 문제가 REST API 의존성 추출하는 데 문제가 된다.

    본 논문에서는 다수의 독립적으로 관리되는 OAS 문서가 존재하는 분산된 환경에서 REST API 의존성 추출을 방해하는 12가지 유형의 문서 간 불일치를 정의한다. 이 유형들은 스키마 대 파라미터 불일치, 스키마 대 스키마 불일치, 속성 대 속성 불일치의 세 가지 영역으로 분류된다. 이러한 불일치들을 효과적으로 모델링하고 해결하는 것은 마이크로서비스 아키텍처 환경에서 REST API 의존성을 추출하고 글로벌 REST API 실행 순서를 생성하는 데 필수적이다.

    정의된 12가지 불일치 유형 기반 분산된 OAS 문서로부터 글로벌 REST API 의존성 그래프를 생성하고 순회하는 두 단계 기법을 제시한다. 그래프 생성(Graph Generation) 과정에서 매칭 알고리즘을 통해 완전 일치(Exact Match)와 유사성 일치(Semantic Similarity Match) 실시하고 12가지 유형의 불일치를 해결하며 REST API 의존성을 파악한다. 발견된 의존성에 따라 그래프를 생성한다. 그 다음은 그래프 순회(Graph Traversal) 단계로, 수정된 BFS 탐색을 수행한다. 이 순회는 생성된 리스트를 사용하여 문서 간 불일치 문제를 고려하며 진행된다. 또한 의존 API가 존재하는 API의 호출을 성공적으로 생성하고 수행한다.

    제안된 기법은 19개의 엔드포인트와 30개의 실제 의존성(Ground-Truth Dependencies)을 포함한 테스트 애플리케이션을 통해 평가되었다. 실험 결과, 본 기법은 최적의 유사성 임계값에서 84% 커버리지를 달성한다. 이는 제안하는 기법이 다수의 독립적인 OAS 문서를 관리하는 마이크로서비스 환경에서도 API 시퀀스(Sequence)를 추출하고 실행할 수 있음을 입증하며, 향후 분산 환경에서의 보안 테스팅 및 통합 분석을 위한 기반 기술로서의 가치를 보여준다.

    더보기

    목차 (Table of Contents)

    • Abstract i
    • Table of Contents iii
    • List of Figures v
    • List of Tables vii
    • Chapter 1. Introduction 1
    • Abstract i
    • Table of Contents iii
    • List of Figures v
    • List of Tables vii
    • Chapter 1. Introduction 1
    • Chapter 2. Background 7
    • Chapter 3. Motivation 13
    • Chapter 4. Design 17
    • Chapter 5. Evaluation 34
    • Chapter 6. Related Works 44
    • Chapter 7. Future Works 47
    • Chapter 8. Conclusion 48
    • Bibliography 50
    • Abstract in Korean 55
    더보기

    분석정보

    View

    상세정보조회

    0

    Usage

    원문다운로드

    0

    대출신청

    0

    복사신청

    0

    EDDS신청

    0

    동일 주제 내 활용도 TOP

    더보기

    주제

    연도별 연구동향

    연도별 활용동향

    연관논문

    연구자 네트워크맵

    공동연구자 (7)

    유사연구자 (20) 활용도상위20명

    이 자료와 함께 이용한 RISS 자료

    나만을 위한 추천자료

    해외이동버튼