環境變數是作業系統特定的系統級參數,包含特定名稱和特定值,為運行在作業系統上的應用程式提供運行環境設定。本文為您詳細介紹在Linux、macOS和Windows系統的環境變數中設定阿里雲AccessKey的方法。
阿里雲帳號擁有所有的存取權限,風險很高。強烈建議您建立並使用RAM使用者進行訪問或日常營運。請根據業務的實際情況按需分配許可權後進行介面調用。RAM使用者需具備操作對應資源的許可權。如何擷取RAM使用者的AccessKey,請參見建立AccessKey、為RAM使用者授權和查看RAM使用者的AccessKey資訊。使用AccessKey調用API時,強烈反對在代碼中明文傳入AccessKey,請配置環境變數或使用其它安全的非明文AccessKey方案。
在Linux和macOS系統內容變數中設定阿里雲AccessKey
以設定環境變數ALIBABA_CLOUD_ACCESS_KEY_ID
和ALIBABA_CLOUD_ACCESS_KEY_SECRET
為例。變數名稱可以根據實際情況進行替換,例如OSS_ACCESS_KEY_ID
、OSS_ACCESS_KEY_SECRET
。
重要
使用export命令配置的臨時環境變數僅當前會話有效,當會話退出之後所設定的環境變數將會丟失。若需長期保留環境變數,可將export命令配置到對應作業系統的啟動設定檔中。
在Windows系統內容變數中設定阿里雲AccessKey
以設定環境變數ALIBABA_CLOUD_ACCESS_KEY_ID
和ALIBABA_CLOUD_ACCESS_KEY_SECRET
為例。變數名稱可以根據實際情況進行替換,例如OSS_ACCESS_KEY_ID
、OSS_ACCESS_KEY_SECRET
。
通過圖形化使用者介面GUI
通過命令列提示符CMD
通過Windows PowerShell
操作步驟
以下為Windows 10中通過圖形化使用者介面設定環境變數的步驟。
在案頭按右鍵此電腦,選擇屬性>進階系統設定>環境變數>系統變數/使用者變數>建立,完成以下配置:
變數 | 樣本值 |
AccessKey ID | |
AccessKey Secret | |
測試設定是否成功
單擊開始(或快速鍵:Win+R)> 運行(輸入 cmd)> 確定(或按 Enter 鍵),開啟命令提示字元,執行echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
、echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%
命令。若返回正確的AccessKey,則說明配置成功。
操作步驟
以管理員身份開啟命令提示字元,並使用以下命令在系統中新增環境變數。
setx ALIBABA_CLOUD_ACCESS_KEY_ID LTAI4GDty8ab9W******** /M
setx ALIBABA_CLOUD_ACCESS_KEY_SECRET IrVTNZNy5yQelTETg0cZML******** /M
其中/M
表示系統級環境變數,設定使用者級環境變數時可以不攜帶該參數。
測試設定是否成功
單擊開始(或快速鍵:Win+R)> 運行(輸入 cmd)> 確定(或按 Enter 鍵),開啟命令提示字元,執行echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
、echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%
命令。若返回正確的AccessKey,則說明配置成功。
在PowerShell中,設定新的環境變數(對所有新會話都有效):
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'LTAI4GDty8ab9W********', [System.EnvironmentVariableTarget]::User)
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'IrVTNZNy5yQelTETg0cZML********', [System.EnvironmentVariableTarget]::User)
為所有使用者佈建環境變數(需要管理員權限):
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'LTAI4GDty8ab9W********', [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'IrVTNZNy5yQelTETg0cZML********', [System.EnvironmentVariableTarget]::Machine)
設定臨時的環境變數(僅當前會話有效):
$env:ALIBABA_CLOUD_ACCESS_KEY_ID = "LTAI4GDty8ab9W********"
$env:ALIBABA_CLOUD_ACCESS_KEY_SECRET = "IrVTNZNy5yQelTETg0cZML********"
在PowerShell中,執行Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_ID
、Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_SECRET
命令。若返回正確的AccessKey,則說明配置成功。
重要
環境變數配置完成之後,為確保新的設定被正確應用,您可能需要重啟相關的開發工具(IDE等)或服務。