

AWS Tools for PowerShell V4 已進入維護模式。

我們建議您遷移至 [AWS Tools for PowerShell V5](https://docs.aws.amazon.com/powershell/v5/userguide/)。如需如何遷移的其他詳細資訊和資訊，請參閱我們的[維護模式公告](https://aws.amazon.com/blogs/developer/aws-tools-for-powershell-v4-maintenance-mode-announcement/)。

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

# 在 cmdlets 中使用用 ClientConfig 參數
<a name="pstools-clientconfig"></a>

當您連線至服務時，此 `ClientConfig` 參數可用來指定特定組態設定。此參數的大部分可能屬性都是在 [https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/TClientConfig.html](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/TClientConfig.html)類別中定義，其會繼承至 APIs。 AWS 請參閱 [https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Keyspaces/TKeyspacesConfig.html](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Keyspaces/TKeyspacesConfig.html) 類別以查看簡易的繼承範例。此外，特定服務會定義其他僅適用於該服務的屬性。請參閱 [https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/S3/TS3Config.html](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/S3/TS3Config.html) 類別以查看其他屬性的範例，尤其是 `ForcePathStyle` 屬性。

## 使用 `ClientConfig` 參數。
<a name="clientconfig-operation"></a>

若要使用 `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
```

## 使用未定義的屬性
<a name="clientconfig-undefined"></a>

使用 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 區域
<a name="clientconfig-region"></a>

您可以使用 `ClientConfig` 參數來設定 命令 AWS 區域 的 。Region (區域) 是透過 `RegionEndpoint` 屬性進行設定。會根據下列優先順序 AWS Tools for PowerShell 計算要使用的區域：

1. `-Region` 參數

1. 在 `ClientConfig` 參數中傳遞的區域

1. PowerShell 工作階段狀態

1. 共用 AWS `config`檔案

1. 環境變數

1. Amazon EC2 執行個體中繼資料 (若已啟用)。