使用環境變數全域設定 AWS SDKs和工具 - AWS SDKs和工具

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用環境變數全域設定 AWS SDKs和工具

環境變數提供另一種方式,可在使用 AWS SDKs和工具時指定組態選項和登入資料。環境變數對於編寫指令碼或暫時將具名描述檔設定為預設值非常有用。如需大多數 SDKs 支援的環境變數清單,請參閱 環境變數清單

選項的優先順序
  • 如果您使用環境變數指定設定,則會覆寫從共用 AWS configcredentials檔案中的設定檔載入的任何值。

  • 如果您在 AWS CLI 命令列上使用 參數來指定設定,它會覆寫來自對應環境變數或組態檔案中設定檔的任何值。

如何設定環境變數

下列範例說明如何為預設使用者設定環境變數。

Linux, macOS, or Unix
$ export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE $ export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY $ export AWS_SESSION_TOKEN=AQoEXAMPLEH4aoAH0gNCAPy...truncated...zrkuWJOgQs8IZZaIv2BXIa2R4Olgk $ export AWS_REGION=us-west-2

設定環境變數會變更使用的數值,直到 Shell 工作階段結束或直到您將該變數設為其他數值。您可以在 Shell 的啟動指令碼中設定變數,讓它們跨未來的工作階段持續生效。

Windows Command Prompt
C:\> setx AWS_ACCESS_KEY_ID AKIAIOSFODNN7EXAMPLE C:\> setx AWS_SECRET_ACCESS_KEY wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY C:\> setx AWS_SESSION_TOKEN AQoEXAMPLEH4aoAH0gNCAPy...truncated...zrkuWJOgQs8IZZaIv2BXIa2R4Olgk C:\> setx AWS_REGION us-west-2

使用 set來設定環境變數會變更使用的值,直到目前的命令提示詞工作階段結束,或直到您將變數設定為不同的值為止。使用 setx設定環境變數,會變更目前命令提示工作階段和您在執行命令後建立的所有命令提示工作階段中使用的值。不會影響您執行命令當時已執行的其他命令 Shell。

PowerShell
PS C:\> $Env:AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" PS C:\> $Env:AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" PS C:\> $Env:AWS_SESSION_TOKEN="AQoEXAMPLEH4aoAH0gNCAPy...truncated...zrkuWJOgQs8IZZaIv2BXIa2R4Olgk" PS C:\> $Env:AWS_REGION="us-west-2"

如果您在 PowerShell 提示字元中設定環境變數 (如前一個範例所示),它只會在目前的工作階段儲存該數值。若要讓環境變數設定在所有 PowerShell 和命令提示字元工作階段中持續存在,請使用 Control Panel (控制面板) 中的 System (系統) 應用程式。或者,您也可以將變數新增到 PowerShell 設定檔,為所有未來 PowerShell 工作階段設定變數。如需有關存放環境變數或跨工作階段持續存放的詳細資訊,請參閱 PowerShell 文件

無伺服器環境變數設定

如果您使用無伺服器架構進行開發,您還有其他設定環境變數的選項。根據您的容器,您可以針對在這些容器中執行的程式碼使用不同的策略,以查看和存取環境變數,類似於非雲端環境。

例如,使用 AWS Lambda,您可以直接設定環境變數。如需詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的使用 AWS Lambda 環境變數

在無伺服器架構中,您通常可以在環境設定下的提供者金鑰下,在 serverless.yml 檔案中設定 SDK 環境變數。如需 serverless.yml 檔案的資訊,請參閱 Serverless Framework 文件中的一般函數設定

無論您使用哪種機制來設定容器環境變數,容器都會保留一些 ,例如在定義的執行期環境變數中記錄 Lambda 的 。請務必參閱您所使用的容器官方文件,以判斷環境變數的處理方式,以及是否有任何限制。