best-practices
ベストプラクティス
セキュリティ、信頼性、コンプライアンスを確保するための、Office 365 Customer Key 向け DuoKey の実装と管理に関するベストプラクティス。
セキュリティのベストプラクティス
キー管理のセキュリティ
1. 最小権限アクセスの実装
- 必要最小限の権限のみを付与する
- 操作ごとに別々のサービスプリンシパルを使用する
- アクセス権限を定期的に監査する
- 管理タスクにジャストインタイム(JIT)アクセスを実装する
2. 多要素認証(MFA)の有効化
Key Vault にアクセスするすべてのアカウントに MFA を要求します。
- Azure 管理者
- Key Vault 共同作成者
- セキュリティ運用チーム
- コンプライアンス監査担当者
3. キーバックアップの保護
バックアップストレージ
バックアップを暗号化された形式で保存し、別々の暗号化キーを使用し、複数の地理的場所で維持し、オフラインバックアップを安全な物理的場所に保管します。
アクセス制御
バックアップへのアクセスを認可された担当者に制限し、複数人による認可を実装し、すべてのバックアップと復元操作をログに記録し、復元手順を定期的にテストします。
監視とアラート
AuditEvent、AllMetrics、AllLogs を含む Azure Key Vault のすべての診断カテゴリを有効にします。キーアクセスの失敗や異常なアクセスパターンに対する重大なアラートを構成します。
運用のベストプラクティス
キーローテーション
ローテーションスケジュールの確立
| 環境 | 頻度 | トリガー |
|---|---|---|
| 本番キー | 毎年 | スケジュールされたローテーションポリシー |
| 高セキュリティ環境 | 四半期ごと | 強化されたセキュリティ要件 |
| セキュリティインシデント後 | 即時 | インシデント対応 |
| 人事異動時 | 30 日以内 | 従業員のオフボーディング |
ローテーション手順チェックリスト
前提条件
- 計画されたローテーションを関係者に通知する
- DuoKey MPC を使用して新しいキーを生成する
- 非本番環境で新しいキーをテストする
- 使用量の少ない期間にローテーションをスケジュールする
- 新しいキーで DEP を作成する
- 再暗号化の進行状況を監視する
- 暗号化が正常に完了したことを検証する
- 古いキーをアーカイブする(削除しない)
- ドキュメントを更新する
- ローテーション後のレビューを実施する
変更管理
DEP の作成と変更、キーローテーション、アクセスポリシーの変更、構成の更新、およびインシデント対応について変更ログを維持します。
新しい DEP の作成、キーローテーション、アクセスポリシーの変更、および Key Vault の構成変更には承認を要求します。
コンプライアンスのベストプラクティス
監査とレポート
| 頻度 | 活動 |
|---|---|
| 毎日 | キーアクセスログの確認、失敗した操作のチェック、暗号化ステータスの監視 |
| 毎週 | キー使用状況レポートの生成、アクセスパターンの確認、バックアップの整合性の検証 |
| 毎月 | 包括的なコンプライアンスレポート、ポリシーの確認と更新、アクセスレビューの実施 |
| 四半期ごと | 手順の内部監査、ディザスタリカバリのテスト、ドキュメントの更新 |
データ主権
- データ所在地要件に合致するリージョンにキーを保存する
- リージョン固有の DEP を使用したマルチジオ Office 365 を使用する
- コンプライアンスのためにキーの保存場所を文書化する
高可用性とディザスタリカバリ
高可用性の設計
冗長 Vault
異なる Azure リージョンに 2 つの Key Vault を維持します。
同期
Vault 間でキーを同期します。
自動フェイルオーバー
可能な場合は自動フェイルオーバーを構成します。
ディザスタリカバリ
| メトリクス | 目標 | テスト頻度 |
|---|---|---|
| RTO(目標復旧時間) | 4 時間 | 四半期ごと |
| RPO(目標復旧時点) | 1 時間 | 四半期ごと |
DR テストチェックリスト
前提条件
- バックアップからのキー復元をテストする
- セカンダリ Key Vault へのフェイルオーバーを検証する
- DEP の再作成を練習する
- 緊急アクセス手順をテストする
- 監視とアラートを検証する
- 得られた教訓を文書化する
- DR 手順を更新する
パフォーマンスの最適化
DEP はオフピーク時間中に割り当てます。一括割り当ては夜間または週末にスケジュールし、業務のピーク時間を避けます。割り当て中はシステムパフォーマンスを監視します。
最新の API バージョン
パフォーマンスと機能の向上のために最新の API バージョンを使用します。
再試行ロジック
レジリエンスのために指数バックオフを使用した再試行ロジックを実装します。
キャッシュ
API 呼び出しを削減するために、可能な場合はキーメタデータをキャッシュします。
負荷分散
最適なスループットのために Key Vault 間で負荷を分散します。
DuoKey MPC のベストプラクティス
MPC の構成
| 環境 | しきい値 | 割合 |
|---|---|---|
| 本番 | 5 分の 3 | 60% |
| 高セキュリティ | 7 分の 4 | 57% |
| 標準 | 3 分の 2 | 67% |
MPC ノードを異なるクラウドリージョン、データセンター、物理的場所、および管理ドメイン全体に分散します。
ノードのメンテナンス
MPC ノードソフトウェアを定期的に更新し、ノードの正常性と可用性を監視し、ノードのフェイルオーバー手順をテストし、予備ノードを維持します。
キーシェアの管理
シェアを別々の安全な場所に保存し、複数人による管理を実装し、シェアの整合性を定期的に検証し、再構築手順をテストします。
コストの最適化
ライセンスに関する考慮事項
| コンポーネント | 要件 |
|---|---|
| Office 365 | Customer Key には E5 が必要 |
| Azure | Key Vault のサブスクリプションコスト |
| DuoKey | 使用量に基づくライセンス |
| 成長 | ユーザー数の増加を計画する |
- 保持期間後に未使用のキーを削除する
- 適切な場合は Key Vault を統合する
- 適切な SKU を使用する(HSM バックアップキーには Premium)
- 不要な操作を避けるためにトランザクションレートを監視する
トレーニングと啓発
スタッフのトレーニング
前提条件
- Customer Key の概念
- キー管理手順
- セキュリティのベストプラクティス
- インシデント対応
- コンプライアンス要件
- ツールの使用(PowerShell、Azure Portal、DuoKey)
トレーニングスケジュール
| トレーニングの種類 | 頻度 |
|---|---|
| 初期トレーニング | 実装前 |
| 再トレーニング | 四半期ごと |
| 緊急手順 | 半年ごと |
| 新機能 | リリース時 |
| コンプライアンスの更新 | 必要に応じて |
コンプライアンスフレームワーク
- データ処理記録を維持する
- 設計段階からのデータ保護を実装する
- データポータビリティを有効にする
- 消去権をサポートする
- 国境を越えた転送を文書化する