
M365 テナントの状態を CISA のベースラインに照らして評価する自動化

[![GitHub Release][github-release-img]][release] [![PSGallery Release][psgallery-release-img]][psgallery] [![CI Pipeline][ci-pipeline-img]][ci-pipeline] [![Functional Tests][functional-test-img]][functional-test] [![GitHub License][github-license-img]][license] [![GitHub Downloads][github-downloads-img]][release] [![PSGallery Downloads][psgallery-downloads-img]][psgallery] [![GitHub Issues][github-issues-img]][github-issues]
ScubaGear は、Microsoft 365 (M365) テナントの構成が、Secure Cloud Business Applications (SCuBA) のセキュア構成ベースラインドキュメントに記載されたポリシーに準拠しているかを検証する評価ツールです。
[!NOTE] このドキュメントは GitHub Pages を使用して閲覧できます。
ScubaGear は、自身のテナント環境を CISA セキュア構成ベースラインに照らして評価したい M365 管理者向けのツールです。
ScubaGear は 3 段階のプロセスを使用します。

SCuBA コントロールは、NIST SP 800-53 と MITRE ATT&CK フレームワークの両方にマッピングされています。
SCuBA には、YAML 構成ファイルの作成と管理がこれまで以上に簡単になるグラフィカルユーザーインターフェースが追加されました。この直感的なツールは、手動編集の複雑さを軽減し、組織の構成プロセスを効率化します。 詳細については、構成 UI のドキュメントを参照してください。
Start-ScubaConfigApp で起動コマンドラインツールよりもビジュアルインターフェースを好むユーザーに最適です。
ScubaGear を起動する前に、環境が適切に構成されていることを確認することが重要です。これには、必要な依存関係とアクセス許可が整っていることが含まれます。
システムがすべての要件を満たしていることを確認するために、前提条件セクションを確認してください。これにより、実行中のエラーを回避し、ScubaGearを使用する際にスムーズな体験を確保できます。
[!NOTE] 環境にScubaGearをインストールした後、最新バージョンに更新する必要がある場合は、組み込みの更新機能および機能を使用することをお勧めします。詳細については、更新ガイドを参照してください。
ScubaGearは、ベースライン設定を適切に評価するために複数回実行できます。
初回実行(構成ファイルなし): 構成ファイルなしでScubaGearを起動します。この初回実行では、環境の現在の設定のベースラインテンプレートが生成されます。変更は行いませんが、デフォルトの態勢を理解するのに役立ちます。
以降の実行(構成ファイルあり): 生成された構成ファイルを確認および編集した後、構成ファイルを入力としてScubaGearを再度実行します。これにより、ScubaGearは意図した設定を実際の環境と比較し、それに応じて相違点を浮き彫りにできます。
[!IMPORTANT] ScubaGearには特定の前提条件があり、Microsoft 365テナントを適切に評価するために定義された構成値に依存しています。初回の評価実行後、結果を徹底的に確認してください。特定されたギャップに対処するには、テナント構成を更新するか、除外、注釈、または省略を使用してYAML構成ファイルにリスク受容を文書化します。 詳細なガイダンスについては、以下のセクションを参照してください。
この反復的なアプローチにより、ScubaGearが環境に適合し、すべてのポリシー評価がカスタマイズされたベースラインに基づいていることが保証されます。
PSGalleryからScubaGearをインストールするには、WindowsコンピューターでPowerShell 5ターミナルを開き、モジュールをインストールします:
# Install ScubaGear
Install-Module -Name ScubaGear
# Install the minimum required dependencies
Install-ScubaDependencies
# Check the version
Invoke-SCuBA -Version
[!IMPORTANT] gcc や gcchigh などの非商用テナントに対して、対話型ログインを使用して v2.0.0 を実行している場合は、-M365Environment パラメーターを含めてください。将来のリリースでは ScubaGear が M365 環境を自動検出するため、この指定は不要になります。
# Assess all products (basic command)
Invoke-SCuBA -ProductNames *
ScubaGear は、環境をどのように評価するかを定義するために YAML 構成ファイルを使用します。このファイルには、いくつかの重要な目的があります:
[!IMPORTANT] 適切に定義された YAML ファイルがない場合、ScubaGear は組織の実際のポリシーやリスク態勢を反映していない可能性がある既定の構成を想定します。CISA の拘束力のある運用指令 (BOD) 25-01 の用途で使用する場合は必須です。
[!TIP] 開始の助けとなるよう、full_config.yaml が含まれています。このファイルは、ScubaGear モジュールで使用する前に、テナント固有の構成を反映するようにカスタマイズする必要があります。
BOD 25-01 の提出のために Invoke-SCuBA を実行する場合:
# Run with a configuration file
Invoke-SCuBA -ConfigFilePath "path/to/your/config.yaml" -Organization 'example.onmicrosoft.com'
その他すべてのインスタンスの場合:
# Run with a configuration file (no-BOD)
Invoke-SCuBA -ConfigFilePath "path/to/your/config.yaml" -SilenceBODWarnings
以下により ScubaGear が更新されます。
# The following will update ScubaGear to the latest version
Update-ScubaGear
以下はすべての ScubaGear 依存関係をベースライン化します。実行する前に Update Guide を詳しく確認してください。
# The follwing will remove and re-install all ScubaGear dependencies
Reset-ScubaGearDependencies