本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 中使用端點 AWS CLI
若要以程式設計方式連線至 AWS 服務,您可以使用端點。端點是 AWS Web 服務的進入點URL的 。 AWS Command Line Interface (AWS CLI) 會自動為 中的每個服務使用預設端點 AWS 區域,但您可以為API請求指定替代端點。
端點主題
設定單一命令的端點
若要取代單一命令的任何端點設定或環境變數,請使用 --endpoint-url
命令列選項。下列命令範例使用自訂 Amazon S3 端點 URL。
$
aws s3 ls --endpoint-url
http://localhost:4567
設定所有 的全域端點 AWS 服務
若要將所有 服務的請求路由至自訂端點 URL,請使用下列其中一項設定:
-
環境變數:
-
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
- 忽略設定的端點 URLs。 -
AWS_ENDPOINT_URL
- 設定全域端點 URL。
-
-
config
檔案:-
ignore_configure_endpoint_urls
- 忽略設定的端點 URLs。ignore_configure_endpoint_urls = true
-
endpoint_url
- 設定全域端點 URL。endpoint_url =
http://localhost:4567
-
服務特定端點和 --endpoint-url
命令列選項會覆寫任何全域端點。
設定為對所有 使用FIPs端點 AWS 服務
若要路由所有 服務的請求以使用FIPs端點,請使用下列其中一項:
-
AWS_USE_FIPS_ENDPOINT
環境變數。 -
use_fips_endpoint
檔案設定。use_fips_endpoint = true
某些 AWS 服務在某些 中提供支援聯邦資訊處理標準 (FIPS) 140-2
如果啟用此設定,但 中的服務不存在FIPS端點 AWS 區域,則 AWS 命令可能會失敗。在此情況下,請使用 --endpoint-url
選項或使用服務特定端點手動指定要在命令中使用的端點。
如需依 指定FIPS端點的詳細資訊 AWS 區域,請參閱依FIPS服務區分的端點。
設定為所有 AWS 服務使用雙堆疊端點
若要路由所有服務的請求以使用雙堆疊端點 (如果可用),請使用下列其中一項:
-
AWS_USE_DUALSTACK_ENDPOINT
環境變數。 -
use_dualstack_endpoint
檔案設定。use_dualstack_endpoint = true
啟用雙堆疊端點傳送 AWS 請求。若要進一步了解支援 IPv4和 IPv6流量的雙堆疊端點,請參閱Amazon Simple Storage Service 使用者指南中的使用 Amazon S3 雙堆疊端點。雙堆疊端點適用於部分區域的某些服務。如果 服務或 不存在雙堆疊端點 AWS 區域,則請求會失敗。此選項根據預設為停用。
設定服務特定端點
服務特有的端點組態提供選項,讓您針對 AWS CLI 請求使用您選擇的持久性端點。這些設定提供彈性,以支援本機端點、VPC端點和第三方本機 AWS 開發環境。不同的端點可用於測試和生產環境。您可以URL為個別 指定端點 AWS 服務。
可以使用下列方式來指定服務特定端點:
-
單一指令的命令列選項
--endpoint-url
。 -
環境變數:
-
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
- 忽略所有設定的端點 URLs,除非在命令列上指定。 -
AWS_ENDPOINT_URL_<SERVICE>
- 指定用於特定服務的自訂端點,其中<SERVICE>
會以 AWS 服務 識別碼取代。如需所有服務特定變數,請參閱 服務特定端點:服務特定識別碼清單。
-
-
config
檔案:-
ignore_configure_endpoint_urls
- 忽略所有設定的端點 URLs,除非使用環境變數或在命令列上指定。 -
config
檔案的 services 部分與endpoint_url
檔案設定結合。
-
服務特定端點主題:
服務特定端點:環境變數
環境變數會覆寫組態檔中的設定,但不會覆寫命令列上指定的選項。如果您希望所有設定檔都使用裝置上的相同端點,請使用環境變數。
以下是服務特定的環境變數:
-
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
- 忽略所有設定的端點 URLs,除非在命令列上指定。 -
AWS_ENDPOINT_URL_<SERVICE>
- 指定用於特定服務的自訂端點,其中<SERVICE>
會取代為 AWS 服務 識別符。如需所有服務特定變數,請參閱 服務特定端點:服務特定識別碼清單。下列環境變數範例會設定 AWS Elastic Beanstalk的端點。
如需有關設定環境變數的詳細資訊,請參閱 設定 的環境變數 AWS CLI。
服務特定端點:共用 config
檔案
在共用 config
檔案中,endpoint_url
用於多個部分。若要設定服務特定端點,請使用巢狀化在 services
區段中服務識別碼金鑰下的 endpoint_url
設定。如需在共用 config
檔案中定義 services
區段的詳細資訊,請參閱 區段類型:services。
下列範例使用 services
區段來設定 URL Amazon S3 的服務特定端點,以及所有其他 服務的自訂全域端點:
[profile
dev1
] endpoint_url =http://localhost:1234
services =s3-specific
[servicestesting-s3
] s3 = endpoint_url =http://localhost:4567
單一設定檔可以設定多個服務的端點。下列範例會在相同的設定檔 AWS Elastic Beanstalk 中設定 URLs Amazon S3 和 的服務特定端點。
如需要在 services
區段中使用的所有服務識別碼金鑰的清單,請參閱 服務特定識別碼清單。
[profile
dev1
] services =testing-s3-and-eb
[servicestesting-s3-and-eb
] s3 = endpoint_url =http://localhost:4567
elastic_beanstalk = endpoint_url =http://localhost:8000
服務組態區段可用於多個設定檔。以下範例有兩個設定檔使用相同的 services
定義:
[profile
dev1
] output = json services =testing-s3
[profiledev2
] output = text services =testing-s3
[servicestesting-s3
] s3 = endpoint_url =https://localhost:4567
服務特定端點:服務特定識別碼清單
AWS 服務 識別符是以API模型為基礎serviceId
,方法是將所有空格替換為底線,並縮小所有字母大小。
下列服務識別符範例使用 AWS Elastic Beanstalk。 AWS Elastic Beanstalk 具有 serviceId
的 Elastic Beanstalk
,因此服務識別符金鑰為 elastic_beanstalk
。
下表列出所有服務特定識別碼、config
檔案金鑰和環境變數。
端點組態和設定優先順序
端點組態設定位於多個位置,例如系統或使用者環境變數、本機 AWS 組態檔案,或在命令列上明確宣告為 參數。 AWS CLI 端點組態設定的優先順序如下:
-
--endpoint-url
命令列選項。 -
如果啟用,則
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
全域端點環境變數或設定檔設定ignore_configure_endpoint_urls
將忽略自訂端點。 -
服務特定環境變數
AWS_ENDPOINT_URL_<SERVICE>
所提供的值,例如AWS_ENDPOINT_URL_DYNAMODB
。 -
AWS_USE_DUALSTACK_ENDPOINT
、AWS_USE_FIPS_ENDPOINT
和AWS_ENDPOINT_URL
環境變數所提供的值。 -
共用
config
檔案services
區段內的endpoint_url
設定所提供的服務特定端點值。 -
共用
config
檔案的profile
中的endpoint_url
設定所提供的值。 -
最後 AWS 服務 會使用URL個別 的任何預設端點。如需每個區域可用的標準服務端點清單,請參閱 Amazon Web Services 一般參考 中的 AWS 區域與端點。