本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
CreateLocationObjectStorage
为对象存储系统创建传输位置。 AWS DataSync 可以将此位置用作传输数据的源或目的地。无论有没有DataSync代理人,您都可以进行转账。
在开始之前,请务必了解使用对象存储系统的先决条件。 DataSync
请求语法
{
"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
"
}
]
}
请求参数
有关所有操作的通用参数的信息,请参阅常用参数。
请求接受采用 JSON 格式的以下数据。
- AccessKey
-
如果需要凭证来向对象存储服务器进行身份验证,则指定访问密钥(例如,用户名)。
类型:字符串
长度约束:最小长度为 0。最大长度为 200。
模式:
^.*$
必需:否
- AgentArns
-
(可选)指定可以与您的对象存储系统连接的 DataSync 代理的 Amazon 资源名称 (ARNs)。如果您正在设置无代理跨云传输,则无需为此参数指定值。
注意
首次创建存储位置时,请务必正确配置此参数。创建代理后,您无法在存储位置添加或删除代理。
类型:字符串数组
数组成员:最少 1 个物品。最多 4 项。
长度限制:最大长度为 128。
模式:
^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:agent/agent-[0-9a-z]{17}$
必需:否
- BucketName
-
指定传输中涉及的对象桶的名称。
类型:字符串
长度约束:最小长度为 3。最大长度为 63。
模式:
^[a-zA-Z0-9_\-\+\.\(\)\$\p{Zs}]+$
必需:是
- CmkSecretConfig
-
指定由客户 DataSync管理的密钥的配置信息,其中包括 DataSync 用于访问特定对象存储位置的、由客户 AWS KMS key管理的密钥。
SecretKey
当您在
CreateLocationObjectStorage
请求中包含此参数时,您仅提供 KMS 密钥 ARN。 DataSync 使用此 KMS 密钥和您为SecretKey
参数指定的值来创建存储位置访问凭证的 DataSync托管密钥。确保 DataSync 有权访问您指定的 KMS 密钥。
注意
您可以使用
CmkSecretConfig
(带有SecretKey
)或CustomSecretConfig
(不SecretKey
带)为CreateLocationObjectStorage
请求提供凭证。不要为同一个请求提供两个参数。类型:CmkSecretConfig 对象
必需:否
- CustomSecretConfig
-
指定客户管理的 Secrets Manager 密钥的配置信息,其中特定对象存储位置的密钥以纯文本形式存储。此配置包括密钥 ARN 以及提供密钥访问权限的 IAM 角色的 ARN。
注意
您可以使用
CmkSecretConfig
(带有SecretKey
)或CustomSecretConfig
(不SecretKey
带)为CreateLocationObjectStorage
请求提供凭证。不要为同一个请求提供两个参数。类型:CustomSecretConfig 对象
必需:否
- SecretKey
-
如果需要凭证来向对象存储服务器进行身份验证,则指定私有密钥(例如,密码)。
注意
如果您使用提供密钥
SecretKey
,但未使用CmkSecretConfig
或提供密钥配置详细信息CustomSecretConfig
,则使用您 AWS 账户的 Secrets Manager 密钥 DataSync 存储令牌。类型:字符串
长度约束:最小长度为 0。最大长度为 200。
模式:
^.*$
必需:否
- ServerCertificate
-
如果您的对象存储系统使用私有或自签名证书颁发机构 (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
-
指定 DataSync 代理所连接的对象存储服务器的域名或 IP 版本 4 (IPv4) 地址。
类型:字符串
长度限制:长度上限为 255。
模式:
^(([a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9\-:]*[A-Za-z0-9])$
必需:是
- ServerPort
-
指定对象存储服务器接受入站网络流量的端口(例如,端口 443)。
类型:整数
有效范围:最小值为 1。最大值为 65536。
必需:否
- ServerProtocol
-
指定对象存储服务器通信时使用的协议。如果未指定,则默认值为
HTTPS
。类型:字符串
有效值:
HTTPS | HTTP
必需:否
- Subdirectory
-
指定对象存储服务器的对象前缀。如果这是源位置,则 DataSync 仅复制带有此前缀的对象。如果这是目标位置,则 DataSync 写入带有此前缀的所有对象。
类型:字符串
长度约束:最大长度为 4096。
模式:
^[a-zA-Z0-9_\-\+\./\(\)\p{Zs}]*$
必需:否
- Tags
-
指定表示要添加到资源的标签的键值对。标签可帮助您管理、筛选和搜索资源。我们建议为您的位置创建一个名称标签。
类型:TagListEntry 对象数组
数组成员:最少 0 个物品。最多 50 项。
必需:否
响应语法
{
"LocationArn": "string"
}
响应元素
如果此操作成功,则该服务将会发送回 HTTP 200 响应。
服务以 JSON 格式返回以下数据。
- LocationArn
-
指定您创建的对象存储系统位置的 ARN。
类型:字符串
长度限制:最大长度为 128。
模式:
^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:location/loc-[0-9a-z]{17}$
错误
有关所有操作的常见错误信息,请参阅 常见错误。
- InternalException
-
当 AWS DataSync 服务中发生错误时,会引发此异常。
HTTP 状态代码:500
- InvalidRequestException
-
当客户端提交格式错误的请求时,会引发此异常。
HTTP 状态代码:400
另请参阅
有关以特定语言之一使用此 API 的更多信息 AWS SDKs,请参阅以下内容: