如何在AWS SAM中将标签添加到私有API网关

时间:2020-03-10 18:44:05

标签: amazon-web-services yaml aws-sam

我已经在SAM中使用AWS :: Serverless :: API创建了API网关,现在我想向网关添加标签,以便对具有相同标签的每个网关实施安全约束。

  Type: AWS::Serverless::Api
  Properties:
    Name: PrivateApi
    StageName: v1
    Tags:
      - Key: TagName
        Value: TagValue
    MethodSettings:
    ...

查看文档后,我想到了上面的代码。如文档所述,它以上面显示的方式支持标签,但是在部署时出现以下错误。

samcli.commands.validate.lib.exceptions.InvalidSamDocumentException: [InvalidResourceException('PrivateApi', "Type of property 'Tags' is invalid.")] ('PrivateApi', "Type of property 'Tags' is invalid.")

链接到有关标签的文档:https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html

任何帮助,将不胜感激!

1 个答案:

答案 0 :(得分:1)

我发现使用SAM时,AWS :: Serverless :: API页面和“标签”页面上的文档略有错误。

在SAM中标记标签的正确方法如下。

  Type: AWS::Serverless::Api
  Properties:
    Name: PrivateApi
    StageName: v1
    Tags:
      TagName: TagValue
    MethodSettings:
    ...

这种细微的差异使SAM可以正确部署。 另外,在API阶段,您可以验证代码是否已正确部署。

相关问题