

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

# Amazon Inspector と統合するように Microsoft Azure を設定する
<a name="inspector-azure-setup-azure"></a>

Azure セットアッププロセスでは、Amazon Inspector がリソース変更通知を認証して受信できるように Azure 環境を設定します。Amazon Inspector は、コネクタの作成時にカスタマイズされたセットアップスクリプトを生成します。スクリプトは次のステップを実行します。

**注記**  
 AWS Security Hub CSPM または AWS Security Hub CSPM CSPM の Azure 環境設定をすでに完了している場合、同じアプリ登録が共有されます。スクリプトは既存の登録を検出し、既存の設定を変更せずに Amazon Inspector に必要なフェデレーティッド ID 認証情報を追加します。

セットアップスクリプトは、一連のタスクを実行します。以下のセクションでは、スクリプトが実行する各タスクについて説明します。組織がスクリプトの実行を制限している場合は、このトピックをガイドとして使用して、これらのタスクを手動で実行できます。

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

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

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

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

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

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

クライアントシークレットなしで AWS が認証できるように、アプリケーションでフェデレーティッド ID 認証情報を設定します。これにより、 と Azure 間の AWS 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 フェデレーションの標準値）。

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

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

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

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

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}}
```

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

**注記**  
タグ形式は で、`AWSConfig-{{account-id}}-{{region}}`{{account-id}} は 12 桁の AWS アカウント識別子、{{region}} はコネクタを作成した AWS リージョンです (例: `us-east-1`)。

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

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

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

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

監査ログを同じ Event Hub にエクスポートMicrosoft Entra IDするには、 で診断設定を構成します。*Microsoft Entra ID > モニタリング > 診断設定 > 診断設定の追加*に移動します。**AuditLogs** を有効にし、Event Hub にルーティングします。

Azure セットアップスクリプトを実行するには:

1. Azure テナント () に対して認証された Azure CLI を使用してターミナルを開きます`az login`。ターゲットサブスクリプションに対する寄稿者と所有者のアクセス許可が必要です。

1. Amazon Inspector コンソールからセットアップスクリプトをコピーします (コネクタの作成時に生成）。

1. セットアップスクリプトを実行します。このスクリプトは、上記の Azure 環境のセットアップを完了します。

1. スクリプトが正常に完了したら、Amazon Inspector コンソールに戻り、コネクタの作成を完了します。

**重要**  
コネクタスコープを後で変更する場合 (新しい Azure リージョンを追加するなど）、コンソールはセットアップスクリプトを再生成して、新しいリージョンに Event Hub インフラストラクチャをプロビジョニングします。更新されたスクリプトを再実行する必要があります。