Как добавить управляемую политику в группу в terraform? - PullRequest
0 голосов
/ 25 января 2019

Пока у меня есть это:

data "aws_iam_policy" "config_role" { 
  arn = "arn:aws:iam::aws:policy/service_role/AWSConfigRole"
}

Но я не уверен, как прикрепить это к группе.

Ответы [ 2 ]

0 голосов
/ 25 января 2019

Вы можете использовать ресурс aws_iam_group_policy_attachment или ресурс aws_iam_policy_attachment для присоединения политики к группе.

Как указано в aws_iam_policy_attachment resource docs этот ресурс создает эксклюзивное вложение этой политики для указанных пользователей, групп и ролей, и обычно это не то, что вам нужно, поэтому я рекомендую ресурс aws_iam_group_policy_attachment.

Это может выглядеть примерно так:

resource "aws_iam_group" "aws_config_group" {
  name = "AWSConfigGroup"
  path = "/"
}

resource "aws_iam_group_policy_attachment" "aws_config_attach" {
  group      = "${aws_iam_group.aws_config_group.name}"
  policy_arn = "arn:aws:iam::aws:policy/service_role/AWSConfigRole"
}

Обратите внимание, что вам на самом деле не нужен aws_iam_policy источник данных здесь, поскольку вы уже строите ARN для передачи в источник данных, и это все, что нужно дляресурс aws_iam_group_policy_attachment.

0 голосов
/ 25 января 2019

Вы добавляете его позже в файл.

, что-то вроде

resource "aws_iam_group" "aws_config_group" {
  name = "AWSConfigGroup"
  path = "/"
}

resource "aws_iam_policy" "config_role" {
  name = "AWSConfigRole" 
  arn = "arn:aws:iam::aws:policy/service_role/AWSConfigRole"
  group = ['aws_config_group']
}
...