AWS Tools for PowerShell 第 5 版 (V5) 正在預覽。若要查看可能變更的 V5 內容,並試用新版本,請參閱版本 5 (預覽) 使用者指南。如需有關中斷變更和遷移至 V5 的特定資訊,請參閱該指南中的遷移主題。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 cmdlets 中使用用 ClientConfig 參數
當您連線至服務時,此 ClientConfig
參數可用來指定特定組態設定。此參數的大部分可能屬性都是在 Amazon.Runtime.ClientConfig
類別中定義,其會繼承至 APIs。 AWS 請參閱 Amazon.Keyspaces.AmazonKeyspacesConfig
類別以查看簡易的繼承範例。此外,特定服務會定義其他僅適用於該服務的屬性。請參閱 Amazon.S3.AmazonS3Config
類別以查看其他屬性的範例,尤其是 ForcePathStyle
屬性。
使用 ClientConfig
參數。
若要使用 ClientConfig
參數,您可以在命令列上將其指定為 ClientConfig
物件,或使用 PowerShell splatting 將參數值集合當做一個單位傳遞給命令。這些方法如下範例所示。這些範例預設 AWS.Tools.S3
模組已安裝並匯入,而且您的 [default]
憑證設定檔具有適當權限。
定義 ClientConfig
物件
$s3Config = New-Object -TypeName Amazon.S3.AmazonS3Config $s3Config.ForcePathStyle = $true $s3Config.Timeout = [TimeSpan]::FromMilliseconds(150000) Get-S3Object -BucketName <BUCKET_NAME> -ClientConfig $s3Config
使用 PowerShell splatting 新增 ClientConfig
屬性
$params=@{ ClientConfig=@{ ForcePathStyle=$true Timeout=[TimeSpan]::FromMilliseconds(150000) } BucketName="<BUCKET_NAME>" } Get-S3Object @params
使用未定義的屬性
使用 PowerShell 潑濺時,如果您指定不存在的ClientConfig
屬性,在執行時間之前, AWS Tools for PowerShell 不會偵測到錯誤,此時會傳回例外狀況。依上述修改範例:
$params=@{ ClientConfig=@{ ForcePathStyle=$true UndefinedProperty="Value" Timeout=[TimeSpan]::FromMilliseconds(150000) } BucketName="<BUCKET_NAME>" } Get-S3Object @params
此範例會產生類似下列的例外狀況:
Cannot bind parameter 'ClientConfig'. Cannot create object of type "Amazon.S3.AmazonS3Config". The UndefinedProperty property was not found for the Amazon.S3.AmazonS3Config object.
指定 AWS 區域
您可以使用 ClientConfig
參數來設定 命令 AWS 區域 的 。Region (區域) 是透過 RegionEndpoint
屬性進行設定。會根據下列優先順序 AWS Tools for PowerShell 計算要使用的區域:
-
-Region
參數 -
在
ClientConfig
參數中傳遞的區域 -
PowerShell 工作階段狀態
-
共用 AWS
config
檔案 -
環境變數
-
Amazon EC2 執行個體中繼資料 (若已啟用)。