セキュリティ憲章
ミッション
Keycloakセキュリティタスクフォースは、ドキュメント、コード、およびプロセスの継続的な改善を通じて、Keycloakプロジェクトのセキュリティ強化に尽力しています。私たちの主な責任は以下のとおりです。
- プロアクティブなトリアージ:Keycloakに報告されたセキュリティ脆弱性に迅速に対処し、それらが迅速かつ一貫して解決されるようにすること。
- 影響評価:新規および既存の機能のセキュリティ上の影響を評価すること。
- プロセス改善:コードベース内で継続的な改善を確実にするために、セキュリティプロセスを定期的に見直し、洗練すること。
チーム
Keycloakセキュリティ対応チーム
新しい問題をトリアージし、解決チームと連携することに積極的に関与するメンテナナーの専門サブセット。対応チームは、プロジェクトに報告されたすべてのCVEへのフルアクセス権を持ち、必要に応じて解決チームのメンバーを追加または削除できます。
メンバー推薦プロセス
- 新しいメンバーは、既存のメンテナナーおよびKeycloakセキュリティ対応チームのメンバーによって推薦される場合があります。両方のチームのメンバーが承認プロセスで投票権を持ち、承認には3分の2以上の賛成が必要です。
- すべての推薦は、Keycloakセキュリティメーリングリストに送信する必要があります。
- メンバーはいつでも辞任でき、辞任する際に後任を推薦できます。
責任
- 積極的に活動し、対応し、日々の活動に参加すること。
- 休職する場合は連絡すること。
- 毎週持ち回りのシフトに参加すること。
- 事前の通知なしに3ヶ月以上非アクティブであるか、責任を果たしていないメンバーは、投票によって削除されます。
スコープ
- 脆弱性トリアージ:Keycloakセキュリティメーリングリスト経由で受信したレポートを管理すること。
- 連携:報告された脆弱性への対応を監督し、SLA期限を遵守させること。
- プロセス改善:リンター、スキャナー、ファザー、パッチマネージャーの実装など、セキュリティ対策を維持および強化すること。プロジェクト全体を通してセキュリティがプロアクティブに統合されるようにすること。
持ち回りシフト
- チームメンバーは、週単位で主要な連絡担当者を持ち回りで担当します。
- シフト担当者は、受信したセキュリティリクエストを処理し、インシデントへの対応を調整し、シフト中の日々のセキュリティタスクを管理します。
- 他のチームメンバーは、シフト担当者をサポートしながら、セキュリティ対応業務を継続します。
- Keycloakセキュリティオフィスの週次会議時間がシフトの終了を決定し、次のシフト担当者に状況が更新されます。
- 休暇およびPTOは会議中に伝えられ、シフトを調整できます。
Keycloakセキュリティ解決チーム
チームは、修正を調整する常任メンバーと、未解決のCVEを積極的にトリアージまたは解決する一時メンバーで構成されています。一時メンバーは、脆弱性に関与したときに追加され、関与が終了すると削除されます。この構成により、経験豊富なコーディネーターが解決プロセスを監督しながら、必要なときに適切な人材を投入できます。
スコープ
- 解決とテスト:脆弱性が効果的に修正され、十分にテストされるようにすること。
- コラボレーション:対応チームと協力して、チームのバックログにある他のすべての項目よりも優先して修正を優先すること(性質に関係なく)。
- リリース連携:リリースコーディネーターおよび品質エンジニアリング(QE)チームと緊密に連携して、今後のリリースにパッチを含めること。
アクセス
セキュリティ脆弱性修正の調整
- 特定:対応チームは、影響を受ける領域から関連するエンジニアを特定し、一時的な解決チームを編成して、プライベートなコミュニケーションチャネル(リポジトリ、メールスレッドなど)に一時的に含めます。
- 効率:偶発的な開示を防ぐために、解決チームは可能な限り小さく保たれます。
- 自律性:解決チームは、リリースコーディネーター、QE、ドキュメントチームなどの追加の当事者を関与させる自律性を持っています。疑問がある場合は、対応チームとのコミュニケーションが推奨されます。
- アクセス取り消し:リリース後、最小権限の原則を維持するために、機密性の高いコミュニケーションチャネルへのアクセスは取り消されます。
プロセス概要
- 新しい脆弱性がKeycloakセキュリティメーリングリストに報告されます。
- 脆弱性レポートがトリアージされます。
- CVE IDが割り当てられます。
- 対応チームが責任グループ(例:メンバーがノアとエマのチームA)を特定します。
- チームAは、プライベートリポジトリに修正を提出し、レビューのためにドメインエキスパートを含めます。
- チームAは、QEおよびリリースコーディネーターに今後のパッチについて通知します。
- プルリクエストがマージされ、公式アドバイザリとともに新しいリリースが発行されます。
修正するCVEがない場合、すべてのチームメンバーは、Keycloakセキュリティ対応チームを除いて、セキュリティ機密性の高いチャネルへのアクセスを取り消されます。
この憲章は、Keycloakプロジェクトがセキュリティ脆弱性を管理および軽減するために取るアプローチを概説し、すべてのユーザーに対するプロジェクトの整合性と信頼性を保証します。