Как CodeCommit различает одинаковые репо в разных учетных записях? - PullRequest
0 голосов
/ 26 сентября 2018

Я столкнулся со странной ситуацией развертывания, связанной с codecommit в облачной форме.

AWS CodeCommit позволяет мне создавать одно и то же имя репозитория в одном и том же регионе в двух отдельных учетных записях AWS.Оба хранилища имеют одинаковую конечную точку SSH (ssh: //git-codecommit.us-west-2.amazonaws.com/v1/repos/ [reponame])

Я также смог добавить тот же SSHключ к обеим моим учетным записям IAM, чтобы предоставить доступ к этим двум одноименным репозиториям.

Помимо удаления дубликата и повторного создания его с уникальным именем, как можно было бы различить, какой репозиторий вы отправляете или извлекаете изс мерзавцем?

1 Ответ

0 голосов
/ 26 сентября 2018

Я получил его на работу вскоре после того, как наконец спросил здесь.Мне нужно было настроить разные публичные ключи для каждой учетной записи AWS и прикрепить уникальные ключи к отдельным пользователям AWS IAM.Затем я смог обновить мой конфигурационный файл .ssh следующим образом:

Host codecommit-acct1
  Hostname git-codecommit.us-west-2.amazonaws.com
  User [ssh_key_id_1]
  IdentityFile ~/.ssh/[ssh_private_key_1]

Host codecommit-acct2
  Hostname git-codecommit.us-west-2.amazonaws.com
  User [ssh_key_id_2]
  IdentityFile ~/.ssh/[ssh_private_key_2]

Мои файлы конфигурации репозитория Git могли использовать 'codecommit-acct1' в качестве имени хоста и были настроены на использование уникальных ключей SSH,который дал AWS достаточно информации, чтобы определить, с какой учетной записью IAM проходить аутентификацию.

[remote "origin1"]
    url = ssh://codecommit-acct1/v1/repos/[repo_name]
    fetch = +refs/heads/*:refs/remotes/origin/*

[remote "origin2"]
    url = ssh://codecommit-acct2/v1/repos/[repo_name]
    fetch = +refs/heads/*:refs/remotes/origin/*

Я нашел решение на форумах AWS здесь: https://forums.aws.amazon.com/thread.jspa?threadID=228206

...