PutS3Object 2025.5.31.15¶
捆绑包¶
org.apache.nifi | nifi-aws-nar
描述¶
将 FlowFile 的内容作为 S3 对象写入 Amazon S3 桶中。
输入要求¶
REQUIRED
支持敏感的动态属性¶
false
属性¶
属性 |
描述 |
---|---|
AWS 凭据提供商服务 |
用于获取 AWS 凭据提供商的控制器服务 |
桶 |
要与之交互的 S3 桶 |
Cache Control |
设置缓存控制 HTTP 标头,指示关联对象的缓存指令。多个指令以逗号分隔。 |
通信超时 |
超时之前为与 AWS 建立连接或从 AWS 接收数据而等待的时间。 |
Content Disposition |
设置内容处置 HTTP 标头,指示内容是打算以内联方式显示还是应该下载。可能的值为“内联”或“附件”。如果未指定此属性,则对象的内容处置将设置为文件名。选择“附件”时,'; filename=' 加上对象密钥会自动附加到表单最终值 'attachment; filename="filename.jpg"'。 |
内容类型 |
设置内容类型 HTTP 标头,表示存储在关联对象中的内容类型。此标头的值是标准 MIME 类型。AWSS3 Java 客户端将尝试确定正确的内容类型(如果尚未设置)。用户有责任确保在上传流时设置合适的内容类型。如果未提供内容类型且无法由文件名确定,则将使用默认内容类型“application/octet-stream”。 |
端点替换 URL |
要使用的端点 URL 而不是 AWS 默认端点,包括架构、主机、端口和路径。AWS 库会根据 AWS 区域选择端点 URL,但此属性会替换所选端点 URL,允许与其他与 S3 兼容的端点一起使用。 |
Expiration Time Rule |
|
文件资源服务 |
文件资源服务提供对要传输的本地资源的访问权限 |
FullControl 用户列表 |
以逗号分隔的 Amazon 用户 ID 或电子邮件地址列表,用于指定谁应该拥有对象的完全控制权 |
Multipart Part Size |
指定使用 PutS3Multipart Upload API 时使用的分段大小。在上传过程中,FlowFile 将被分成这样大小的块,但是最后发送的分段可能会更小,因为它没有填充。有效范围为 50MB 到 5GB。 |
Multipart Threshold |
指定从 PutS3Object API 切换到 PutS3MultipartUpload API 的文件大小阈值。 大于此限制的 FlowFile 将使用有状态的多分段流程发送。有效范围为 50MB 到 5GB。 |
Multipart Upload AgeOff Interval |
指定对 AWS S3 中现有分段上传进行评估的时间间隔。 当触发处理器时,如果超过此间隔,将启动过期评估。 |
Multipart Upload Max Age Threshold |
指定 AWS S3 中现有分段上传的最大期限。 当过期过程发生时,任何早于此阈值的上传都将中止。 |
对象键 |
要使用的 S3 对象键。这类似于传统文件系统的文件名。 |
所有者 |
供对象所有者使用的 Amazon ID |
读取 ACL 用户列表 |
以逗号分隔的 Amazon 用户 ID 或电子邮件地址列表,用于指定谁应有权读取对象的访问控制列表 |
读取权限用户列表 |
以逗号分隔的 Amazon 用户 ID 或电子邮件地址列表,用于指定谁应该拥有对象的读取权限 |
区域 |
要连接的 AWS 区域。 |
资源传输来源 |
要传输的内容的来源 |
SSL Context Service |
指定可选的 SSL Context Service,如果提供该服务,将用于创建连接 |
签名器替换 |
默认情况下,AWS S3 库使用签名版本 4,但此属性允许您指定版本 2 签名器以支持较早的 S3 兼容服务,甚至可以插入自己的自定义签名器实现。 |
Storage Class |
|
写入 ACL 用户列表 |
以逗号分隔的 Amazon 用户 ID 或电子邮件地址列表,用于指定谁应有权更改对象的访问控制列表 |
写入权限用户列表 |
以逗号分隔的 Amazon 用户 ID 或电子邮件地址列表,用于指定谁应该拥有对象的写入权限 |
canned-acl |
对象的 Amazon 预定义 ACL,具体为以下其一:BucketOwnerFullControl、BucketOwnerRead、LogDeliveryWrite、AuthenticatedRead、PublicReadWrite、PublicRead、Private;如果指定了其他 ACL/权限/所有者属性,则此属性将被忽略 |
custom-signer-class-name |
自定义签名器类的完全限定类名。签名器必须实现 com.amazonaws.auth.Signer 接口。 |
custom-signer-module-location |
以逗号分隔的文件和/或目录路径列表,这些文件和/或目录包含自定义签名器的 JAR 文件及其依赖关系(如果有)。 |
encryption-service |
指定用于配置请求的加密服务控制器。PutS3Object:为了向后兼容,当设置“服务器端加密”时,将忽略此值。FetchS3Object:仅在服务器端客户密钥、客户端 KMS 和客户端客户密钥加密的情况下才需要进行配置。 |
proxy-configuration-service |
指定代理配置控制器服务来代理网络请求。 |
s3-object-remove-tags-prefix |
如果设置为“True”,则为“Object Tags Prefix”提供的值将从属性中移除,然后将其视为标签名称。例如:如果传入的 FlowFile 带有 tagS3country、tagS3PII 属性,并且前缀设置为“tagS3”,则相应的标签值将为“国家”和“PII” |
s3-object-tags-prefix |
指定将根据传入 FlowFile 的属性扫描的前缀,匹配属性的名称和值将分别视为传出 S3 对象的标签名称和标签值。例如:如果传入 FlowFile 带有 tagS3country、tagS3PII 属性,则要指定的标签前缀将为“tagS3” |
s3-temporary-directory-multipart |
对于分段上传,处理器将在该目录中本地保存跟踪上传 ID 和已上传分段的状态,这两个部分都必须提供才能完成上传。 |
server-side-encryption |
指定用于服务器端加密的算法。 |
use-chunked-encoding |
启用/禁用上传请求的分块编码。仅当您的端点不支持分块上传时,才将其设置为 false。 |
use-path-style-access |
通过将此属性设置为 true,可以强制执行路径式访问。如果端点不支持虚拟托管式请求,仅支持路径式请求,则将其设置为 true。 |
关系¶
名称 |
描述 |
---|---|
failure |
如果处理器无法处理给定的 FlowFile,则会将其路由到此关系。 |
success |
FlowFiles 成功处理后,将路由到此关系。 |
写入属性¶
名称 |
描述 |
---|---|
s3.url |
可用于访问 S3 对象的 URL |
s3.bucket |
将对象放入 S3 的 S3 桶 |
s3.key |
将对象放入 S3 时的 S3 密钥 |
s3.contenttype |
放入 S3 的 S3 对象的 S3 内容类型 |
s3.version |
放入 S3 的 S3 对象的版本 |
s3.exception |
处理器执行期间引发的异常的类名 |
s3.additionalDetails |
S3 提供的失败操作的详细信息 |
s3.statusCode |
失败操作的 HTTP 错误代码(如果有) |
s3.errorCode |
失败操作的 S3 昵称 |
s3.errorMessage |
失败操作的 S3 异常消息 |
s3.etag |
S3 对象的 ETag |
s3.contentdisposition |
放入 S3 的 S3 对象的内容处置 |
s3.cachecontrol |
S3 对象的缓存控制标头 |
s3.uploadId |
用于将对象上传到 S3 的 uploadId |
s3.expiration |
S3 对象的过期日期(如果已设置)的人类可读形式 |
s3.sseAlgorithm |
对象的服务器端加密算法 |
s3.usermetadata |
S3 对象的用户元数据的人类可读形式(如果已设置) |
s3.encryptionStrategy |
加密策略的名称(如果已设置) |