OpenAPI 보안 스키마로 API를 보안하는 방법

OpenAPI 보안 스킴이 무엇인지, 어떻게 작동하는지, 그리고 Apidog를 사용하여 API를 안전하게 보호하는 방법을 배워보세요. Apidog는 API 설계, 테스트 및 문서화에 유용한 도구입니다.

Young-jae

Young-jae

6 October 2025

OpenAPI 보안 스키마로 API를 보안하는 방법

API를 개발하거나 사용하는 경우, 무단 액세스 및 오용으로부터 보호하는 것이 얼마나 중요한지 잘 알고 있을 것입니다. API는 많은 현대 애플리케이션의 중추이며, 적절한 인증 및 권한 부여 메커니즘으로 보안을 유지해야 합니다.

그런데 API의 보안 요구 사항을 어떻게 설명하고 문서화합니까? API 소비자가 API에 안전하고 정확하게 접근하는 방법을 어떻게 보장합니까? 서로 다른 API 및 보안 체계 간의 혼란과 불일치 문제를 어떻게 피합니까?

이것이 OpenAPI 보안 체계가 유용하게 사용되는 곳입니다. OpenAPI는 기계 판별 가능하고 인간 친화적인 형식으로 API를 설명하고 문서화하는 데 널리 사용되는 표준입니다. OpenAPI 보안 체계는 API를 보호하는 보안 메커니즘을 정의하고 참조할 수 있게 해주는 OpenAPI 사양의 일부입니다.

이 블로그 게시물에서는 OpenAPI 보안 체계가 무엇인지, 어떻게 작동하는지, 그리고 이를 사용하여 API를 보안하는 방법을 설명합니다. 또한 OpenAPI 보안 체계의 몇 가지 예와 API를 설계하고 테스트하며 문서화하는 데 유용한 도구인 Apidog와 함께 사용하는 방법도 보여 드리겠습니다.

button

OpenAPI 보안 체계란 무엇인가요?

OpenAPI 보안 체계는 OpenAPI 사양을 사용하여 API의 보안 요구 사항을 설명하는 방법입니다. 이것은 OpenAPI 문서의 components/securitySchemes 섹션에 정의되어 있으며, API의 루트 레벨 또는 작업 레벨에서 security 키워드를 사용하여 참조할 수 있습니다.

OpenAPI 보안 체계는 다음과 같은 다양한 유형의 보안 메커니즘을 설명할 수 있습니다:

각 보안 체계는 보안 메커니즘의 유형을 나타내는 type 속성과 해당 유형에 따라 달라지는 다른 속성을 가집니다. 예를 들어, API 키 보안 체계는 API 키를 포함하는 헤더, 쿼리 파라미터 또는 쿠키의 이름을 지정하는 name 속성과 API 키의 위치를 지정하는 in 속성을 가집니다.

다음은 API 키 보안 체계의 예입니다:

components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      name: X-API-Key
      in: header

API 또는 특정 작업에 보안 체계를 적용하려면 security 키워드를 사용하고 보안 요구 사항 객체의 배열을 제공해야 합니다. 보안 요구 사항 객체는 보안 체계 이름을 범위 이름 (OAuth 2.0 및 OpenID Connect의 경우) 또는 빈 배열 (다른 유형의 경우)로 매핑하는 것입니다.

예를 들어, 전체 API에 API 키 보안 체계를 적용하려면 다음 구문을 사용할 수 있습니다:

security:
  - ApiKeyAuth: []

특정 작업에 API 키 보안 체계를 적용하려면 다음 구문을 사용할 수 있습니다:

paths:
  /pets:
    get:
      security:
        - ApiKeyAuth: []

API 또는 특정 작업에 대해 여러 보안 체계를 사용할 수 있으며, 이것은 대체 (논리적 OR) 또는 조합 (논리적 AND)으로 적용할 수 있습니다. 예를 들어, 특정 작업에 대해 API 키 또는 베어러 토큰 중 하나를 요구하려면 다음 구문을 사용할 수 있습니다:

paths:
  /pets:
    get:
      security:
        - ApiKeyAuth: []
        - BearerAuth: []

특정 작업에 대해 API 키와 베어러 토큰을 모두 요구하려면 다음 구문을 사용할 수 있습니다:

paths:
  /pets:
    get:
      security:
        - ApiKeyAuth: []
          BearerAuth: []

왜 OpenAPI 보안 체계를 사용해야 하나요?

OpenAPI 보안 체계는 API 제공자와 소비자 모두에게 여러 가지 이점을 제공합니다:

Apidog와 함께 OpenAPI 보안 체계를 사용하는 방법

Apidog는 API를 설계하고 테스트하며 문서화하기 위한 강력한 도구입니다. OpenAPI 사양을 지원하며 시각적이고 직관적인 방식으로 OpenAPI 문서를 생성하고 편집할 수 있습니다. 또한 라이브 테스트, 모의 서버, 코드 생성 및 대화형 문서화와 같은 기능을 제공합니다.

button

Apidog의 장점 중 하나는 OpenAPI 문서에서 정의한 보안 체계를 자동으로 감지하고 적용할 수 있다는 것입니다. 예를 들어, API 키 보안 체계를 정의하면 Apidog가 API 키를 입력하라는 프롬프트를 표시하고 요청과 함께 이를 전송합니다. OAuth 2.0 보안 체계를 정의하면 Apidog가 권한 부여 프로세스를 안내하고 액세스 토큰을 얻고 새로 고칩니다.

Apidog와 함께 OpenAPI 보안 체계를 사용하려면 다음 단계를 따르십시오:

Apidog는 API의 응답을 표시하고 요청 및 보안 매개변수의 세부 정보를 보여줍니다. 또한 코드 탭에서 원시 OpenAPI 문서를 보고 편집할 수 있으며, 문서 및 코드 탭에서 대화형 문서 및 코드 샘플을 생성할 수 있습니다.

결론

OpenAPI 보안 체계는 API의 보안 요구 사항을 설명하고 문서화할 수 있는 OpenAPI 사양의 유용한 기능입니다. 이는 API 소비자와 개발자에게 API를 보호하는 보안 메커니즘을 전달하고, API에 안전하고 올바르게 액세스하는 방법을 보여주는 대화형 문서 및 코드 샘플을 생성할 수 있게 해줍니다.

또한 OpenAPI 사양을 지원하는 다양한 도구 및 플랫폼과 API를 통합할 수 있도록 도와줍니다. Apidog와 같은 도구는 API를 보다 쉽게 설계, 테스트 및 문서화하는 데 큰 도움이 됩니다.

button

Explore more

EXAONE 3.0 7.8B 모델을 로컬에서 실행하는 방법

EXAONE 3.0 7.8B 모델을 로컬에서 실행하는 방법

이 글에서는 EXAONE 3.0 7.8B 모델을 자신의 컴퓨터에서 설치하고 실행하는 방법을 단계별로 상세히 알아보겠습니다

25 March 2025

Claude 3.7 소넷 API에 접근하고 Apidog을 사용하여 테스트하는 방법

Claude 3.7 소넷 API에 접근하고 Apidog을 사용하여 테스트하는 방법

Anthropic의 최신 출시인 Claude 3.7 Sonnet에 대해 기대하고 있으며, Apidog로 테스트하면서 API를 통한 기능을 탐색하고 싶다면, 올바른 장소에 오신 것입니다. 💡시작하기 전에 간단한 팁을 드리겠습니다: 오늘 Apidog를 무료로 다운로드하여 API 테스트 프로세스를 간소화하세요. 특히 Claude 3.7 Sonnet의 강력한 기능을 탐색하는 데 적합한 도구로, 최첨단 AI 모델을 테스트하려는 개발자에게 이상적입니다!버튼 Claude 3.7 Sonnet이 중요한 이유로 시작해봅시다. Anthropic은 최근 2025년 2월 24일에 이 모델을 공개했으며, 즉시 및 단계별 응답을 위한 하이브리드 추론 기능을 갖춘 가장 지능적인 창작물로 자리 잡았습니다. 이는 코딩, 추론 등 여러 부분에서 혁신적인 변화를 가져오며, 현재 e Anthropic API, Amazon Bedrock, Google Cloud의 Vertex AI를 통해 사용할 수 있습니다. 이 튜

25 February 2025

GitHub Copilot 무료: 어떻게 시작하나요?

GitHub Copilot 무료: 어떻게 시작하나요?

GitHub Copilot 무료 사용법을 알아보세요. 이 AI 기반 코딩 도우미에 대한 이 가이드는 VS Code와 JetBrains와 같은 인기 IDE의 설정 단계를 다루며, 무료로 스마트한 코드 제안 및 완성을 통해 생산성을 높일 수 있도록 도와줍니다!

19 December 2024

Apidog에서 API 설계-첫 번째 연습

API를 더 쉽게 구축하고 사용하는 방법을 발견하세요