

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 示例： WorkSpaces 应用程序服务角色跨服务混淆副手预防
<a name="example-confused-deputy"></a>

WorkSpaces 应用程序使用各种资源扮演服务角色 ARNs，这会导致复杂的条件语句。我们建议使用通配符资源类型，以防止 WorkSpaces 应用程序资源出现意外故障。

**Example `aws:SourceAccount` 条件：**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "appstream.amazonaws.com"
                ]
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{your AWS 账户 ID}}"
                }
            }
        }
    ]
}
```

**Example `aws:SourceArn` 条件：**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "appstream.amazonaws.com"
                ]
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "ArnLike": {                   
                "aws:SourceArn": "arn:aws:appstream:{{us-east-1}}:{{111122223333}}:*"
                }
            }
        }
    ]
}
```