Apidog

オールインワン協働API開発プラットフォーム

API設計

APIドキュメント

APIデバッグ

APIモック

API自動テスト

セキュリティスキーム:API認証を効率化

Oliver Kingsley

Oliver Kingsley

Updated on 4月 29, 2025

API開発の急速に進化する状況において、セキュリティは単なる機能ではなく、根本的な必要性です。エンドポイントを不正アクセスから保護することは最も重要ですが、数多くあるエンドポイントや多様なチームメンバー間で認証を一貫して管理するのは、複雑でエラーが発生しやすくなります。従来のメソッドでは、エンドポイントごとに構成を繰り返す必要があるため、矛盾や潜在的な脆弱性につながります。この課題を認識し、ApidogはこのオールインワンAPI開発プラットフォーム内でのAPI認証・認可管理を効率化・標準化するために設計された新しい セキュリティスキーム機能を導入することを発表できることを嬉しく思います。

この強力な新機能により、OpenAPI Specification (OAS)に基づいて再利用可能な認証テンプレートを定義することができます。ワークフローを劇的に簡素化しながら、互換性と相互運用性を確保します。セキュリティスキームとは何かOpenAPI 仕様とどのように連携しているのか、そしてApidog のセキュリティスキーム機能を利用して API を強化するにはどうすればよいか、この記事で包括的に解説していきます。最新の API セキュリティ管理の基本となるこの重要な側面を理解し、マスターするための包括的なガイドに delve してください。

button

OpenAPI 仕様におけるセキュリティスキームとは?

Apidog の実装に dive する前に clarify しておきましょう。セキュリティスキームとは何か? OpenAPI Specification (OAS) 3.0 の context では、「セキュリティスキーム」という用語は、エンドポイントへのリクエストを認証または認可するために使用される特定のメソッドの定義を指します。これは、使用される特定の credentials (実際の API キーやパスワードなど) ではなく、認証がどのように行われるかを説明する Blueprint または template と考えてください。

OpenAPI はセキュリティスキームに対していくつかの標準的な型を定義しています。

1. http: Authorization ヘッダーを使用する標準的な HTTP 認証メカニズムをカバーします。これには以下が含まれます。

  • Basic Auth: ユーザー名/パスワード認証
  • Bearer Auth: "Bearer " を接頭辞とするトークン (JWT など) を使用します。

2. HTTP Authentication Scheme Registry に登録されているその他のスキーム

  • apiKey: リクエストヘッダー、クエリパラメータ、またはクッキーに渡される API キー用
  • oauth2: 広く採用されている OAuth 2.0 認可フレームワーク用。様々なフロー (Authorization Code, Client Credentials など) をサポートします。
  • openIdConnect: OpenID Connect Discovery を使用した認証用

OpenAPI 仕様で定義されている core principle は、2 段階のプロセスです。

  1. 定義: API が使用する可能性のあるすべての潜在的なセキュリティスキームは、OpenAPI ドキュメントの components/securitySchemes セクション内にグローバルに定義されます。各スキームには名前が付けられ、その type に従って構成されます (例: type: http の場合は scheme: basic を指定、type: apiKey の場合は in: header および name: X-API-Key を定義)。
  2. 適用: 定義後、これらの名前付きスキームは、security キーワードを使用して API 全体 (グローバルに) または特定の操作に適用されます。このキーワードは、アクセスに必要な定義済みスキームをどちらも指定します。必要に応じて、必要な OAuth 2.0 スコープも含まれます。

このアプローチは、認証メソッドの定義 (スキーム) をアプリケーションと使用される特定のcredentialsから分離し、API 定義における一貫性、再利用性、および明確性を促進します。Apidog のセキュリティスキーム機能は、この標準を採用し、堅牢で仕様に準拠したセキュリティ管理を開発ワークフローに直接組み込んでいます。

Apidog のセキュリティスキーム機能を利用する理由

Apidog でセキュリティスキームを実装することは、各リクエストまたはエンドポイントごとに認証を手動で構成するよりも significant advantages を提供します。これは、OpenAPI 仕様の best practices とワークフローを連携させ、個々の開発者とチームに tangible benefits を提供します。

  1. Define Once, Reuse Everywhere: これが cornerstone benefit です。セキュリティスキーム (例: Bearer Token 認証用) を一度作成します。わずか数クリックで、このスキームを数十から数百のエンドポイントまたはフォルダー全体に簡単に適用できます。これにより、繰り返しの設定を大幅に削減し、一貫性を確保できます。
  2. Clear Separation of Concerns: セキュリティスキームは、authentication method definition (テンプレート、例: 「ヘッダー内の API キーを使用し、名前は ‘X-API-Key’ とする」) を、実際の credential values (特定のキー文字列) から cleanly separate します。これにより、メンテナンスが far easier になります。認証メソッドが変更された場合 (例: ヘッダー名)、1 か所でスキームを更新すれば済みます。Credentials は、 fundamental scheme definition を変更することなく、環境ごとに個別に管理できます。
  3. Enhanced Security & Reduced Leakage: スキームが値から分離されているため、Debugging のために Apidog 内で設定された default credentials は、公開されているオンラインドキュメントから testing する際に自動的に exposed または使用されません。ドキュメント経由で Debugging するユーザーは、手動で credentials を入力する必要があり、shared docs を介した sensitive keys または tokens の accidental leakage を防ぎます。
  4. Simplified Collaboration: Teams は immensely benefit します。共通の centrally managed library of security schemes により、誰もが同じ、承認された認証メソッドを project 全体で consistently 使用できるようになり、configuration errors を削減し、security practices を標準化できます。
  5. Automatic Inheritance: ある folder にセキュリティスキームを適用すると、その folder 内のすべてのエンドポイントは、明示的に overridde されない限り、その設定を自動的に inherit します。この hierarchical approach は、セクション全体で common security requirements を持つ large APIs の configuration を streamlined します。
  6. Full OpenAPI Compliance: Apidog のセキュリティスキーム機能を使用することで、API 定義はOpenAPI Specification標準に完全に compliant のままであり、interoperability と accurate documentation generation を保証します。
  7. Integration with Apidog Workflow: Apidog のセキュリティスキームは、sprint branches、versioning、および change historyのような core features と 통합されています。これは、API のセキュリティの進化を functional changes と共に管理し、modification を追跡し、feature branches 内で securely 作業できることを意味します。

Apidog でセキュリティスキームを採用することは、単に仕様に従うことだけではありません。それは、API 認証管理に対して、より堅牢で、効率的で、安全で、保守可能なアプローチを実装することです。

Apidog でセキュリティスキームを作成する方法

Apidog は、OpenAPI 仕様で概説されている概念と密接に連携し、セキュリティスキームを定義・構成することを intuitive にします。これらの reusable templates は手動で作成することも、既存の OpenAPI ドキュメントを importing する際に automatic creation を利用することもできます。

方法 1: セキュリティスキームを手動で作成する

1.移動: Apidog プロジェクトで、左側のサイドバーのComponentsセクションに移動し、Security Schemesを選択します。

2.新しいスキーム: + New Security Schemeボタンをクリックします。

manual security scheme creation

3.タイプの選択: Apidog の extensive list から、定義する必要がある認証のタイプを選択します。これは、core OAS types を mirror し、さらに拡張しています。

  • APIキー(ヘッダー、クエリ、クッキー)
  • Bearer TokenAuthorization: Bearer ...
  • JWT(JSON Web Token固有)
  • Basic Auth(ユーザー名/パスワード)
  • Digest Auth
  • OAuth 2.0(複数のグラントタイプをサポート)
  • その他、OAuth 1.0、Hawk、AWS Signature、Kerberos、NTLM、Akamai EdgeGrid、またはカスタムなど。
Apidog での security scheme types のサポート

4.構成: 選択したタイプに基づいて必須情報を入力します。これには以下が含まれます。

  • 名前: スキームの説明的な名前 (例: MainApiKeyHeader, PetStoreOAuth)。
  • タイプ固有の設定: API Key の場合、In (ヘッダー、クエリ) と Name (ヘッダー/クエリ名) を指定します。OAuth 2.0 の場合、Grant Types、URLs (Auth, Token, Refresh) を構成し、利用可能なScopes を定義します。

5.保存: 保存をクリックします。再利用可能なセキュリティスキームが利用可能になりました。

新しいセキュリティスキームを保存

高度な OAS 構成:

スキーマエディタ内で、Advanced Configuration をクリックすると、 underlying JSON または YAML 表現を conform する OpenAPI 仕様に従って表示および直接編集できます。これにより、必要に応じて細かく調整したり、より complex configuration を定義したりできます。

Advanced OAS 構成

方法 2: OAS 経由で importing する

components/securitySchemes に既に定義が含まれている OpenAPI ファイル (.json または .yaml) を importing した場合、Apidog はこれらを自動的に parse し、project の Components library 内に corresponding するセキュリティスキームを作成し、適用できるように準備します。

Apidog は、user friendly UI と direct OAS editing capabilities の両方を提供することで、underlying OpenAPI 仕様に familiar であるかどうかにかかわらず、security schemes features を effectively に使用する方法を容易にします。

Apidog ワークフローでセキュリティスキームを利用する

Apidog の Components ライブラリでセキュリティスキームを定義したら、これらを apply してエンドポイントへのアクセスを control するのは straightforward and flexible です。これは、reusability と standardization の power が真に shines する場所です。

セキュリティ スキームを apply する:

セキュリティスキームは2つのレベルで apply できます。

フォルダーレベル:

  • API 構造内のフォルダーを選択します。
  • 右側パネルのAuthタブに移動します。
  • 認証タイプとしてSecurity Schemeを選択します。
フォルダーレベルでのセキュリティスキーム
  • 以前に作成したドロップダウンリストから目的の scheme(s) を選択します。
security scheme type を選択
  • OAuth 2.0 を適用する場合、このフォルダ内のエンドポイントに必要なデフォルトの必須スコープを選択できます。
OAuth 2.0 スコープの設定

利点: この folders 内のすべての endpoints および subfolders は、override されなければ automatically inherit this security scheme を行います。これは、uniform authentication needs を持つ API のセクションに perfect です。

エンドポイントレベル:

  • 特定の endpoint を選択します。
  • Edit タブに移動し、Request セクションを見つけて、その中の Auth タブを選択します。
  • タイプとして Security Scheme を選択します。
エンドポイントレベルでのセキュリティスキームの設定
  • ご希望のスキームを選択してください。
目的のスキームを選択
  • OAuth 2.0 の場合、この particular operation に必要な特定のスコープを正確に定義します。
OAuth 2.0 の特定のスコープを定義

利点: エンドポイントレベルの設定は、親フォルダからの継承設定をOverrideし、固有のセキュリティ要件を持つ操作に対してきめ細やかな制御を可能にします。

認証値の管理:

セキュリティスキームメソッドを定義するものであり、を定義するものではないことに注意してください。Debugging の際:

  • Default Auth Values: 開発および testing 時に Apidog 内で便利なように、フォルダまたはエンドポイントの Auth settings 内でスキームのdefault credential values を設定できます (例: テスト API キーを入力したり、default OAuth 2.0 token を取得したり)。これらの defaults は、Endpoints がそれらを inheriting している場合、Apidog で「Send」をクリックすると自動的に使用されます。
  • Inheritance 対 Customization: Debugging の際、エンドポイントの Run タブ Auth セクションでは、親からの値を inherits しているか、またはその 特定の run のために manually 値が設定されているかが表示されます。inherits された default を使用するか、または単一の request に対して temporarily override するかを選択できます。
Apidog でセキュリティスキームを使用する
  • Online Documentation Debugging: 前述のように、Apidog 内で設定された default values は、online documentationから debugging する際に automatic に populated されません。Users は、セキュリティ保護のために「Try it」panel の Auth セクションで manually credentials を入力する必要があります。
オンライン documentation でセキュリティスキームを使用してエンドポイントを Debugging

Apidog でセキュリティスキーム機能の使い方を master することで、OpenAPI 仕様の best practices を活用し、より organized、secure、maintainable、および collaborative な API 開発環境を作り出すことができます。

結論:Apidog のセキュリティスキームで API セキュリティを向上させる

API セキュリティを効果的に管理することは、最新のソフトウェア開発において譲れません。Apidog のセキュリティスキームは、OpenAPI Specification の best practices1 と直接連携し、堅牢で標準化された効率的なソリューションを提供します。セキュリティスキームとは何か—API キー、Bearer Token、Basic Auth、OAuth 2.0 などの認証メソッドを定義する再利用可能なテンプレート—を理解することで、開発者はエラーが発生しやすい繰り返しのエンドポイントレベルの構成 from に移行できます。