Проект Acccess Google Cloud DNS Cross

Я пытаюсь получить cert-manager в проекте B для автоматической настройки сертификата, но для того, чтобы проблема DNS01 работала для clusterIssuer, мне нужно, чтобы он получил доступ к облачному DNS проекта A.

У меня есть два отдельных проекта в Google Cloud на моем первом, скажем Project A, у меня есть настройка Cloud DNS, которую я хочу получить из проекта B. Я создал учетную запись службы в Project A и активировал ее в gcloud с помощью

gcloud auth activate-service-account --key-file=projectA-service-account.json

а затем скопировал адрес электронной почты учетной записи службы и перешел в Project B в консоли Google Cloud, в IAM и решил создать нового участника, вставил электронное письмо и щелкнул всплывающее сообщение IAM, добавив роль «Администратор DNS». Благодаря этому я, кажется, получаю доступ только к облачному DNS проекта B, и если я попытаюсь сделать это в обратном порядке, я установлю учетную запись службы в Project B, я получу только

ERROR: (gcloud.dns.record-sets.list) HTTPError 404: The 'parameters.managedZone' resource named 'test-zone' does not exist.

Я стараюсь следовать: https://stackoverflow.com/a/35558464/10516964

Есть ли у кого-нибудь идеи о том, как я могу получить доступ к Cloud DNS в проекте A из проекта B?

РЕДАКТИРОВАТЬ: Решено, я просто использовал неправильный ключевой файл, см. Ответ ниже.


person Pontus Nyberg    schedule 15.08.2019    source источник


Ответы (1)


Мне удалось это решить.

Это сработало, я просто не сохранил правильный ключевой файл в секрете, поэтому у clusterIssuer были неправильные учетные данные. Сработало намного лучше, когда я сохранил ключ из проекта A и поместил его в секрет в проекте B и заставил этот clusterIssuer использовать его. DNS01 Сразу после этого заработал.

person Pontus Nyberg    schedule 15.08.2019