セキュリティチェックシート回答例
セキュリティチェックシートでよく問われる項目への、セルフホスト構成での回答例です。回答は構成と設定によって変わります。環境に合わせて修正してください。監査ログ、SSO、ロール管理にはライセンスが必要です。
認証
| 質問 | 回答例 |
|---|---|
| 利用者の認証方式は | ビルトイン認証 (ID とパスワード)、OIDC、リバースプロキシによる認証、Basic 認証から選択できます。 |
| シングルサインオンに対応しているか | OIDC とプロキシ認証に対応しています。ライセンスが必要です。 |
| 多要素認証に対応しているか | Dagu 自体にはありません。OIDC で接続する ID 基盤側で実施します。 |
| パスワードの保存方法は | bcrypt でハッシュ化して保存します。 |
| パスワードの最小文字数は | 8 文字です。 |
| ログイン試行の制限はあるか | 同じ IP アドレスからの失敗が 15 分間に 5 回に達すると制限します。 |
| セッションの有効期限は | JWT の有効期限を auth.builtin.token.ttl で設定できます。 |
| API キーの保存方法は | ハッシュ化して保存します。全体の値を表示するのは作成時の 1 回のみです。 |
権限管理
| 質問 | 回答例 |
|---|---|
| ロールによる権限管理はあるか | admin、manager、developer、operator、viewer の 5 ロールがあります。ライセンスが必要です。 |
| 権限の単位は | サーバー全体、またはワークスペース単位です。ジョブ単位の制御はありません。 |
| ジョブのコマンドはどの権限で動くか | Dagu を動かす OS ユーザーの権限で動きます。専用の OS ユーザーを作成し、DAG を編集できる人を限定します。 |
| Web 上のターミナル機能はあるか | あります。既定では無効です。有効にした場合の操作は監査ログに記録されます。 |
監査
| 質問 | 回答例 |
|---|---|
| 操作ログは取得できるか | ログイン、パスワード変更、ユーザー管理、API キー、Webhook、シークレット、ターミナル操作を記録します。ライセンスが必要です。 |
| ログの保持期間は | 既定は 7 日で、audit.retention_days で変更できます。0 にすると無期限です。〈本環境では ○ 日に設定〉 |
| 外部のログ基盤へ転送できるか | 組み込みの転送機能はありません。監査ログは日別の JSON Lines ファイル (logs/admin/audit/YYYY-MM-DD.jsonl) のため、ログ転送エージェントで転送します。 |
| ログの改ざん防止策は | Dagu としての機能はありません。ログ基盤へ転送して保護します。 |
通信
| 質問 | 回答例 |
|---|---|
| Web UI・API の通信は暗号化できるか | HTTPS に対応しています。最低バージョンは TLS 1.2 です。リバースプロキシで終端することもできます。 |
| サーバーとワーカー間の通信は | gRPC で通信し、TLS または mTLS を設定できます。最低バージョンは TLS 1.2 です。 |
| 接続元を制限できるか | ip_access.allowed_ips で IP アドレスと CIDR を指定できます。 |
| 既定の待ち受けアドレスは | 127.0.0.1 です。外部に公開するには明示的に設定します。 |
データ
| 質問 | 回答例 |
|---|---|
| データの保存場所は | すべて利用者が管理するサーバーのファイルに保存します。 |
| シークレットの保護は | AES-GCM で暗号化して保存します。鍵は data/auth/encryption_key または環境変数 DAGU_ENCRYPTION_KEY で管理します。 |
| ジョブのログや成果物は暗号化されるか | 平文のファイルです。ディスク暗号化などで保護します。 |
| データの削除は | 実行履歴は hist_retention_days で自動削除でき、dagu cleanup で手動削除もできます。 |
外部通信
| 質問 | 回答例 |
|---|---|
| ジョブの実行に外部通信は必要か | 不要です。閉域網で動作します。 |
| 外部へ送信される情報はあるか | Dagu Console に接続した場合のみ、ライセンスのチェックインと、選択した水準の監視情報を送信します。詳細はセキュリティとデータの流れを参照してください。〈本環境では閉域網のため送信なし〉 |
| 利用状況のテレメトリはあるか | 製品のバイナリから Dagu 運営へ送信するものはありません。トレースは利用者が設定した OpenTelemetry コレクターにのみ送信します。 |
脆弱性と供給網
| 質問 | 回答例 |
|---|---|
| 脆弱性の報告窓口は | セキュリティポリシーに定めています。報告には 5 営業日以内に受領の連絡をします。 |
| 修正の提供範囲は | 最新の安定版のみです。 |
| ダウンロードの正当性を確認できるか | チェックサムとビルド来歴 (GitHub attestation) で確認できます。手順を公開しています。 |
| コンテナイメージの署名はあるか | ありません。ダイジェストで固定して利用します。 |
| SBOM は提供しているか | 提供していません。Syft や Trivy で生成できます。 |
| コンテナイメージの脆弱性スキャンは | プロジェクト側で、イメージの関連変更時と毎週、Trivy でスキャンしています。 |
| 第三者認証は取得しているか | 公開している第三者認証はありません。 |
| ソースコードは確認できるか | GPLv3 で公開しています。 https://github.com/dagucloud/dagu |
可用性とバックアップ
| 質問 | 回答例 |
|---|---|
| 冗長化できるか | スケジューラのアクティブ/スタンバイ構成に対応します。共有ストレージが必要です。 |
| バックアップ方法は | ファイルのコピー、またはボリュームのスナップショットです。 |
| 暗号鍵のバックアップは | data/auth/ に含まれるため、バックアップ自体を鍵と同じ水準で保管します。 |

