Ctrl K
ComunidadGuías…

SECURITY.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# セキュリティポリシー (Security Policy)

Tollgate はセキュリティと堅牢性を最優先に設計されています。本ドキュメントでは、サポート対象バージョンおよび脆弱性の報告手順について説明します。

---

## サポート対象バージョン

最新のマイナーバージョンおよびパッチバージョンに対してセキュリティアップデートを提供します。

| バージョン | サポート状況 |
|:---|:---:|
| 1.x.x (最新) | :white_check_mark: サポート対象 |
| < 1.0.0 | :x: サポート終了 |

---

## 脆弱性の報告手順

Tollgate でセキュリティ上の脆弱性や懸念を発見した場合は、**公開の GitHub Issue や Pull Request を作成せず**、以下の手順で非公開にてご報告ください。

1. **報告先**:
   - [GitHub Security Advisories (非公開報告)](https://github.com/kanmon-hq/tollgate/security/advisories/new) を通じてご連絡ください。
   - またはメンテナー宛のメールアドレスにご連絡ください。

2. **報告に含めていただきたい情報**:
   - 脆弱性の概要および影響を受けるコンポーネント(例: 認証ヘッダー検証、レートリミット、DB 永続化層等)
   - 再現手順(PoC、リクエスト例、設定ファイルの再現例など)
   - 想定される影響範囲(なりすまし、認可バイパス、DoS 等)
   - 可能であれば修正案や緩和策

3. **対応プロセス**:
   - 報告を受信後、通常 **48 時間以内** に受領確認と初期評価のご連絡を行います。
   - 脆弱性の再現・修正パッチの開発・テストを非公開で行います。
   - 修正が完了次第、パッチバージョンをリリースし、セキュリティアドバイザリを公開します。

---

## Tollgate のセキュリティ設計方針

Tollgate では以下の原則に基づき安全なデフォルト動作(Secure-by-Default / Fail-Fast)を徹底しています:

1. **API キーの平文非保存**:
   - 永続化層(DynamoDB, Azure Cosmos DB, Google Cloud Firestore, SQLite)には SHA-256 ハッシュダイジェストのみを保存し、平文キーは一切保持しません。
2. **フォールバックシークレットの排除 (Fail-Fast)**:
   - マスター管理者キー(`ADMIN_API_KEY`)などの認証情報は、コード内に既知のデフォルト値をフォールバックとしてハードコードしていません。未設定時は安全のため起動時または検証時に即座に拒絶されます。
3. **コンテキスト競合の即時遮断 (Strict Validation)**:
   - クライアント指定の `X-Tenant-ID` / `X-Service-ID` と、API キーの属性値に不一致(コンフリクト)がある場合、暗黙的に上書きして処理を継続せず、`403 Forbidden` で即座にリクエストを拒絶します。