アマゾン ウェブ サービスの IaaS アプリケーションにゼロ トラスト原則を適用する
Note
今後の Livestream この記事についてディスカッションを行いますので、Azure FastTrack チームにご参加ください。 2024 年 10 月 16 日 | 午前 10:00 - 午前 11:30 (UTC-07:00) アメリカ太平洋時間 (米国、カナダ) こちらからご登録ください。
この記事では、アマゾン ウェブ サービス (AWS) の IaaS アプリケーションにゼロ トラスト原則を適用する手順について説明します:
ゼロ トラストの原則 | 定義 | 以下により適合 |
---|---|---|
明示的に検証する | 常に利用可能なすべてのデータポイントに基づいて認証および承認してください。 | DevOps (DevSecOps) のセキュリティ。GitHub Advanced Securityと DevOps を使用して、インフラストラクチャをCodeとしてスキャンしてセキュリティで保護します。 |
最小限の特権アクセスを使用する | ジャスト・イン・タイムおよびジャスト・エナフ・アクセス(JIT/JEA)、リスクベースのアダプティブ・ポリシー、データ保護により、ユーザー・アクセスを制限します。 |
|
侵害を前提とする | 影響範囲を最小限に抑えるために、アクセスをセグメント化します。 エンドツーエンドの暗号化を検証し、分析を使用して可視性を得て、脅威検出を促進し、防御を強化します。 |
|
Azure IaaS 環境全体でゼロ トラストの原則を適用する方法の詳細については、「Azure IaaS にゼロ トラスト原則を適用する」の概要を参照してください。
AWS と AWS のコンポーネント
AWS は、Microsoft Azure、Google Cloud Platform などと共に市場で利用できるパブリック クラウド プロバイダーの 1 つです。 企業では、一つのクラウド プロバイダーより複数のクラウド プロバイダーで構成されるマルチクラウド アーキテクチャを使用するのが一般的です。 この記事では、次のマルチクラウド アーキテクチャに焦点を当てます:
- Azure と AWS は、ワークロードと IT ビジネス ソリューションを実行するために統合されています。
- マイクロソフト 製品を使用して AWS IaaS ワークロードをセキュリティで保護します。
Amazon Elastic Compute Cloud (Amazon EC2) と呼ばれる AWS 仮想マシンは、Amazon Virtual Private Cloud (Amazon VPC) と呼ばれる AWS 仮想ネットワーク上で実行されます。 ユーザーとクラウド管理者は、AWS 環境で Amazon VPC を設定し、Amazon EC2 仮想マシンを追加します。
AWS CloudTrail は、AWS 環境で AWS アカウントアクティビティをログに記録します。 Amazon EC2、Amazon VPC、AWS CloudTrail は、AWS 環境で一般的です。 これらのサービスからログを収集することは、AWS 環境で何が起こっているのか、攻撃を回避または軽減するために実行するアクションを解釈するために不可欠です。
Amazon GuardDuty は、AWS 環境で悪意のあるアクティビティや未承認のビヘイビアーを監視することで、AWS ワークロードを保護するのに役立つ脅威検出サービスです。
この記事では、これらの AWS リソースとサービスの監視とログ記録を Azure の監視ソリューションと Microsoft Security スタックと統合する方法について説明します。
参照アーキテクチャ
次のアーキテクチャダイアグラムは、AWS 環境で IaaS ワークロードを実行するために必要な一般的なサービスとリソースを示しています。 このダイアグラムには、AWS 環境から Azure にログとデータを取り込み、脅威の監視と保護を提供するために必要な Azure サービスも示されています。
このダイアグラムは、AWS 環境内の次のリソースとサービスに対する Azure へのログの取り込みを示しています:
- Amazon Elastic Compute Cloud (Amazon EC2)
- Amazon Virtual Private Cloud (Amazon VPC)
- アマゾン ウェブ サービス CloudTrail (AWS) CloudTrail
- Amazon GuardDuty
AWS 環境のリソースとサービスのログを Azure に取り込むには、Amazon Simple Storage Service (Amazon S3) と Amazon Simple Queue Service (SQS) が定義されている必要があります。
ログとデータは、Azure Monitor の ログ分析 に取り込まれます。
次の マイクロソフト 製品では、取り込まれたデータを使用して監視します:
- Microsoft Defender for Cloud
- Microsoft Sentinel
- Microsoft Defender for Endpoint
Note
AWS のリソースとサービスを監視するために、一覧表示されているすべての マイクロソフト 製品にログを取り込む必要はありません。 ただし、すべての マイクロソフト 製品を一緒に使用すると、AZURE への AWS ログとデータインジェストのベネフィットが大きくなります。
この記事では、アーキテクチャダイアグラムに従い、次の方法について説明します:
- AWS リソースからログを取り込むための マイクロソフト 製品をインストールして構成します。
- 監視するセキュリティ データのメトリックを構成します。
- 全体的なセキュリティ態勢を改善し、AWS ワークロードをセキュリティで保護します。
- Codeとしてのインフラストラクチャをセキュリティで保護します。
手順 1: マイクロソフト 製品をインストールして接続し、ログとデータを取り込む
このセクションでは、参照されるアーキテクチャの マイクロソフト 製品をインストールして接続し、AWS と Amazon のサービスとリソースからログを取り込む方法について説明します。 ゼロ トラストの検証の明示的な原則に従うには、マイクロソフト 製品をインストールし、AWS 環境に接続して攻撃前に予防的なアクションを実行する必要があります。
手順 | タスク |
---|---|
A | Azure Connected Machine Agentを Amazon Elastic Compute Cloud (Amazon EC2) 仮想マシンにインストールして、オペレーティング システムのデータとログを Azure に取り込みます。 |
B | Azure Monitor エージェントを Amazon EC2 仮想マシンにインストールして、Log Analytics ワークスペースにログを送信します。 |
C | AWS アカウントを Microsoft Defender for Cloud に接続する。 |
D | Microsoft Sentinel を AWS に接続して、AWS ログ データを取り込みます。 |
E | AWS コネクタを使用して、AWS サービス ログを Microsoft Sentinel にプルします。 |
A. Azure Connected Machine Agentを Amazon EC2仮想マシンにインストールして、オペレーティング システムのデータとログを Azure に取り込みます
Azure Arc 対応サーバー を使用すると、Azure の 外部、企業向けネットワーク上、または他のクラウド プロバイダー上でホストされている Windows や Linux の物理サーバーと仮想マシンを管理できます。 Azure Arc の目的のために、Azure の外にホストされているこれらのマシンはハイブリッド マシンと見なされています。 Azure にAmazon EC2 仮想マシン(ハイブリットマシンとして知られている)を接続するには、Azure Connected Machine Agentを各マシンにインストールします。
詳細については、「規模に応じてハイブリッド マシンを Azure に接続する」を参照してください。
B. Azure Monitor エージェントを Amazon EC2 仮想マシンにインストールして Log Analytics ワークスペースにログを送信する
Azure Monitor では、Azure や AWS などの他のクラウドで実行されているリソースとアプリケーションを完全に監視できます。 Azure Monitor は、クラウドおよびオンプレミス環境からテレメトリを収集、分析して、対処します。 Azure Monitor の VM 分析情報 は、Azure Arc 対応サーバーを使用して、Azure 仮想マシンと Amazon EC2 仮想マシンの間で一貫した環境を提供します。 Amazon EC2 仮想マシンは、Azure 仮想マシンと共に表示できます。 同じメソッドで Amazon EC2 仮想マシンをオンボードできます。 これには、Azure Policy などの標準的な Azure コンストラクトの使用や、タグの適用が含まれます。
マシンの VM 分析情報を有効にすると、 Azure Monitor エージェント (AMA) がインストールされます。 AMA によって、 Amazon EC2 仮想マシンから監視データが収集され、それがAzure Monitor に配信されます。このデータは、さまざまな機能、分析情報、Microsoft Sentinel や Microsoft Defender for Cloud などのサービスで使用されます。
重要
ログ分析 は、Azure portal のツールであり、Azure Monitor Logs ストア内のデータに対するログ クエリの編集と実行に使用します。 ログ分析 が自動的にインストールされます。
Amazon EC2 仮想マシンには、レガシ ログ分析 エージェントがインストールされている可能性があります。 このエージェントは、2024 年 9 月に非推奨になります。 マイクロソフト では、新しい Azure Monitor エージェントをインストールすることをおすすめします。
次のことを行うには、Windows および Linux 向けの ログ分析 エージェントまたは Azure Monitor エージェント が必要です:
- マシン上で実行されている オペレーティング システム とワークロードを予防的に監視する。
- Automation Runbook、または Update Management などのソリューションを使用して、マシンを管理する。
- Microsoft Defender for Cloud などの他の Azure サービスを使用する。
ログとデータを収集すると、情報はLog Analytics ワークスペースに保存されます。 サブスクリプションの Azure リソースからデータを収集するには、Log Analytics ワークスペースが必要です。
Azure Monitor ブックは、Azure portal で使用できる視覚化ツールです。 ブックは、テキスト、ログ クエリ、メトリック、パラメーターを組み合わせて、内容豊富な対話型レポートを作成します。 ブックを設定すると、分析を使用してゼロ トラスト違反を想定した原則に準拠するのに役立ちます。
ブックについては、次の記事の「Amazon Virtual Private Cloud (Amazon VPC)、AWS CloudTrail、Amazon GuardDuty からの Microsoft Sentinel ログの監視」で説明されています。
詳細については、以下を参照してください:
C: AWS アカウントを Microsoft Defender for Cloud に接続する
Microsoft Defender for Cloud とは、Azure、オンプレミス、マルチクラウド リソース、AWSを含むすべてのクラウド セキュリティ態勢管理 (CSPM) と クラウド ワークロード保護プラットフォーム (CWPP) です。 Defender for Cloud は、クラウドおよびオンプレミスでリソースとワークロードのセキュリティを管理する際の 3 つの重要なニーズを満たします。
- 継続的な評価 – セキュリティ態勢を把握します。 脆弱性を特定して追跡します。
- セキュリティ保護 - マMicrosoft Cloud セキュリティ ベンチマーク (MCSB) と AWS Foundational Security Best Practices 標準でリソースとサービスを強化します。
- 防御 - これらのリソースとサービスに対する脅威を検出して解決します。
Microsoft Defender for Servers は、Microsoft Defender for Cloud によって提供される有料プランの 1 つです。 Defender for Servers は、Azure、AWS、Google Cloud Platformとオンプレミスで実行されている Windows および Linux マシンに保護を拡張します。 Defender for Servers は、エンドポイントでの検出と応答 (EDR) およびその他の脅威保護機能を提供するために、Microsoft Defender for Endpoint と統合されています。
詳細については、以下を参照してください:
- AWS アカウントを Microsoft Defender for Cloud に接続してAWSリソースを保護する。
- Microsoft Defender for Cloud で Defender for Servers プランを選択して、Defender for Servers によって提供されるさまざまなプランを比較します。 Defender for Servers により、Defender for Cloud に接続されているサポート対象のすべてのマシンで、Defender for Endpoint センサーが自動的にプロビジョニングされます。
Note
サーバーに AMA をまだ配置していない場合は、Defender for Servers を有効にするときに、サーバーに Azure Monitor エージェントを配置できます。
D. Microsoft Sentinel をAWSに接続し、AWS サービス ログ データを取り込む
Microsoft Sentinel は、次のサービスを提供するスケーラブルなクラウドネイティブ ソリューションです:
- セキュリティ情報およびイベント管理 (SIEM)
- セキュリティ オーケストレーション、オートメーション、応答 (SOAR)
Microsoft Sentinel は、セキュリティ分析と脅威インテリジェンスを企業全体に提供します。 Microsoft Sentinel を使用すると、攻撃の検出、脅威の可視化、予防的ハンティング、脅威への対応のための単一ソリューションが得られます。
セットアップ手順については、「Microsoft Sentinel のオンボード」を参照してください。
E. AWS コネクタを使用して、AWS サービス ログを Microsoft Sentinel にプルします
AWS サービスログを Microsoft Sentinel にプルするには、Microsoft Sentinel AWS コネクタを使用する必要があります。 そのコネクタは、Microsoft Sentinel に AWS リソース ログへのアクセスを許可することで機能します。 コネクタを設定すると、AWSとMicrosoft Sentinel との信頼関係が確立されます。 Microsoft Sentinel にアクセス許可を付与する役割を AWS で作成し、AWS ログにアクセスできるようにします。
AWSコネクタは、以下のバージョンの、CloudTrail 管理とデータ ログ用のAmazon S3 バケットとレガシ コネクタからプルしてログを取り込む、新しいAmazon Simple Storage Service (Amazon S3) コネクタの 2 つのバージョンで使用できます。 Amazon S3 コネクタは、Amazon Virtual Private Cloud (Amazon VPC)、AWS CloudTrail、Amazon GuardDuty からログを取り込むことができます。 Amazon S3 コネクタはプレビュー段階です。 Amazon S3 コネクタを使用することをおすすめします。
Amazon S3 コネクタを使用して Amazon VPC、AWS CloudTrail、Amazon GuardDuty からログを取り込むには、「Microsoft Sentinel を AWS に接続する」を参照してください。
Note
マイクロソフト では、自動セットアップ スクリプトを使用してAmazon S3 コネクタを配置するのをおすすめします。 各手順を手動で実行する場合は、手動セットアップに従って Microsoft Sentinel を AWS に接続します。
手順 2: セキュリティ データのメトリックを構成する
Azure が AWS リソースからログを取り込むようになったので、環境内に脅威検出ルールを作成し、アラートを監視できます。 この記事では、ログとデータを収集し、疑わしいアクティビティを監視する手順について説明します。 ゼロ トラストは違反を前提として、環境で脅威と脆弱性を監視することで、原則が実現します。
手順 | タスク |
---|---|
A | Azure Monitor で Amazon Elastic Compute Cloud (Amazon EC2) ログを収集します。 |
B | Amazon EC2 の Microsoft Defender for Cloud セキュリティアラートと推奨事項を表示および管理します。 |
C | Microsoft Defender for Endpoint を Defender for Cloud Apps と統合する。 |
D | Microsoft Sentinel で Amazon EC2 データを監視します。 |
E | Amazon Virtual Private Cloud (Amazon VPC)、AWS CloudTrail、Amazon GuardDuty から Microsoft Sentinel ログを監視します。 |
F | Microsoft Sentinel の組み込み検出ルールを使用して、環境内の脅威検出ルールを作成および調査します。 |
A. Azure Monitor で Amazon Elastic Compute Cloud (Amazon EC2) ログを収集する
Amazon EC2 VM にインストールされている Azure Connected Machine Agentを使用すると、AWS リソースを Azure リソースであるかのように監視できます。 たとえば、Azure ポリシーを使用して、Amazon EC2 VM の更新を管理および管理できます。
Amazon EC2 VM にインストールされている Azure Monitor エージェント (AMA) は、監視データを収集して Azure Monitor に配信します。 これらのログは、Microsoft Sentinel と Defender for Cloud の入力になります。
Amazon EC2 VM からログを収集するには、データコレクションルールの作成に関するセクションを参照してください。
B. Amazon EC2 の Microsoft Defender for Cloud セキュリティアラートと推奨事項を表示および管理する
Microsoft Defender for Cloud がリソースログを使用して、セキュリティ アラートと推奨事項を生成します。 Defender for Cloud では、Amazon EC2 VM で発生する可能性のある脅威について警告するアラートを提供できます。 アラートは重大度によって優先度付けが行われます。 各アラートには、影響を受けるリソース、問題、修復に関する推奨事項の詳細が表示されます。
Azure portal の推奨事項を一覧表示するには、2 つの方法があります。 Defender for Cloud の概要ページで、改善する環境の 推奨事項の表示 を選びます。 Defender for Cloud アセットインベントリ ページでは、影響を受けるリソースに従って推奨事項が表示されます。
Amazon EC2 のアラートと推奨事項を表示および管理するには:
- Defender for Cloud で使用できるアラートのさまざまな種類と、アラートに対応する方法について説明します。
- Defender for Cloud からの推奨事項を実装して、セキュリティ態勢を改善します。
- Defender for Cloud のアセットインベントリ ページにアクセスする方法について説明します。
Note
Microsoft Cloud セキュリティ ベンチマーク (MCSB) には、単一またはマルチクラウド環境でのクラウド サービスのセキュリティによる保護に使用できる、セキュリティに関する影響の大きい推奨事項のコレクションが含まれています。 マイクロソフト では、セキュリティ ベンチマークの使用がクラウド 展開の迅速なセキュリティ保護に役立つことがわかっています。 MCSBに関して解説します。
C: Microsoft Defender for Endpoint を Defender for Cloud Apps と統合する
Defender for Cloud の統合した エンドポイントでの検出と対応 ソリューションを使用してエンドポイントを保護する、 Microsoft Defender for Endpoint。 Microsoft Defender for Endpoint は、Azure、オンプレミス、マルチクラウド環境、のどれかでホストされているかにかかわらず、Windows および Linux マシンを保護します。 Microsoft Defender for Endpoint は、クラウドで提供される包括的なエンドポイント セキュリティ ソリューションです。 主な機能は次のとおりです。
- リスクベースの脆弱性の管理と評価
- 攻撃の回避
- 行動ベースおよびクラウドを利用した保護
- エンドポイントでの検出と対応 (EDR)
- 調査と修復の自動化
- マネージド ハンティング サービス
詳細については、「Microsoft Defender for Endpoint 統合の有効化」を参照してください。
D. Microsoft Sentinel で Amazon EC2 データを監視する
Azure Connected Machine Agentと AMA をインストールすると、Amazon EC2 オペレーティング システムは、Microsoft Sentinel で自動的に使用できる Azureログ分析 テーブルへのログの送信を開始します。
次の図は、Amazon EC2 オペレーティング システムのログが Microsoft Sentinel によってどのように取り込まれるかを示しています。 Azure Connected Machine Agentは、Amazon EC2 VM を Azure の一部にします。 AMA データ コネクタ経由の Windows セキュリティ イベントは、Amazon EC2 VM からデータを収集します。
Note
Amazon EC2 からログを取り込むには Microsoft Sentinel は必要ありませんが、以前に設定した Log Analytics ワークスペースが必要です。
詳細なガイダンスについては、GitHub のドキュメントである Arc と AMA を使用した Amazon EC2 Sentinel インジェストを参照してください。 GitHub ドキュメントでは、AMA のインストールについて説明しています。これは、このソリューション ガイドの前に AMA をインストールしたため、スキップできます。
E. Amazon Virtual Private Cloud (Amazon VPC)、AWS CloudTrail、Amazon GuardDuty から Microsoft Sentinel ログを監視する
以前に、Amazon Simple Storage Service (Amazon S3) コネクタを使用して Microsoft Sentinel を AWS に接続しました。 Amazon S3 バケットは、ログのクエリに使用される基になるツールである Log Analytics ワークスペースにログを送信します。 ワークスペースには、次のテーブルが作成されます:
- AWSCloudTrail - AWS CloudTrail ログには、AWS アカウントのすべてのデータと管理イベントが保持されます。
- AWSGuardDuty - Amazon GuardDuty Findingsは、ネットワーク内で検出された潜在的なセキュリティ問題を表します。 Amazon GuardDuty は、AWS 環境内で予期しない、悪意のある可能性のあるアクティビティを検出するたびに、検出結果を生成します。
- AWSVPCFlow - Amazon Virtual Private Cloud (Amazon VPC) フローログを使用すると、Amazon VPC ネットワークインターフェイスとの間で送受信される IP トラフィックをキャプチャできます。
Microsoft Sentinel では、Amazon VPC フローログ、AWS CloudTrail、Amazon GuardDuty に対してクエリを実行できます。 ログ分析 の各サービスと対応するテーブルのクエリ例を次に示します:
Amazon GuardDuty ログの場合:
AWSGuardDuty | where Severity > 7 | summarize count() by ActivityType
Amazon VPC Flow ログの場合:
AWSVPCFlow |where Action == "REJECT" |where Type == "Ipv4" |take 10
AWS CloudTrail ログの場合:
AWSCloudTrail |where EventName == "CreateUser" |summarize count() by AWSRegion
Microsoft Sentinel では、Amazon S3 ブックを使用して詳細を分析します。
AWS CloudTrail の場合は、次を分析できます:
- データ フロー実行時間
- アカウント ID
- イベント ソースのリスト
Amazon GuardDuty の場合、次の分析を行うことができます:
- Amazon GuardDuty by map
- リージョン別の Amazon GuardDuty
- Amazon GuardDuty by IP
F. Microsoft Sentinel の組み込み検出ルールを使用して、環境内の脅威検出ルールを作成および調査する
データ ソースを Microsoft Sentinel に接続したので、Microsoft Sentinels のビルトイン検出ルール テンプレートを使用して、環境内の脅威検出ルールを作成および調査できます。 Microsoft Sentinel には、脅威検出規則の作成に役立つ、すぐに使用できるビルトインテンプレートが用意されています。
セキュリティ専門家とアナリストから構成される マイクロソフトのチームが、既知の脅威、一般的な攻撃ベクトル、疑わしい行動のエスカレーション チェーンに基づいてルール テンプレートをデザインします。 これらのテンプレートから作成される規則により、環境全体にわたって、疑わしい活動がないか自動的に検査されます。 テンプレートの多くは、ニーズに合わせて特定の活動を検索したり、除外したりするようにカスタマイズできます。 これらのルールで生成されるアラートによって、環境内で割り当てて調査することができるインシデントが作成されます。
詳細については、「Microsoft Sentinel のビルトインの分析ルールを使用して脅威をすばやく検出する」を参照してください。
手順 3: 全体的なセキュリティ態勢を改善する
このセクションでは、Microsoft Entra Permissions Management を使用して、未使用の過剰なアクセス許可を監視する方法について説明します。 キー データを構成、オンボード、表示する方法を段階的に説明します。 ゼロ トラスト最小の特権アクセスの使用原則は、リソースへのアクセスを管理、制御、監視することによって実現されます。
手順 | タスク |
---|---|
A | アクセス許可管理と Privileged Identity Management を構成します。 |
B | AWS アカウントをオンボードする。 |
C | 主要な統計情報とデータを表示します。 |
アクセス許可の管理を構成する
Permissions Management は、マルチクラウド インフラストラクチャ全体で未使用の過剰なアクセス許可を検出し、自動的に適切なサイズにし、継続的に監視するクラウド インフラストラクチャエンタイトルメント管理 (CIEM) ソリューションです。
Permissions Management では、最小の特権アクセスの使用 原則が補強され、ゼロ トラスト セキュリティ戦略が深まります。これにより、ユーザーは以下を行うことができます:
- 包括的な可視化: どの ID が、いつ、どこで、何を行っているか検出できます。
- 最小限の特権アクセスを自動化する: アクセス分析を使用して、ID が適切なときに適切なアクセス許可を持っていることを保証します。
- IaaS プラットフォーム間でアクセス ポリシーを統合する: クラウド インフラストラクチャ全体に一貫したセキュリティ ポリシーを実装します。
Permissions Management では、AWS と Azure の主要な統計情報とデータの概要が提供されます。 データには、回避可能なリスクに関連するメトリックが含まれています。 これらのメトリックを使用すると、Permissions Management 管理者は、ゼロ トラスト 最低限のアクセス許可の使用 原則に関連するリスクを軽減できる領域を特定できます。
さらに解析と自動化のために、データを Microsoft Sentinel にフィードできます。
タスクを実装するには、次を参照してください:
手順4:Codeとしてのインフラストラクチャをセキュリティで保護
このセクションでは、DevSecOps の重要な柱、Codeとしてのインフラストラクチャのスキャンとセキュリティ保護について説明します。 Codeとしてのインフラストラクチャの場合、セキュリティチームと DevOps チームは、インフラストラクチャの展開の脆弱性につながる可能性のある構成の誤りを監視する必要があります。
Azure Resource Manager (ARM)、Bicep、または Terraform テンプレートに継続的なチェックを実装することで、開発の初期段階で、フィックスにかかるコストが低い違反や悪用を防ぐことができます。 Microsoft Entra ID と DevOps ツール全体で管理者とサービス アカウント グループを厳密に制御することをおすすめします。
ゼロ トラスト 最小の特権アクセスの使用 の原則を実装する方法は次のとおりです:
- 最小限の特権の ID アクセスとネットワークを設定して、インフラストラクチャ構成の信頼性の高いレビューを実施します。
- リポジトリ レベル、チーム レベル、または組織レベルでリソースにユーザーのロールベースのアクセス制御 (RBAC) を割り当てる。
前提条件:
- Code リポジトリは Azure DevOps または GitHub にあります
- パイプラインは Azure DevOps または GitHub でホストされます
手順 | タスク |
---|---|
A | Codeしてのインフラストラクチャ (IaC) 向け DevSecOpsを有効にする。 |
B | DevOps ツールの RBAC を実装します。 |
C | GitHub Advanced Security を有効にする。 |
D | Codeとシークレット スキャンの結果を表示する。 |
A. IaC の DevSecOps を有効にする
Defender for DevOps は、Codeとパイプラインが Azure DevOps と GitHub のどちらにあるかに関係なく、マルチパイプライン環境のセキュリティ態勢に表示範囲を提供します。 セキュリティチームと DevOps チームがすべてのリポジトリのスキャン結果を 1 つのダッシュボードで確認し、問題を修復するためのpull requestプロセスを設定できる、1 つのウィンドウグラスを実装するという追加のベネフィットがあります。
詳細については、以下を参照してください:
B. DevOps ツールの RBAC を実装する
ロールベースのアクセス制御アクセス許可など、チームの健全な ガバナンス プラクティスを管理および実装する必要があります。 このモデルが DevOps 自動化にミラー化されていない場合、組織はセキュリティ バックドアを開いたままにしている可能性があります。 開発者が ARM テンプレートを使用してアクセスできない例を考えてみましょう。 開発者がアプリケーション CodeやCodeとしてのインフラストラクチャを変更し、自動化ワークフローをトリガーできる十分なアクセス許可を持っている可能性があります。 この開発者は、DevOps を介して ARM テンプレートに間接的にアクセスし、破壊的な変更を加える可能性があります。
インフラストラクチャのデプロイ用にクラウドベースのソリューションをデプロイする場合、セキュリティは常に最も重要な懸念事項です。 Microsoft では、基になるクラウド インフラストラクチャのセキュリティを保護します。 ユーザーは Azure DevOps または GitHub でセキュリティを構成します。
セキュリティを構成するには:
- Azure DevOpsで、組織/コレクション、プロジェクト、またはオブジェクト レベルでセキュリティ グループ、ポリシー、設定を使用できます。
- GitHub では、リポジトリ レベル、チーム レベル、または組織レベルでロールを付与することで、リソースへのアクセス権をユーザーに割り当てることができます。
C: GitHub Advanced Security を有効にする
環境を積極的にセキュリティで保護するには、DevOps のセキュリティを継続的に監視して強化することが重要です。 GitHub Advanced Security は、パイプライン内のチェックを自動化して、公開されているシークレット、依存関係の脆弱性などを探します。 GitHub では、Advanced Security ライセンスの下で顧客が追加のセキュリティ機能を利用できるようにしています。
既定では、GitHub Advanced Security はパブリック リポジトリに対して有効になっています。 プライベート リポジトリの場合は、GitHub Advanced Security ライセンスを使用する必要があります。 有効にすると、GitHub Advanced Security スイートに付属する多くの機能の使用を開始できます:
- コード スキャン
- 依存関係スキャン
- シークレット スキャン
- アクセス制御
- 脆弱性アラート
- 監査ログ
- ブランチ保護ルール
- プルリクエストのレビュー
これらの機能を使用すると、Codeがセキュリティで保護され、業界標準に準拠していることを確認できます。 自動化されたワークフローを作成して、Code内のセキュリティの問題をすばやく検出して対処することもできます。 さらに、ブランチ保護ルールを使用して、コードベースに対する未承認の変更を防ぐことができます。
詳細については、「リポジトリの GitHub Advanced Securityを有効にする」を参照してください。
D. Codeとシークレット スキャンの結果を表示する
Defender for Cloud で利用できるサービスである Defender for DevOps によって、セキュリティ チームはマルチパイプライン環境全体で DevOps のセキュリティを管理できるようになります。 Defender for DevOps では、中央コンソールを使用して、GitHub や Azure DevOps などのマルチパイプライン環境全体で、コードからクラウドまでのアプリケーションとリソースを保護する機能をセキュリティ チームに提供します。
Defender for DevOps は、Pull Requests (PR) でセキュリティの調査結果を注釈として公開します。 セキュリティ オペレーターは、Microsoft Defender for Cloud で PR 注釈を有効にすることができます。 公開された問題は、開発者が修復できます。 このプロセスにより、潜在的なセキュリティの脆弱性や構成の誤りを防ぎ、運用段階に入る前に修正できます。 Azure DevOps で PR 注釈を構成できます。 GitHub Advanced Security のユーザーである場合は、GitHub で PR 注釈を取得できます。
詳細については、以下を参照してください:
- Microsoft Security DevOps GitHub アクションを構成する
- Microsoft Security DevOps の Azure DevOps 拡張機能の構成
- GitHub および Azure DevOps で pull request 注釈を有効にする
次のステップ
この記事で説明する Azure サービスの詳細については、以下を参照してください:
この記事で説明する AWS と Amazon のサービスとリソースの詳細については、以下を参照してください:
- Amazon Elastic Compute Cloud (Amazon EC2)
- AWS CloudTrail
- Amazon Virtual Private Cloud (Amazon VPC)
- Amazon GuardDuty
- Amazon Simple Storage Service (Amazon S3)
- Simple Queue Service (SQS)
- AWS Identity and Access Management (IAM)