Облачная информация AWS: как обращаться к нескольким группам безопасности в конфигурации эластичных бобовых стволов AWS

Я новичок в мире AWS Cloudformation. Я пытаюсь создать шаблон конфигурации эластичного стебля. Поскольку это один из параметров, мне нужно использовать две группы безопасности. Итак, я дал это следующим образом

  MyConfigurationTemplate:
  Type: AWS::ElasticBeanstalk::ConfigurationTemplate
  Properties:
  Properties:
  ApplicationName:  MyApplication
  Description: A default Application
  SolutionStackName: SolutionStack
  OptionSettings:
  ....
  ....
  - Namespace: aws:autoscaling:launchconfiguration
    OptionName: SecurityGroups
    Value:
      !If
        - ConditionIsTrue
        - [!Ref FirstGroup, !ImportValue SecondGroup]
        - !Ref FirstGroup
  ....
  ....

Я прочитал здесь из документов AWS, что SecurityGroups - это список, и мы можем предоставить разделенный запятыми список. Но это не работает для меня. AWS выбрасывает следующую ошибку

Значение свойства Value должно иметь тип String

Я попытался дать оценку группам безопасности следующими способами, но ни один из них не сработал.

1) "! Ref FirstGroup,! ImportValue SecondGroup"

2)! Ref FirstGroup,! ImportValue SecondGroup

Любая идея, как этот список групп безопасности должен быть предоставлен?

1 ответ

Решение

Я получил это сам с некоторой пробой и ошибкой. Как он принимает список через запятую. Нам нужно использовать ! Присоединиться следующим образом.

MyConfigurationTemplate:
Type: AWS::ElasticBeanstalk::ConfigurationTemplate
Properties:
  ApplicationName:  MyApplication
  Description: A default Application
  SolutionStackName: SolutionStack
  OptionSettings:
  ....
  ....
  - Namespace: aws:autoscaling:launchconfiguration
    OptionName: SecurityGroups
    Value:
    !If
      - ConditionIsTrue
      - !Join [',', [!Ref FirstGroup, !ImportValue SecondGroup]]
      - !Ref FirstGroup
  ....
  ....