2016-05-31 85 views
2

我有以下問題。作爲我工作的一部分,我處理多個AWS賬戶,每個賬戶都有一個單獨的AWS CodeCommit回購和特定於賬戶的IAM用戶(導致用戶ID不同)如何配置AWS CodeCommit配置文件的特定回購

我想找到一種方法可以配置我的SSH訪問取決於回購

目前,它正常工作,不同的帳戶作爲我的配置文件看起來像這樣:

Host git-codecommit.*.amazonaws.com 
    User APKAEIBAERJR2EXAMPLE 
    IdentityFile ~/.ssh/codecommit_rsa 

我需要什麼,是要能夠添加使用不同的帳戶,以便不同的回購協議我不必每次從一個項目切換到另一個項目時編輯配置文件,即

#Use this User ID and ssh-key for repo A 
Host git-codecommit.*.amazonaws.com 
    User IAMUSERIDFROMACCOUNT1 
    IdentityFile ~/.ssh/codecommit_rsa 

#Use this User ID and ssh-key for repo B 
Host git-codecommit.*.amazonaws.com 
    User IAMUSERFROMANOTHERAWSACCOUNT 
    IdentityFile ~/.ssh/codecommit_rsa 

我瀏覽過的地方都沒有找到正確的答案。預先感謝您對此主題的任何幫助。

Regards

回答

3

你在正確的軌道上:-)。您需要修改您的配置文件併爲每個用戶/ IdentityFile對創建一個Host條目。例如:

Host git-account1 
    User IAMUSERIDFROMACCOUNT1 
    IdentityFile ~/.ssh/codecommit 
    HostName git-codecommit.us-east-1.amazonaws.com 
Host git-account2 
    User IAMUSERIDFROMACCOUNT2 
    IdentityFile ~/.ssh/codecommit 
    HostName git-codecommit.us-east-1.amazonaws.com 
Host git-account3 
    User IAMUSERIDFROMACCOUNT3 
    IdentityFile ~/.ssh/codecommit 
    HostName git-codecommit.us-east-1.amazonaws.com 

使用Git的命令行是這樣的:

混帳克隆的ssh://混帳帳戶1/V1 /回購/ AccountOneRepo

混帳克隆的ssh:// GIT-帳戶2/V1 /回購/ AccountTwoRepo

GIT中克隆的ssh:// GIT-account3/V1 /回購/ AccountThreeRepo

+0

謝謝。我會馬上嘗試。 –

+0

你應該使用什麼「git-accoint-n」?因爲AWS不以這種方式接受連接。 –

+0

你的配置文件是什麼樣的? ssh會將主機值轉換爲HostName值。 –