将基于资源的策略与 CloudWatch RUM 结合使用
您可以将资源策略附加到 CloudWatch RUM 应用程序监测仪。默认情况下,应用程序监测仪不会附加资源策略。基于 CloudWatch RUM 资源的策略不支持跨账户访问。
要详细了解 Amazon 资源策略,请参阅基于身份的策略和基于资源的策略。
要详细了解如何评估资源策略和身份策略,请参阅策略评估逻辑。
要详细了解 IAM 策略语法,请参阅 IAM JSON 策略元素参考。
支持的操作
应用程序监测仪上基于资源的策略支持 rum:PutRumEvents
操作。
与 CloudWatch RUM 结合使用的示例策略
以下示例允许任何人将数据写入您的应用程序监测仪,包括那些没有 Sigv4 凭证的用户。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:
region
:accountID
:appmonitor/app monitor name
", "Principal" : "*" } ] }
您可以使用 aws:SourceIp
条件键来修改策略,以阻止指定的源 IP 地址。在此示例中,使用此策略,将拒绝来自所列 IP 地址的 PutrumEvents。将接受来自其他 IP 地址的所有其他请求。有关此条件键的更多信息,请参阅《IAM 用户指南》中的网络属性。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:
region
:accountID
:appmonitor/app monitor name
", "Principal" : "*" }, { "Effect": "Deny", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:region
:accountID
:appmonitor/app monitor name
", "Principal" : "*", "Condition": { "NotIpAddress": { "aws:SourceIp": "************
" } } } ] }
此外,您还可以选择仅接受使用 rum:alias
服务上下文密钥以特定别名签名的 PutRumEvents 请求。在以下示例中,PutRumEvents
必须将可选 Alias
请求参数设置为 alias1
或 alias2
,才能接受事件。要将 Web 客户端配置为发送 Alias
,必须使用 1.20 或更高版本的 CloudWatch RUM Web 客户端,如 GitHub 上的特定于应用程序的配置
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:
region
:accountID
:appmonitor/app monitor name
", "Principal" : "*", "Condition": { "StringEquals": { "rum:alias": [ "alias1
", "alias2
"] } } } ] }