セキュリティ アーキテクチャ: プライベート データの保護 (7.8.’26 13:22 Fri)¶
「service_api.py」のソース コードは、プライベート データを保護するための 3 層の相互に独立したセキュリティ アーキテクチャを実装しています。
## 概要
レイヤー |
メカニズム |
コンポーネント |
保護目標 |
|---|---|---|---|
1 |
アンダースコアルールミドルウェア |
|
隠しパスへのアクセスをブロックする |
2 |
API キー認証 |
|
エンドポイントのアクセス制御 |
3 |
プライバシー マスキングとキャッシュの分離 |
|
データ難読化とキャッシュ分離 |
レイヤ 1: アンダースコア ルール ミドルウェア¶
先頭にアンダースコアが付いているパスまたはフォルダー (「_privat」 など) へのリクエストは、ミドルウェアによって HTTP 403 Forbidden でハードブロックされます。
エラーメッセージ:
Access to hidden folders (starting with '_') is forbidden.
このルールはパス/ルーティング レベルで動作し、プライベートとしてマークされたディレクトリへのアクセスを防ぎます。
レイヤ 2: API キー認証¶
すべての API エンドポイントは「Depends(verify_api_key)」によって保護されます。
有効な「X-API-Key」ヘッダーのないリクエストは、ビジネス ロジックに到達する前に直ちに拒否されます。
レイヤ 3: プライバシー マスキングとキャッシュの分離¶
マスキング¶
API を使用すると、「unmasked = False」がデフォルトになります。したがって、API 応答内の機密データは自動的にマスクされます。
キャッシュの分離¶
「aura_cache.py」の「cache_id」ハッシュは、アクティブなウィンドウのタイトル (「_active_window_title」) で区切られています。
結果: ローカル端末で作成されたキャッシュ エントリは、異なる cache_id ハッシュを持っているため、API 経由で読み取ることができません。
## まとめ
したがって、「_privat」内の機密データは、3 つの言語およびパス レベルすべてで、不正な API アクセスから保護されます。
パス レベル —
_フォルダーへのアクセスはブロックされます認証レベル — 有効な API キーのみにアクセスが許可されます
データ レベル — マスキングとキャッシュ分離によりデータの漏洩を防止します