Разрешение доступа IAM только к определенному поддомену на маршруте 53 - PullRequest
0 голосов
/ 30 мая 2018

Мне нужно предоставить пользователю IAM Route 53 доступ для создания записей в поддомене, скажем, data.example.com.Например, пользователь должен иметь возможность создать CNAME для server1.data.example.com.В то же время я не хочу, чтобы пользователь мог добавлять / изменять / удалять любые записи, кроме *.data.example.com.

Можно ли написать политику, которая это делает?

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Из документации AWS

В политике вы можете предоставить или запретить доступ к следующим ресурсам, используя * для ARN:

  • Healthпроверяет
  • размещенные зоны
  • повторно используемые наборы делегирования
  • состояние пакета изменения набора записей ресурсов (только API)
  • политики трафика(поток трафика)
  • Экземпляры политики трафика (поток трафика)

Не все ресурсы Route 53 поддерживают разрешения.Вы не можете предоставить или запретить доступ к следующим ресурсам:

  • Домены
  • Отдельные записи
  • Пространства имен(обнаружение службы)
  • Службы (обнаружение службы)
  • Теги для доменов
  • Теги для проверки работоспособности
  • Теги для размещенных зон

Это в основном означает, что точный контроль зерна в IAM - это отдельная размещенная зона (файл зоны DNS).

Вы можете создать размещенную зону только для конкретного субдомена, следуя этому AWS Guide

0 голосов
/ 30 мая 2018

Вы можете ограничить по размещенной зоне, но не по поддомену.Ваши хост-зоны Route53 должны быть разделены по поддоменам, если вы хотите ограничиться определенными поддоменами.Вы можете создать размещенную зону для субдомена :

Например, если вы хотите субдомен с именем test, вы можете сделать в качестве ответа здесь хорошо суммирует:

Создайте размещенную зону для test.example.com.

Обратите внимание на 4 сервера имен, которым Route 53 назначает ему новую размещенную зону.

Назад вВ основной зоне создайте новую запись ресурса с именем хоста «test», используя тип записи NS, и введите 4 сервера имен, назначенных для маршрута 53, в поле ниже.

Вышеуказанные делегаты управляют этимсубдомен этой новой размещенной зоны, который имеет уникальный идентификатор зоны, который мы можем использовать в политике IAM

Затем можно создать политику IAM, которая ограничивает действия для этой зоны:

{
   "Statement":[
      {
         "Action":[
            "route53:*"
         ],
         "Effect":"Allow",
         "Resource":[
            "arn:aws:route53:::hostedzone/<The new zone ID>"
         ]
      },
      {
         "Action":[
            "route53:ListHostedZones"
         ],
         "Effect":"Allow",
         "Resource":[
            "*"
         ]
      }
   ]
}

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

...