2017-06-16 30 views
0

是否有可能提供每個請求憑證的方式一樣AWS如何使用證書只是一個請求

aws sns create-topic my_topic --ACCESS-KEY XXXX --SECRET-KEY XXXX 

而不是做aws configure我打這個電話之前。

我知道可以通過使用--profile(如Using multiple profiles)來完成憑證管理,但這需要我保存憑證,而我不能這麼做。我依賴於用戶爲我提供密鑰作爲參數輸入。可能嗎?

回答

2

我相信在調用AWS CLI之前,您正在尋找的最接近的選項是set the credentials as environment variables

+0

但如果我設置的env變量將有來自衆多用戶的爭奪。似乎我將不得不使用不同的用戶帳戶。 – OrlandoL

+1

你是如何調用這個CLI命令的?您應該可以設置特定於該調用的環境變量。 –

+0

基本上我試圖用AWS不支持的語言來包裝CLI API。我希望這個API能夠在一個進程中處理多個用戶,而每個用戶使用他們自己的憑證。此外,我無法保存用戶的憑據,併爲他們創建不同的配置文件。所以最好的(不一定是現實的)選項只是期望憑證作爲輸入參數。 – OrlandoL

1

一種選擇是導出控制憑據的環境變量,然後調用所需的CLI。在bash對我來說,以下工作:

$ export AWS_ACCESS_KEY_ID=AKIXXXXXXXXXXXXXXXX AWS_SECRET_ACCESS_KEY=YhTYxxxxxxxxxxxxxxVCSi; aws sns create-topic my_topic 

您可能還需要看一看:Configuration Settings and Precedence

+0

感謝您的鏈接。如果保存配置文件和設置env是不可避免的,我將不得不尋找其他方法。 – OrlandoL

1

還有另一種方式。除了「導出」之外,只需運行如下命令:

AWS_ACCESS_KEY_ID=AAAA AWS_SECRET_ACCESS_KEY=BBB aws ec2 describe-regions 

這將確保僅爲命令設置憑證。