外部ストレージとアイデンティティ
- 事前作成された顧客所有の外部バケットまたはコンテナのみを使用する。
- 公開アクセスとアカウント全体の管理を拒否する。
- Webとワーカーが必要とする最も狭い バケット/コンテナおよびプレフィックス権限で、ワークロードアイデンティティ/デフォルト資格情報チェーンを使用する。
- プラットフォームが許す範囲で、管理、プリフライト証明、実行時オブジェクト操作、 移行、および保持の責任を分離する。
- シークレットはプラットフォームのシークレットマネージャーに保管する。ソース、 ConfigMap、イメージ、シェル引数/履歴、ログ、テレメトリ、サポートバンドル、 または認定エビデンスに配置してはならない。
- TLS検証を有効のままにする。プライベートCAファイルを読み取り専用でマウントし、 オーバーラップ手順でローテーションする。
3つの用途プロファイル
quarantine: すべてのユーザー管理アップロードはここに入ります。records: スキャナー承認済みのユーザーアップロードと、狭く定義された信頼済み サーバー生成エクスポートのみがここで利用可能になります。ephemeral: 有界ライフサイクルを持つディープカナリアと短寿命データ。
マルウェアスキャンはフェイルクローズ
本番では、CLAMD_SOCKET_PATH または
CLAMD_HOST 経由の外部 clamd が必要です。リモートスキャナーTLSは CLAMD_TLS=true および
CLAMD_CA_FILE を使用します。平文のプライベートネットワーク例外は明示的なリスク
例外であり、デフォルトではありません。
CaseBenderはSHA-256を計算し、アップロードインテントを書き込み、正確なオブジェクトを
読み戻し、検証をキューに入れます。スキャナーが利用できない、タイムアウトする、
不正な出力を返す、または設定サイズをスキャンできない場合、オブジェクトは
隔離されたままです。再試行は永続的であり、枯渇するとデッドレターになります。最終的な
CLEAN 判定のみが records へのコピーを許可します。
INFECTED の結果は隔離されたままで、機密のセキュリティ監査
イベントを作成します。トラブルシューティングのためにライブマルウェアサンプルをダウンロードしてはなりません。
意図的なマルウェアサンプル
承認済みテストでは、コンテンツ信頼MALWARE_SAMPLE および
quarantineOnly でサンプルを保存できます。隔離されたままで、プロモートされず、スキャン状態は
SKIPPED です。可能な限り不活性なEICAR相当のフィクスチャを使用してください。書面による
認可、隔離された取り扱い、承認済みの保持/破棄、および
サポートチケット添付の禁止を要求します。テストを通すためにスキャンポリシーを弱めてはなりません。
整合性と正確なバージョン
- アプリケーションSHA-256、サイズ、プロバイダーチェックサム、および利用可能な場合のプロバイダー バージョン/世代を永続化する。
- アップロード、プロモーション、移行、バックアップ、および リストア後にダウンロードしたバイトを検証する。
- ETagは不透明として扱う。マルチパート/暗号化ETagはMD5ではない場合があります。
- 条件付き作成を使用して上書き競合を防ぐ。
- 保持、リーガルホールド、リストア、および移行は、浮動する最新オブジェクトではなく、 正確なオブジェクトバージョンでアドレス指定する。
storage.checksum_mismatch、期待されるオブジェクトの欠損、および確認済み 孤児に対してアラートする。
暗号化、WORM、およびリーガルホールド
TLSとプロバイダー管理のサーバーサイド暗号化を要求します。義務付けられている場合は顧客管理 キーを使用し、キーローテーション/復旧を別途検証します。 規制対象のrecords では、requireWorm: true および
STORAGE_REQUIRE_WORM=true を設定し、プロバイダーのバージョニング、オブジェクト
保持/不変性、およびリーガルホールドを適格性確認します。これらの制御がない場合、レディネスはカテゴリ
capability で失敗します。CaseBenderはデフォルトでガバナンス保持を
迂回せず、コンプライアンス保持は意図的に早期削除をブロックします。
SDK内のWORM能力は、バケット/コンテナが必要な不変設定で
作成されたことの証明にはなりません。
署名付きURLなし
CaseBenderストレージアダプターは、事前署名付きS3 URL、GCS署名付きURL、 またはAzure SAS URLを生成しません。ダウンロードは、CaseBenderの認証、 認可、テナントチェック、ライフサイクルチェック、スキャナー承認、および監査 境界を通過する必要があります。ヘルス
/api/health/liveはプロセスのみであり、外部依存はありません。/api/health/readyは設定済みプロバイダーを確認し、ephemeral上の新しいディープ 書き込み/読み取り/コピー/削除カナリアを要求します。- 応答は、サニタイズされたカテゴリのみを公開します。
configuration、authentication、tls、storage、capability、またはcanary_stale。