Rob*_*die 8 amazon-web-services aws-cloudformation amazon-iam
我正在创建一个 AWS Cloudformation 堆栈,在其中将记录集添加到现有的 Route53 托管区域。资源指定如下(YAML格式):
DNS:
Type: AWS::Route53::RecordSetGroup
Properties:
HostedZoneName: !Ref HostedZoneName
Comment: Zone apex alias targeted to myELB LoadBalancer.
RecordSets:
- Name: !Join [ ".", ["alb", !Ref HostedZoneName]]
Type: A
AliasTarget:
HostedZoneId: !Ref AliasTargetHostedZoneId
DNSName: !Ref AliasTargetDNSName
Run Code Online (Sandbox Code Playgroud)
HostedZoneName,AliasTargetHostedZoneId并AliasTargetDNSName作为参数传入。
我遇到的问题是由于标题中指定的权限错误,堆栈不会创建。默认情况下,CloudFormation 将使用创建堆栈的用户的权限,我。我有管理员访问策略,所以我应该被允许做所有的事情,包括所有的 Route53 操作。
我还尝试通过传递一个 IAM 角色来创建堆栈,该角色也具有 AdministratorAccess 策略,这给了我同样的错误。
模板中指定的所有其他资源(VPC、Loadbalancer、RDS 等)都可以正常创建。
定义正确的 HostedzoneId 并将其传递到模板中很重要。
由于您在执行 CloudFormation 脚本时拥有管理员权限,因此您应该能够将记录集添加到您帐户中的 Route53 托管区域,而无需指定任何其他角色/配置文件。
但是,您需要确保传递了正确的 HostedzoneId。这通常作为字符串或使用负载均衡器的CanonicalHostedZoneID 属性完成。
将其作为字符串传递时,您需要确保参数类型是字符串类型,而不是AWS::Route53::HostedZone::Id
| 归档时间: |
|
| 查看次数: |
1927 次 |
| 最近记录: |