294.2. 选项


SCP 组件支持 2 个选项,如下所列。

名称描述默认值类型

verboseLogging (producer)

JSCH 是开箱即用的详细日志记录。因此,我们默认将日志记录转换为 DEBUG 日志记录。但是,将此选项设置为 true 可再次打开详细日志记录。

false

布尔值

resolveProperty Placeholders (advanced)

启动时组件是否应解析自身上的属性占位符。只有属于 String 类型的属性才能使用属性占位符。

true

布尔值

SCP 端点使用 URI 语法进行配置:

scp:host:port/directoryName

使用以下路径和查询参数:

294.2.1. 路径参数(3 参数):

名称描述默认值类型

主机

必需 FTP 服务器的主机名

 

字符串

端口

FTP 服务器的端口

 

int

directoryName

起始目录

 

字符串

294.2.2. 查询参数(22 参数):

名称描述默认值类型

disconnect (common)

使用后是否要与远程 FTP 服务器断开连接。断开连接将仅断开当前与 FTP 服务器的连接。如果您有一个要停止的消费者,则需要停止 consumer/route。

false

布尔值

chmod (producer)

允许您在存储的文件上设置 chmod。例如 chmod=664。

664

字符串

fileName (producer)

使用文件语言等表达式动态设置文件名。对于消费者,它用作文件名过滤器。对于生成者,它用于评估要写入的文件名。如果设置了表达式,它将优先于 CamelFileName 标头。(注:标题本身也可以是表达式)。表达式选项支持 String 和 Expression 类型。如果表达式是 String 类型,则始终使用 File Language 来评估它。如果表达式是 Expression 类型,则使用指定的 Expression 类型 - 这允许您,使用 OGNL 表达式。对于消费者,您可以使用它来过滤文件名,因此您可以利用 File Language 语法:mydata-$date:now:yyyyMMdd.txt 实例消耗了现在的文件。生产者支持 CamelOverruleFileName 标头,它优先于任何现有的 CamelFileName 标头;CamelOverruleFileName 是一个仅使用的标头,因此可以更轻松地避免临时存储 CamelFileName,之后必须恢复它。

 

字符串

flatten (producer)

flatten 用于扁平化文件名路径,以剥离任何前导路径,因此它只是文件名。这样,您便可以将递归地消耗到子目录中,但当您将文件写入另一个目录时,会将文件写入单个目录中。在生成者上将其设置为 true 强制执行 CamelFileName 标头中的任何文件名将被剥离任何前导路径。

false

布尔值

jailStartingDirectory (producer)

用于仅向起始目录(和子)写入文件。这默认是启用的,不允许 Camel 将文件写入外部目录(在开箱即用的情况下更为安全)。您可以关闭此选项,以允许将文件写入起始目录之外的目录,如父目录或根文件夹。

true

布尔值

strictHostKeyChecking (producer)

设置是否使用严格的主机密钥检查。可能的值有: no, yes

字符串

allowNullBody (producer)

用于指定文件写入过程中是否允许 null 正文。如果设置为 true,则会创建一个空文件,如果设为 false,并尝试将 null 正文发送到文件组件,则将抛出 'Cannot write null body to file.' 的 GenericFileWriteException。如果 fileExist 选项被设置为 'Override',则该文件将被截断,如果设为 附加该文件,则该文件将保持不变。

false

布尔值

disconnectOnBatchComplete (producer)

批处理上传完成后是否要断开与远程 FTP 服务器的连接。disconnectOnBatchComplete 将仅断开当前与 FTP 服务器的连接。

false

布尔值

moveExistingFileStrategy (producer)

策略(Custom Strategy)用于移动带有特殊命名令牌的文件,以便在配置了 fileExist=Move 时使用。默认情况下,如果没有提供自定义策略,则使用实现

 

FileMoveExisting 策略

connectTimeout (advanced)

设置等待 FTPClient 和 JSCH 使用的连接的连接超时

10000

int

soTimeout (advanced)

设置仅由 FTPClient 使用的 so timeout

300000

int

同步 (advanced)

设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。

false

布尔值

timeout (advanced)

设置用于只等待 FTPClient 使用的回复的数据超时

30000

int

knownHostsFile (security)

设置 known_hosts 文件,以便 jsch 端点可以进行主机密钥验证。您可以使用 classpath: 前缀来加载来自 classpath 的文件,而不是文件系统。

 

字符串

password (security)

用于登录的密码

 

字符串

preferredAuthentications (security)

设置以逗号分隔的验证列表,它们将按首选顺序使用。可能的身份验证方法由 JCraft JSCH 定义。例如,如果未指定 JSCH 和/或系统默认值,则使用 gssapi-with-mic,publickey,keyboard-interactive,password。

 

字符串

privateKeyBytes (security)

将私钥字节设置为端点可以进行私钥验证。这只有在未设置 privateKeyFile 时使用。否则,该文件将具有优先级。

 

byte[]

privateKeyFile (security)

将私钥文件设置为端点可以进行私钥验证。您可以使用 classpath: 前缀来加载来自 classpath 的文件,而不是文件系统。

 

字符串

privateKeyFilePassphrase (security)

将私钥文件密语设置为端点可以进行私钥验证。

 

字符串

用户名 (安全性)

用于登录的用户名

 

字符串

useUserKnownHostsFile (security)

如果 knownHostFile 没有明确配置,则使用 System.getProperty (user.home)/.ssh/known_hosts 中的主机文件

true

布尔值

密码 (安全)

设置一个以逗号分隔的密码列表,该密码将按首选顺序使用。可能的密码名称由 JCraft JSCH 定义。一些示例包括:aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbc。如果没有指定 JSCH 的默认列表,则将使用 JSCH 中的默认列表。

 

字符串

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.