CloudWatch RUM でのリソースベースのポリシーの使用
CloudWatch RUM アプリモニターにリソースポリシーをアタッチできます。既定では、アプリケーションモニターにはリソースポリシーがアタッチされていません。CloudWatch RUM リソースベースのポリシーは、クロスアカウントアクセスをサポートしていません。
AWS リソースのポリシーの詳細については、「アイデンティティベースおよびリソースベースのポリシー」を参照してください。
リソースポリシーと ID ポリシーの評価方法の詳細については、「ポリシーの評価論理」を参照してください。
IAM ポリシーの文法の詳細については、「IAM JSON ポリシー要素のリファレンス」を参照してください。
サポートされているアクション
アプリケーションモニターのリソースベースのポリシーは、rum:PutRumEvents アクションをサポートします。
CloudWatch RUM で 使用するサンプルポリシー
次の例では、SigV4 認証情報がないものを含め、誰でもアプリケーションモニターにデータを書き込むことができます。
aws:SourceIp 条件キーを使用して、指定された送信元 IP アドレスをブロックするようにポリシーを変更できます。この例では、このポリシーを使用すると、リストされている IP アドレスの PutRumEvents は拒否されます。他の IP アドレスからの他のすべてのリクエストは受け入れられます。この条件キーの詳細については、IAM ユーザーガイドの「ネットワークのプロパティ」を参照してください。
さらに、rum:alias サービスコンテキストキーを使用して、受け入れるリクエストを制御できます。
ウェブアプリケーションモニターの場合、GitHub の「アプリケーション固有の設定Alias を送信するようにウェブクライアントを設定する必要があります。
モバイルアプリケーションモニターの場合、SDK に従って計測を設定する必要があります。
-
iOS アプリケーションは AWS Distro for OpenTelemetry (ADOT) iOS SDK
を使用します。 -
Android アプリケーションは AWS Distro for OpenTelemetry (ADOT) Android SDK
を使用します。
次の例では、イベントを受け入れるには、リソースポリシーで、リクエストに alias1 または alias2 を含める必要があります。
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowRUMPutEvents", "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:us-east-1:123456789012:appmonitor/MyApplication", "Principal": "*", "Condition": { "StringEquals": { "rum:alias":["alias1", "alias2"] } } } ] }