MySQL Shell S3 支援已針對以下 S3 相容儲存服務進行測試
-
Amazon Web Services S3
如需更多資訊,請參閱Amazon Simple Storage Service 文件。
-
Oracle Cloud Infrastructure 物件儲存
如需更多資訊,請參閱Amazon S3 相容 API。
MySQL Shell 支援在環境變數和設定檔中設定 AWS 認證。
組態參數按優先順序使用
選項。例如,
s3Profile
優先於環境變數AWS_PROFILE
和設定檔中的預設設定檔。環境變數。例如,環境變數
AWS_SHARED_CREDENTIALS_FILE
優先於credentials
檔案的預設位置~/.aws/credentials
。如果存在,則為 DEFAULT 環境變數。例如,環境變數
AWS_REGION
和環境變數AWS_DEFAULT_REGION
。設定檔中定義的參數。
AWS 預設值。
例如,對於 AWS 區域,按優先順序
s3Region
選項。AWS_REGION
環境變數。AWS_DEFAULT_REGION
環境變數。在設定檔中定義的區域。
us-east-1
的預設值。
AWS 認證按以下優先順序讀取
如果未定義
s3Profile
選項,則為環境變數。指定設定檔的認證檔案。
如設定檔中所定義的
credential_process
。此組態類型包含一個外部命令,用於擷取或產生 AWS 驗證認證,並將其寫入stdout
。指定設定檔的設定檔。
如需有關 AWS 環境變數的資訊,請參閱用於設定 AWS CLI 的環境變數
您可以定義以下 AWS S3 特定的環境變數
AWS_PROFILE
:指定要使用的設定檔名稱。它可以是認證或設定檔中的設定檔名稱,也可以是值default
以使用預設設定檔。此環境變數會覆寫設定檔中命名的[default]
設定檔。您可以使用--s3Profile
選項來覆寫此環境變數。AWS_SHARED_CREDENTIALS_FILE
:用於儲存存取金鑰的檔案位置。例如~/.aws/credentials
。AWS_CONFIG_FILE
:用於儲存組態設定檔的檔案位置。例如~/.aws/config
。AWS_REGION
:指定要將請求傳送至的 AWS 區域。此值會覆寫AWS_DEFAULT_REGION
環境變數和設定檔中定義的profile
。AWS_DEFAULT_REGION
:指定要將請求傳送至的 AWS 區域。如果指定,此值會被--s3Region
選項和AWS_REGION
環境變數覆寫。AWS_ACCESS_KEY_ID
:指定與 IAM 使用者或角色相關聯的 AWS 存取金鑰。AWS_SECRET_ACCESS_KEY
:指定與存取金鑰相關聯的密碼金鑰。此變數會覆寫設定檔中定義的aws_secret_access_key
。AWS_SESSION_TOKEN
:如果您使用暫時安全認證,請指定所需的會話權杖值。此變數會覆寫設定檔中定義的aws_session_token
。
MySQL Shell 在一個或多個設定檔中需要以下參數
aws_access_key_id
:指定與使用者相關聯的存取金鑰。如果不存在,則會擲回例外狀況。aws_secret_access_key
:指定與存取金鑰相關聯的密碼金鑰。如果不存在,則會擲回例外狀況。aws_session_token
:指定如果您使用暫時安全認證,則需要的會話權杖。如果不存在,則不會用於驗證使用者。region
:指定雲端服務區域。如果不存在,則會使用預設值us-east-1
。-
credential_process
:此組態類型包含一個外部命令,用於擷取或產生 AWS 驗證認證,並將其寫入stdout
。注意credential_process
只能在config
檔案中定義。如需更多資訊,請參閱以下內容
如果您已安裝並設定 AWS CLI,MySQL Shell 會自動從預設位置 .aws/
讀取連線參數。若要使用替代設定,請從命令列使用相關的覆寫選項執行此動作。
如果您使用 Oracle Cloud Infrastructure 的 S3 相容 API,請參閱建立客戶密碼金鑰以瞭解有關建立所需認證的資訊。
依預設,AWS CLI 會建立兩個設定檔:config
,用於儲存區域和輸出格式等參數,以及 credentials
,用於儲存存取金鑰和會話權杖。也可以將所有組態參數放置在單一檔案 config
中。如需更多資訊,請參閱AWS 組態和驗證設定。但是,如果您同時在兩個檔案中定義了存取金鑰和密碼存取金鑰,則 credentials
檔案中定義的那些金鑰會優先。
以下範例顯示一對預設的 AWS CLI 設定檔
/home/.aws/credentials
[default]
aws_access_key_id = AKIA6AV......
aws_secret_access_key = XHRY579I.....
/home/.aws/config
[default]
region = us-west-1
output = json