

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# CreateLocationObjectStorage
<a name="API_CreateLocationObjectStorage"></a>

为对象存储系统创建传输*位置*。 AWS DataSync 可以将此位置用作传输数据的源或目的地。无论有没有[DataSync代理人](https://docs.aws.amazon.com/datasync/latest/userguide/do-i-need-datasync-agent.html#when-agent-required)，您都可以进行转账。

在开始之前，请务必了解使用对象存储系统的[先决条件](https://docs.aws.amazon.com/datasync/latest/userguide/create-object-location.html#create-object-location-prerequisites)。 DataSync 

## 请求语法
<a name="API_CreateLocationObjectStorage_RequestSyntax"></a>

```
{
   "AccessKey": "string",
   "AgentArns": [ "string" ],
   "BucketName": "string",
   "CmkSecretConfig": { 
      "KmsKeyArn": "string",
      "SecretArn": "string"
   },
   "CustomSecretConfig": { 
      "SecretAccessRoleArn": "string",
      "SecretArn": "string"
   },
   "SecretKey": "string",
   "ServerCertificate": blob,
   "ServerHostname": "string",
   "ServerPort": number,
   "ServerProtocol": "string",
   "Subdirectory": "string",
   "Tags": [ 
      { 
         "Key": "string",
         "Value": "string"
      }
   ]
}
```

## 请求参数
<a name="API_CreateLocationObjectStorage_RequestParameters"></a>

有关所有操作的通用参数的信息，请参阅[常用参数](CommonParameters.md)。

请求接受采用 JSON 格式的以下数据。

 ** [AccessKey](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-AccessKey"></a>
如果需要凭证来向对象存储服务器进行身份验证，则指定访问密钥（例如，用户名）。  
类型：字符串  
长度限制：最小长度为 0。最大长度为 200。  
模式：`^.*$`  
必需：否

 ** [AgentArns](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-AgentArns"></a>
（可选）指定可以与您的对象存储系统连接的 DataSync 代理的 Amazon 资源名称 (ARNs)。如果设置的是无代理跨云传输，则无需为此参数指定值。  
首次创建存储位置时，务必确保正确配置此参数。创建代理后，就无法在存储位置添加或删除代理。
类型：字符串数组  
数组成员：最少 1 个物品。最多 8 项。  
长度限制：最大长度为 128。  
模式：`^arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:agent/agent-[0-9a-z]{17}$`  
必需：否

 ** [BucketName](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-BucketName"></a>
指定传输中涉及的对象桶的名称。  
类型：字符串  
长度限制：最小长度为 3。最大长度为 63。  
模式：`^[a-zA-Z0-9_\-\+\.\(\)\$\p{Zs}]+$`  
是否必需：是

 ** [CmkSecretConfig](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-CmkSecretConfig"></a>
指定由客户 DataSync AWS KMS key管理的密钥（包括 DataSync 用于访问特定对象存储位置的密钥）的配置信息。`SecretKey`  
当您在`CreateLocationObjectStorage`请求中包含此参数时，您仅提供 KMS 密钥 ARN。 DataSync 使用此 KMS 密钥和您为`SecretKey`参数指定的值来创建存储位置访问凭证的 DataSync托管密钥。  
确保该用户 DataSync 有权访问您指定的 KMS 密钥。有关更多信息，请参阅[使用使用自定义 AWS KMS key密钥加密的服务管理密钥](https://docs.aws.amazon.com/datasync/latest/userguide/location-credentials.html#service-secret-custom-key)。  
可使用 `CmkSecretConfig`（带有 `SecretKey`）或 `CustomSecretConfig`（不带 `SecretKey`）为 `CreateLocationObjectStorage` 请求提供凭证。不要为同一个请求提供这两个参数。
类型：[CmkSecretConfig](API_CmkSecretConfig.md) 对象  
必需：否

 ** [CustomSecretConfig](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-CustomSecretConfig"></a>
指定客户管理的 Secrets Manager 密钥的配置信息，其中特定对象存储位置的密钥以纯文本形式存储在 Secrets Manager 中。此配置包括密钥 ARN，以及提供密钥访问权限的 IAM 角色的 ARN。有关更多信息，请参阅[使用您管理的密钥](https://docs.aws.amazon.com/datasync/latest/userguide/location-credentials.html#custom-secret-custom-key)。  
可使用 `CmkSecretConfig`（带有 `SecretKey`）或 `CustomSecretConfig`（不带 `SecretKey`）为 `CreateLocationObjectStorage` 请求提供凭证。不要为同一个请求提供这两个参数。
类型：[CustomSecretConfig](API_CustomSecretConfig.md) 对象  
必需：否

 ** [SecretKey](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-SecretKey"></a>
如果需要凭证来向对象存储服务器进行身份验证，则指定私有密钥（例如，密码）。  
如果您使用提供密钥`SecretKey`，但未使用`CmkSecretConfig`或提供密钥配置详细信息`CustomSecretConfig`，则使用您 AWS 账户的 Secrets Manager 密钥 DataSync 存储令牌。
类型：字符串  
长度限制：最小长度为 0。最大长度为 200。  
模式：`^.*$`  
必需：否

 ** [ServerCertificate](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-ServerCertificate"></a>
如果您的对象存储系统使用私有或自签名证书颁发机构 (CA)，则指定一个证书链， DataSync 以便在对象存储系统中进行身份验证。您必须指定具有完整证书链的单个 `.pem` 文件（例如，`file:///home/user/.ssh/object_storage_certificates.pem`）。  
证书链可能包括：  
+ 对象存储系统的证书
+ 所有中间证书（如果有）
+ 签名 CA 的根证书
您可以将证书串联到一个 `.pem` 文件中（在进行 base64 编码前，文件最大长度可以为 32768 字节）。以下示例 `cat` 命令创建了一个包含三个证书的 `object_storage_certificates.pem` 文件：  
 `cat object_server_certificate.pem intermediate_certificate.pem ca_root_certificate.pem > object_storage_certificates.pem`   
要使用此参数，请配置 `ServerProtocol` 为 `HTTPS`。  
类型：Base64 编码的二进制数据对象  
长度约束：最大长度为 32768。  
必需：否

 ** [ServerHostname](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-ServerHostname"></a>
指定 DataSync 代理所连接的对象存储服务器的域名IPv4 或 IP 地址（或 IPv6）。  
类型：字符串  
长度限制：长度上限为 255。  
模式：`^(([a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9\-:]*[A-Za-z0-9])$`  
是否必需：是

 ** [ServerPort](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-ServerPort"></a>
指定对象存储服务器接受入站网络流量的端口（例如，端口 443）。  
类型：整数  
有效范围：最小值为 1。最大值为 65536。  
必需：否

 ** [ServerProtocol](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-ServerProtocol"></a>
指定对象存储服务器通信时使用的协议。如果未指定，则默认值为 `HTTPS`。  
类型：字符串  
有效值：`HTTPS | HTTP`  
必需：否

 ** [Subdirectory](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-Subdirectory"></a>
指定对象存储服务器的对象前缀。如果这是源位置，则 DataSync 仅复制带有此前缀的对象。如果这是目标位置，则 DataSync 写入带有此前缀的所有对象。  
类型：字符串  
长度约束：最大长度为 4096。  
模式：`^[a-zA-Z0-9_\-\+\./\(\)\p{Zs}]*$`  
必需：否

 ** [Tags](#API_CreateLocationObjectStorage_RequestSyntax) **   <a name="DataSync-CreateLocationObjectStorage-request-Tags"></a>
指定表示要添加到资源的标签的键值对。标签可帮助您管理、筛选和搜索资源。我们建议为您的位置创建一个名称标签。  
类型：[TagListEntry](API_TagListEntry.md) 对象数组  
数组成员：最少 0 个物品。最多 50 项。  
必需：否

## 响应语法
<a name="API_CreateLocationObjectStorage_ResponseSyntax"></a>

```
{
   "LocationArn": "string"
}
```

## 响应元素
<a name="API_CreateLocationObjectStorage_ResponseElements"></a>

如果此操作成功，则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回以下数据。

 ** [LocationArn](#API_CreateLocationObjectStorage_ResponseSyntax) **   <a name="DataSync-CreateLocationObjectStorage-response-LocationArn"></a>
指定您创建的对象存储系统位置的 ARN。  
类型：字符串  
长度限制：最大长度为 128。  
模式：`^arn:(aws|aws-cn|aws-us-gov|aws-eusc|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:location/loc-[0-9a-z]{17}$`

## 错误
<a name="API_CreateLocationObjectStorage_Errors"></a>

有关所有操作的常见错误信息，请参阅 [常见错误](CommonErrors.md)。

 ** InternalException **   
当 AWS DataSync 服务中发生错误时，会引发此异常。  
HTTP 状态代码：500

 ** InvalidRequestException **   
当客户端提交格式错误的请求时，会引发此异常。  
HTTP 状态代码：400

## 另请参阅
<a name="API_CreateLocationObjectStorage_SeeAlso"></a>

有关以特定语言之一使用此 API 的更多信息 AWS SDKs，请参阅以下内容：
+  [AWS 命令行界面 V2](https://docs.aws.amazon.com/goto/cli2/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS 适用于.NET 的 SDK V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS 适用于 C\$1\$1 的 SDK](https://docs.aws.amazon.com/goto/SdkForCpp/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS 适用于 Go v2 的 SDK](https://docs.aws.amazon.com/goto/SdkForGoV2/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS 适用于 Java 的 SDK V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS JavaScript V3 版软件开发工具包](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS 适用于 Kotlin 的 SDK](https://docs.aws.amazon.com/goto/SdkForKotlin/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS 适用于 PHP 的 SDK V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS Python 软件开发工具包](https://docs.aws.amazon.com/goto/boto3/datasync-2018-11-09/CreateLocationObjectStorage) 
+  [AWS 适用于 Ruby V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForRubyV3/datasync-2018-11-09/CreateLocationObjectStorage) 