

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

# AWS RAM でのログ記録とモニタリング
<a name="security-monitoring"></a>

モニタリングは、AWS RAM と AWSソリューションの信頼性、可用性、パフォーマンスを維持する上で重要な部分です。マルチポイント障害が発生した場合は、その障害をより簡単にデバッグできるように、AWS ソリューションのすべての部分からモニタリングデータを収集する必要があります。AWS には、AWS RAM リソースをモニタリングし、潜在的なインシデントに対応するための複数のツールが用意されています。

**Amazon EventBridge**  
AWS リソースの変更を示すシステムイベントのほぼリアルタイムのストリームを提供します。EventBridge で自動イベント駆動型コンピューティングを有効にすると、特定のイベントを監視するルールを記述し、これらのイベントが発生したときに他の AWS のサービスで自動アクションをトリガーできます。詳細については、「[EventBridge AWS RAM を使用したモニタリング](using-eventbridge.md)」を参照してください。

**AWS CloudTrail**  
AWS アカウント により、またはそのアカウントに代わって行われた API コールや関連イベントを取得し、指定した Amazon S3 バケットにログファイルを配信します。AWS を呼び出したユーザーとアカウント、呼び出し元の IP アドレス、および呼び出し日時を特定できます。詳細については、「[を使用した AWS RAM API コールのログ記録 AWS CloudTrail](cloudtrail-logging.md)」を参照してください。

# EventBridge AWS RAM を使用したモニタリング
<a name="using-eventbridge"></a>

Amazon EventBridge を使用して、 AWS RAM内にある特定のイベントに関する自動通知を設定できます。からのイベント AWS RAM は、ほぼリアルタイムで EventBridge に配信されます。イベントをモニタリングし、リソース共有の変更を示すイベントに応答してターゲットを呼び出すように EventBridge を設定できます。リソース共有への変更は、リソース共有の所有者およびリソース共有へのアクセスを許可されたプリンシパルの両方についてイベントをトリガーします。

イベントパターンを作成するとき、ソースは `aws.ram` です。

**注記**  
これらのイベントに依存するコードの記述には注意が必要です。これらのイベントは保証されていませんが、ベストエフォートベースで送信されます。がイベントを出力 AWS RAM しようとしたときにエラーが発生した場合、サービスはさらに数回試行します。ただし、タイムアウトになり、その特定のイベントが失われる可能性があります。

詳細については、Amazon EventBridge ユーザーガイドを参照してください。

## 例: リソース共有障害時のアラート
<a name="using-eventbridge-example-sharing"></a>

Amazon EC2 のキャパシティ予約を組織の他のアカウントと共有するシナリオを考えてみましょう。これはコストを削減する良い方法です。

ただし、[キャパシティ予約を共有するための前提条件](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/capacity-reservation-sharing.html#sharing-cr-prereq)をすべて満たしていない場合、リソース共有に関連する非同期タスクの実行が失敗する可能性があります。共有操作が失敗し、他のアカウントのユーザーがそれらのキャパシティ予約のいずれかでインスタンスを起動しようとすると、Amazon EC2 はキャパシティ予約を受け付けられない状態であるかのように動作し、代わりにオンデマンドインスタンスとしてインスタンスを起動します。その結果、想定以上のコストが発生する可能性があります。

リソース共有の失敗をモニタリングするには、 AWS RAM リソース共有が失敗したときに警告する Amazon EventBridge ルールを設定します。次のチュートリアルでは、Amazon Simple Notification Service (SNS) トピックを使用して、EventBridge がリソース共有障害を検出するたびに、トピックサブスクライバー全員に通知を送信します。Amazon SNS の詳細については、[Amazon Simple Notification Service デベロッパーガイド](https://docs.aws.amazon.com/sns/latest/dg/) を参照してください。

**リソース共有が失敗したときに通知するルールを作成するには**

1. [Amazon EventBridge コンソール](https://console.aws.amazon.com/events)を開きます。

1. ナビゲーションペインで **[ルール]** を選択し、**[ルール]** リストで **[ルールの作成]** を選択します。

1. 名前を入力し、必要に応じてルールの説明を入力して **[次へ]** を選択します。

1. **[イベントパターン]** ボックスまでスクロールして、**[カスタムパターン]** を選択します。

1. 以下のイベントパターンをコピーして貼り付けます。

   ```
   {
     "source": ["aws.ram"],
     "detail-type": ["Resource Sharing State Change"],
     "detail": {
       "event": ["Resource Share Association"],
       "status": ["failed"]
     }
   }
   ```

1. [**次へ**] を選択します。

1. **[ターゲット 1]** の **[ターゲットタイプ]** で、**AWS のサービス** を選択します。

1. **[ターゲットの選択]**で、**[SNS トピック]** を選択します。

1. **[トピック]** で、通知を送信する SNS トピックを選択します。このトピックはすでに作成されている必要があります。

1. **[次へ]** を選択し、もう一度 **[次へ]** を選択して設定を確認します。

1. オプションに問題がなければ、**[ルールの作成]** を選択します。

1. **[ルール]** ページに戻り、新しいルールが **[有効]** になっていることを確認します。必要な場合、ルール名の横にあるラジオボタンを選択し、**[有効]** を選択します。

そのルールが有効になっている限り、失敗した AWS RAM リソース共有は、公開したトピックの受信者に SNS アラートを生成します。

共有先のアカウントの [Amazon EC2 コンソールで共有されたキャパシティ予約を表示して](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/capacity-reservation-sharing.html#identifying-shared-cr)、キャパシティ予約がアクセス可能であることを確認することもできます。

# を使用した AWS RAM API コールのログ記録 AWS CloudTrail
<a name="cloudtrail-logging"></a>

AWS RAM は、ユーザー AWS CloudTrail、ロール、または のサービスによって実行されたアクションを記録する AWS サービスである と統合されています AWS RAM。CloudTrail は、 AWS RAM のすべての API コールをイベントとしてキャプチャします。キャプチャされた呼び出しには、 AWS RAM コンソールからの呼び出しと AWS RAM API オペレーションへのコード呼び出しが含まれます。追跡を作成する場合は、 AWS RAMのイベントなど、指定する Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます。証跡を設定しない場合でも、CloudTrail コンソールの **[イベント履歴]** で最新のイベントを表示できます。CloudTrail で収集された情報を使用して、リクエストの実行先 AWS RAM、リクエスト元の IP アドレス、リクエスタ、リクエストの実行日時などの詳細を確認します。

CloudTrail の詳細については、「[AWS CloudTrail ユーザーガイド](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)」を参照してください。

## AWS RAM CloudTrail の情報
<a name="ram-info-in-cloudtrail"></a>

CloudTrail は、アカウントの作成 AWS アカウント 時に で有効になります。アクティビティが発生すると AWS RAM、そのアクティビティはイベント**履歴**の他の AWS サービスイベントとともに CloudTrail イベントに記録されます。で最近のイベントを表示、検索、ダウンロードできます AWS アカウント。詳細については、[CloudTrail イベント履歴でのイベントの表示](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)を参照してください。

 AWS RAMのイベントなど、 AWS アカウントのイベントの継続的な記録に対して、追跡を作成します。*証跡*により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成すると、証跡はすべての AWS リージョンに適用されます。証跡は、 AWS パーティションのすべてのリージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集されたイベントデータをさらに分析して処理するように他の AWS サービスを設定できます。詳細については次を参照してください:
+ [の証跡の作成 AWS アカウント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [AWS のサービス CloudTrail ログとの統合](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations)
+ [CloudTrail 用 Amazon SNS 通知の構成](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html)
+ [CloudTrail ログファイルを複数のリージョンから受け取る](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)、[複数のアカウントから CloudTrail ログファイルを受け取る](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

すべての AWS RAM アクションは CloudTrail によってログに記録され、 [AWS RAM API リファレンス](https://docs.aws.amazon.com/ram/latest/APIReference/)に記載されています。たとえば、`CreateResourceShare`、`AssociateResourceShare`、`EnableSharingWithAwsOrganization` の各アクションを呼び出すと、CloudTrail ログファイルにエントリが生成されます。

各イベントまたはログエントリには、リクエストを行ったユーザーに関する情報が含まれます。
+ AWS アカウント ルート認証情報
+  AWS Identity and Access Management (IAM) ロールまたはフェデレーティッドユーザーからの一時的なセキュリティ認証情報。
+ IAM ユーザーからの長期的なセキュリティ認証情報
+ 別の AWS サービス。

詳細については、「[CloudTrail userIdentity エレメント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)」を参照してください。

## AWS RAM ログファイルエントリについて
<a name="understanding-ram-entries"></a>

「トレイル」は、指定した Amazon S3 バケットにイベントをログファイルとして配信するように設定できます。CloudTrail のログファイルは、単一か複数のログエントリを含みます。イベントは、任意の出典からの単一のリクエストを表し、リクエストされたアクション、アクションの日時、リクエストパラメータなどに関する情報が含まれます。CloudTrail ログファイルは、パブリック API 呼び出しの順序付けられたスタックトレースではないため、特定の順序では表示されません。

次の例は、`CreateResourceShare` アクションの CloudTrail ログエントリを示しています。

```
{
    "eventVersion": "1.05",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "NOPIOSFODNN7EXAMPLE",
        "arn": "arn:aws:iam::111122223333:user/admin",
        "accountId": "111122223333",
        "accessKeyId": "BCDIOSFODNN7EXAMPLE",
        "userName": "admin"
    },
    "eventTime": "2018-11-03T04:23:19Z",
    "eventSource": "ram.amazonaws.com",
    "eventName": "CreateResourceShare",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "192.0.1.0",
    "userAgent": "aws-cli/1.16.2 Python/2.7.10 Darwin/16.7.0 botocore/1.11.2",
    "requestParameters": {
        "name": "foo"
    },
    "responseElements": {
        "resourceShare": {
            "allowExternalPrincipals": true,
            "name": "foo",
            "owningAccountId": "111122223333",
            "resourceShareArn": "arn:aws:ram:us-east-1:111122223333:resource-share/EXAMPLE0-1234-abcd-1212-987656789098",
            "status": "ACTIVE"
        }
    },
    "requestID": "EXAMPLE0-abcd-1234-mnop-987654567876",
    "eventID": "EXAMPLE0-1234-abcd-hijk-543234565434",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "recipientAccountId": "111122223333"
}
```