

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Security Hub CSPM と統合するように Microsoft Azure を設定する
<a name="securityhub-azure-setup-azure"></a>

[前提条件タスク](securityhub-azure-prereqs.md)を完了したら、 AWS Security Hub CSPM との統合をサポートするように Microsoft Azure 環境を設定できます。これを行うために、Security Hub CSPM コンソールは、設定に合わせてカスタマイズされたセットアップスクリプトを生成します。

スクリプトを生成するには、以下を実行します。

1. Security Hub CSPM コンソールを開きます。

1. ナビゲーションペインで、**[統合]** を選択します。

1. **Azure コネクタの作成**を選択します。

1. コネクタ設定 (テナント ID、スコープ、名前) を完了し、生成されたセットアップスクリプトをコピーします。

スクリプトを実行するには、Azure CLI を使用してグローバル管理者アカウント () で認証します`az login`。

スクリプトを実行すると、一連のタスクが実行されます。以下のセクションでは、スクリプトが実行する各タスクについて説明します。組織がスクリプトの実行を制限している場合は、このトピックをガイドとして使用して、これらのタスクを手動で実行できます。Azure 環境を設定したら、[Security Hub CSPM を Azure と統合するように設定できます](securityhub-azure-setup-securityhub.md)。

**注記**  
単一の Azure アプリ登録が AWS セキュリティサービス間で共有されます。Security Hub または Amazon Inspector for Azure も使用している場合は、同じアプリ登録を使用します。 AWS サービスごとに個別の登録を作成する必要はありません。

**Topics**
+ [ステップ 1: アプリケーションを登録する](#securityhub-azure-setup-azure-registration)
+ [ステップ 2: サービスプリンシパルを作成する](#securityhub-azure-setup-azure-sp)
+ [ステップ 3: フェデレーティッド認証情報を設定する](#securityhub-azure-setup-azure-federation)
+ [ステップ 4: リーダーロールを割り当てる](#securityhub-azure-setup-azure-rbac)
+ [ステップ 5: グラフ API アクセス許可を設定する](#securityhub-azure-setup-azure-graph)
+ [ステップ 6: Event Hub をセットアップする](#securityhub-azure-setup-azure-eventhub)
+ [ステップ 7: ログのエクスポートを設定する](#securityhub-azure-setup-azure-export)

## ステップ 1: Azure アプリケーションを登録する
<a name="securityhub-azure-setup-azure-registration"></a>

Microsoft Entra ID に新しいアプリケーションを登録します。このアプリケーションは、 AWS がフェデレーション認証情報を使用して Azure 環境を認証するために使用する ID として機能します。クライアントシークレットは必要ありません。

```
$ az ad app create --display-name "AWSSecurityHubIntegration"
```

出力 **( 属性) のアプリケーション (クライアント) ID** を書き留めます。 `appId`Security Hub CSPM コンソールでコネクタを作成するときに、この値を指定します。

## ステップ 2: サービスプリンシパルを作成する
<a name="securityhub-azure-setup-azure-sp"></a>

登録済みアプリケーションのサービスプリンシパルを作成します。Azure ロールの割り当てを使用して、サービスプリンシパルにアクセス許可を付与します。サービスプリンシパルは、Azure 環境でアクションを実行します。

```
$ az ad sp create --id {{application-client-id}}
```

{{application-client-id}} は、前のステップのアプリケーション (クライアント) ID です。

## ステップ 3: フェデレーティッド ID 認証情報を設定する
<a name="securityhub-azure-setup-azure-federation"></a>

クライアントシークレットなしで AWS が認証できるように、アプリケーションでフェデレーティッド ID 認証情報を設定します。これにより、 AWS と Azure の間に OIDC 信頼が確立されます。存続期間の長いシークレットや認証情報は保存されません。

```
$ az ad app federated-credential create \
  --id {{application-client-id}} \
  --parameters '{
    "name": "AWSConfigFederation",
    "issuer": "{{token-issuer-url}}",
    "subject": "arn:aws:iam::{{account-id}}:role/aws-service-role/thirdparty.config.amazonaws.com/AWSServiceRoleForConfigThirdParty",
    "audiences": ["api://AzureADTokenExchange"],
    "description": "Federation for AWS Config third-party cloud resource discovery"
  }'
```

キー値:
+ **発行者** – IAM アウトバウンド ID フェデレーションからのトークン発行者 URL。これは の形式に従います`https://{{uuid}}.tokens.sts.global.api.aws`。
+ **件名** – `AWSServiceRoleForConfigThirdParty`のサービスにリンクされたロールの ARN AWS アカウント。 は、コネクタのセットアップ中にこのサービスにリンクされたロールを自動的に AWS 作成します。
+ **対象者** – `api://AzureADTokenExchange` (ワークロード ID フェデレーションの標準値）。

## ステップ 4: リーダーロールを割り当てる
<a name="securityhub-azure-setup-azure-rbac"></a>

リーダー****ロールをテナントルート管理グループスコープのサービスプリンシパルに割り当てます。これにより、テナント内のすべてのサブスクリプションのすべての Azure リソースへの読み取り専用アクセスが許可されます。

```
$ az role assignment create \
  --assignee {{application-client-id}} \
  --role "Reader" \
  --scope "/providers/Microsoft.Management/managementGroups/{{tenant-id}}"
```

**注記**  
このステップが失敗した場合、Microsoft Entra ID > Properties で *Azure リソースのアクセス管理*が **Yes** に設定されていることを確認します。次に、サインアウトしてサインインし直してトークンを更新します。

## ステップ 5: Microsoft Graph API アクセス許可を設定する
<a name="securityhub-azure-setup-azure-graph"></a>

次の Microsoft Graph API アクセス許可 (アプリケーションタイプ) をアプリケーションに付与し、管理者の同意を付与します。
+ `Directory.Read.All`
+ `AuditLog.Read.All`
+ `Policy.Read.All`

```
$ az ad app permission admin-consent --id {{application-client-id}}
```

## ステップ 6: Azure Event Hub をセットアップする
<a name="securityhub-azure-setup-azure-eventhub"></a>

AWS Config は Azure Event Hub を使用して、Azure 環境のリソース設定の変更に関するほぼリアルタイムの通知を受け取ります。セットアップスクリプトは Event Hub インフラストラクチャを作成し、検出用にタグ付けします。

```
$ az group create \
  --name "aws-securityhub-integration" \
  --location {{event-hub-region}}

$ az eventhubs namespace create \
  --resource-group "aws-securityhub-integration" \
  --name "aws-securityhub-{{account-id}}" \
  --location {{event-hub-region}} \
  --sku Standard

$ az eventhubs eventhub create \
  --resource-group "aws-securityhub-integration" \
  --namespace-name "aws-securityhub-{{account-id}}" \
  --name "activitylog" \
  --message-retention 1 \
  --partition-count 4

$ az eventhubs eventhub consumer-group create \
  --resource-group "aws-securityhub-integration" \
  --namespace-name "aws-securityhub-{{account-id}}" \
  --eventhub-name "activitylog" \
  --name "AWSConfig"
```

Event Hub を作成したら、検出用の名前空間にタグを付け、データレシーバーロールを割り当てます。

```
$ az tag create \
  --resource-id {{namespace-resource-id}} \
  --tags "AWSConfig-{{account-id}}-{{region}}=activitylog"

$ az role assignment create \
  --assignee {{application-client-id}} \
  --role "Azure Event Hubs Data Receiver" \
  --scope {{namespace-resource-id}}
```

**注記**  
タグ形式 では`AWSConfig-{{account-id}}-{{region}}`、{{account-id}} は 12 桁の AWS アカウント ID で、{{region}} はコネクタを作成する AWS リージョン です (例: `us-east-1`)。これらの値は、この Event Hub 統合を所有する AWS アカウント とリージョンを識別します。

設定キー:
+ **名前空間 SKU** – 標準 (コンシューマーグループに必須）。
+ **Event Hub 名** – `activitylog`。
+ **コンシューマーグループ** – `AWSConfig`。
+ **タグ** – 値 `AWSConfig-{{account-id}}-{{region}}` 付き`activitylog`。このタグにより AWS Config 、 は Event Hub を自動的に検出できます。
+ **ロールの割り当て** – 名前空間上の Azure Event Hubs データレシーバー。

## ステップ 7: アクティビティログと Entra ID 監査ログのエクスポートを設定する
<a name="securityhub-azure-setup-azure-export"></a>

アクティビティログと Entra ID 監査ログを Event Hub にエクスポートするように Azure を設定します。

**アクティビティログのエクスポート:**

各サブスクリプションの診断設定を設定して、アクティビティログを Event Hub にエクスポートします。セットアップスクリプトは、モニタリング対象のすべてのサブスクリプションに対してこれを自動的に設定します。Activity Logs は、ロールの割り当てやリソースの変更など、サブスクリプションレベルのアクティビティをキャプチャします。

**Entra ID 監査ログのエクスポート:**

監査ログを同じ Event Hub にエクスポートするように、Microsoft Entra ID の診断設定を構成します。*Microsoft Entra ID > Monitoring > Diagnostic settings > Add diagnostic settings* に移動します。**AuditLogs** を有効にし、Event Hub にルーティングします。

**Microsoft Defender for Cloud の継続的エクスポート (オプション):**

Defender for Cloud セキュリティアラートを Security Hub CSPM に転送するには、Event Hub への継続的なエクスポートを設定します。Azure ポータルで、*Microsoft Defender for Cloud > Environment settings > Select subscription > Continuous export* に移動します。エクスポートターゲットとして **Event Hub** を選択し、Event Hub 名前空間を選択します。エクスポートデータ型として**セキュリティアラート**を有効にします。

**Amazon Inspector データイベント設定 (オプション):**

Amazon Inspector for Azure VM スキャンを使用する場合は、追加のデータイベント設定が必要です。Inspector 固有のデータイベントの設定の詳細については、Azure 統合の Amazon Inspector ドキュメントを参照してください。