

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

# PutFileSystemPolicy
<a name="API_PutFileSystemPolicy"></a>

將 Amazon EFS `FileSystemPolicy` 套用至 Amazon EFS 檔案系統。檔案系統政策是以 IAM 資源為基礎的政策，可包含多個政策聲明。檔案系統一律只有一個檔案系統政策，這些政策可以是預設原則或顯式政策集，或使用此 API 操作更新的政策。EFS 檔案系統政策字元限制為 20,000 以内。設定顯式政策時，該政策會覆寫預設政策。如需預設檔案系統政策的詳細資訊，請參閱[預設 EFS 檔案系統政策](https://docs.aws.amazon.com/efs/latest/ug/iam-access-control-nfs-efs.html#default-filesystempolicy)。

**注意**  
EFS 檔案系統政策字元限制為 20,000 以内。

這項操作需要 `elasticfilesystem:PutFileSystemPolicy` 動作的許可。

## 請求語法
<a name="API_PutFileSystemPolicy_RequestSyntax"></a>

```
PUT /2015-02-01/file-systems/FileSystemId/policy HTTP/1.1
Content-type: application/json

{
   "BypassPolicyLockoutSafetyCheck": boolean,
   "Policy": "string"
}
```

## URI 請求參數
<a name="API_PutFileSystemPolicy_RequestParameters"></a>

請求會使用下列 URI 參數。

 ** [FileSystemId](#API_PutFileSystemPolicy_RequestSyntax) **   <a name="efs-PutFileSystemPolicy-request-uri-FileSystemId"></a>
您要建立或更新 `FileSystemPolicy` 的 EFS 檔案系統 ID。  
長度限制：長度上限為 128。  
模式：`^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:file-system/fs-[0-9a-f]{8,40}|fs-[0-9a-f]{8,40})$`  
必要：是

## 請求主體
<a name="API_PutFileSystemPolicy_RequestBody"></a>

請求接受採用 JSON 格式的下列資料。

 ** [BypassPolicyLockoutSafetyCheck](#API_PutFileSystemPolicy_RequestSyntax) **   <a name="efs-PutFileSystemPolicy-request-BypassPolicyLockoutSafetyCheck"></a>
(選用) 用於指定是否繞過 `FileSystemPolicy` 政策鎖定安全檢查的布林值。鎖定安全檢查會決定請求中的政策是否鎖定 (阻止) 提出請求的 IAM 主體在此檔案系統上提出未來的 `PutFileSystemPolicy` 請求。僅當您打算阻止提出請求的 IAM 主體在此檔案系統上提出後續的 `PutFileSystemPolicy` 請求時，才將 `BypassPolicyLockoutSafetyCheck` 設定為 `True`。預設值為 `False`。  
類型：布林值  
必要：否

 ** [Policy](#API_PutFileSystemPolicy_RequestSyntax) **   <a name="efs-PutFileSystemPolicy-request-Policy"></a>
您正在建立 `FileSystemPolicy`。接受 JSON 格式化政策定義。EFS 檔案系統政策字元限制為 20,000 以内。若要進一步了解構成檔案系統政策的元素，請參閱 [Amazon EFS 中的資源型政策](https://docs.aws.amazon.com/efs/latest/ug/security_iam_service-with-iam.html#security_iam_service-with-iam-resource-based-policies)。  
類型：字串  
長度限制：長度下限為 1。長度上限為 20,000。  
模式：`[\s\S]+`  
必要：是

## 回應語法
<a name="API_PutFileSystemPolicy_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "FileSystemId": "string",
   "Policy": "string"
}
```

## 回應元素
<a name="API_PutFileSystemPolicy_ResponseElements"></a>

如果動作成功，則服務傳回 HTTP 200 回應。

服務會傳回下列 JSON 格式的資料。

 ** [FileSystemId](#API_PutFileSystemPolicy_ResponseSyntax) **   <a name="efs-PutFileSystemPolicy-response-FileSystemId"></a>
指定 `FileSystemPolicy` 套用的 EFS 檔案系統。  
類型：字串  
長度限制：長度上限為 128。  
模式：`^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:file-system/fs-[0-9a-f]{8,40}|fs-[0-9a-f]{8,40})$`

 ** [Policy](#API_PutFileSystemPolicy_ResponseSyntax) **   <a name="efs-PutFileSystemPolicy-response-Policy"></a>
適用於 EFS 檔案系統的 JSON 格式化 `FileSystemPolicy`。  
類型：字串  
長度限制：長度下限為 1。長度上限為 20,000。  
模式：`[\s\S]+`

## 錯誤
<a name="API_PutFileSystemPolicy_Errors"></a>

 ** BadRequest **   
如果請求格式錯誤或包含錯誤，例如無效的參數值或缺少必要參數，則傳回。    
 ** ErrorCode **   
錯誤代碼是一個字串，專門用於識別錯誤狀況。偵測及依類型處理錯誤的程式必須讀取及了解此代碼。  
 ** Message **   
錯誤訊息包含錯誤狀況的一般英文描述，目標對象是人。一般簡單的程式在發生其無法處理的錯誤狀況時，會直接對最終使用者顯示訊息。複雜一些的程式因為錯誤處理更加周密，而且經過適當的國際化，所以很可能會忽略錯誤訊息。
HTTP 狀態碼：400

 ** FileSystemNotFound **   
如果指定的`FileSystemId`值不存在於請求者的 中，則傳回 AWS 帳戶。    
 ** ErrorCode **   
錯誤代碼是一個字串，專門用於識別錯誤狀況。偵測及依類型處理錯誤的程式必須讀取及了解此代碼。  
 ** Message **   
錯誤訊息包含錯誤狀況的一般英文描述，目標對象是人。一般簡單的程式在發生其無法處理的錯誤狀況時，會直接對最終使用者顯示訊息。複雜一些的程式因為錯誤處理更加周密，而且經過適當的國際化，所以很可能會忽略錯誤訊息。
HTTP 狀態碼：404

 ** IncorrectFileSystemLifeCycleState **   
如果檔案系統的生命週期狀態不是「可用」，則傳回。    
 ** ErrorCode **   
錯誤代碼是一個字串，專門用於識別錯誤狀況。偵測及依類型處理錯誤的程式必須讀取及了解此代碼。  
 ** Message **   
錯誤訊息包含錯誤狀況的一般英文描述，目標對象是人。一般簡單的程式在發生其無法處理的錯誤狀況時，會直接對最終使用者顯示訊息。複雜一些的程式因為錯誤處理更加周密，而且經過適當的國際化，所以很可能會忽略錯誤訊息。
HTTP 狀態碼：409

 ** InternalServerError **   
如果伺服器端發生錯誤，則傳回。    
 ** ErrorCode **   
錯誤代碼是一個字串，專門用於識別錯誤狀況。偵測及依類型處理錯誤的程式必須讀取及了解此代碼。  
 ** Message **   
錯誤訊息包含錯誤狀況的一般英文描述，目標對象是人。一般簡單的程式在發生其無法處理的錯誤狀況時，會直接對最終使用者顯示訊息。複雜一些的程式因為錯誤處理更加周密，而且經過適當的國際化，所以很可能會忽略錯誤訊息。
HTTP 狀態碼：500

 ** InvalidPolicyException **   
如果 `FileSystemPolicy` 格式錯誤或包含錯誤，例如無效的參數值或缺少必要參數，則傳回。如果出現政策鎖定安全檢查錯誤，則傳回。    
 ** ErrorCode **   
錯誤代碼是一個字串，專門用於識別錯誤狀況。偵測及依類型處理錯誤的程式必須讀取及了解此代碼。  
 ** Message **   
錯誤訊息包含錯誤狀況的一般英文描述，目標對象是人。一般簡單的程式在發生其無法處理的錯誤狀況時，會直接對最終使用者顯示訊息。複雜一些的程式因為錯誤處理更加周密，而且經過適當的國際化，所以很可能會忽略錯誤訊息。
HTTP 狀態碼：400

## 範例
<a name="API_PutFileSystemPolicy_Examples"></a>

### 建立 EFS FileSystemPolicy。
<a name="API_PutFileSystemPolicy_Example_1"></a>

下列請求會建立 `FileSystemPolicy`，允許所有 AWS 主體掛載具有讀取和寫入許可的指定 EFS 檔案系統。

#### 請求範例
<a name="API_PutFileSystemPolicy_Example_1_Request"></a>

```
PUT /2015-02-01/file-systems/fs-01234567/file-system-policy HTTP/1.1
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "elasticfilesystem:ClientMount",
                "elasticfilesystem:ClientWrite"
            ],
            "Principal": {
                "AWS": ["*"]
            },
        }
    ]
}
```

#### 回應範例
<a name="API_PutFileSystemPolicy_Example_1_Response"></a>

```
{
    "Version": "2012-10-17",		 	 	 
    "Id": "1",
    "Statement": [
        {
            "Sid": "efs-statement-abcdef01-1111-bbbb-2222-111122224444",
            "Effect": "Allow",
            "Action": [
                "elasticfilesystem:ClientMount",
                "elasticfilesystem:ClientWrite"
            ],
            "Principal": {
                "AWS": ["*"]
            },
            "Resource":"arn:aws:elasticfilesystem:us-east-1:1111222233334444:file-system/fs-01234567"
        }
    ]
}
```

## 另請參閱
<a name="API_PutFileSystemPolicy_SeeAlso"></a>

如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊，請參閱下列內容：
+  [AWS 命令列界面 V2](https://docs.aws.amazon.com/goto/cli2/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 .NET V4 的 SDK](https://docs.aws.amazon.com/goto/DotNetSDKV4/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 C\$1\$1 的 SDK](https://docs.aws.amazon.com/goto/SdkForCpp/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 Go 的 SDK v2](https://docs.aws.amazon.com/goto/SdkForGoV2/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 Java V2 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaV2/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 JavaScript V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 Kotlin 的 SDK](https://docs.aws.amazon.com/goto/SdkForKotlin/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 PHP V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForPHPV3/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 Python 的 SDK](https://docs.aws.amazon.com/goto/boto3/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 
+  [AWS 適用於 Ruby V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForRubyV3/elasticfilesystem-2015-02-01/PutFileSystemPolicy) 