目前我们使用FTP,但有要求使用SFTP。根据我们的 Basis 人员的说法,SFTP 将无法工作。我们有几种选择:

  • 使用PI
  • 使用 Unix 脚本移动文件

然而,我们是否缺少一些东西可以让我们以与 FTP 类似的方式使用 SFTP?

调用FTP的代码示例:

  CALL FUNCTION 'HTTP_SCRAMBLE'  
    EXPORTING  
      SOURCE      = i_password
      sourcelen   = dstlen
      key         = c_key
    IMPORTING
      destination = lw_password.

  CLEAR: ftp_hdl, o_file.
  CALL FUNCTION 'FTP_CONNECT'
    EXPORTING
      user            = i_user
      password        = lw_password
      host            = i_host
      rfc_destination = c_rfcdest_sapftp
    IMPORTING
      handle          = ftp_hdl
    EXCEPTIONS
      not_connected   = 1
      OTHERS          = 2.

RFC 目的地 c_rfcdest_sapftp SM59中定义如下:

连接类型:T (TCP/IP)
激活类型:从前端工作站启动
程序:sapftp(该程序有 SFTP 变体吗?)
启动类型:默认网关

有帮助吗?

解决方案

奇怪的是,SAP 并不支持开箱即用的 SFTP。据我了解,PI 将使用 FTPS(我相信这是不同的) 至少有一家公司向 PI 出售第三方附加组件以使用 SFTP。快速谷歌一下就会找到它。这就是我们在这里必须做的事情,以便在不调用操作系统脚本的情况下获取 SFTP 和 PGP 加密文件。

编辑:这不再是一个真实的陈述。请参阅下面的评论。

其他提示

起初我认为这也很烦人,SAP PI 无法处理 SFTP。无论如何,如果你看一下协议,就会发现它是通过 ssh 建立隧道的 ftp。目前,安全社区正在转向 ftps,因为该协议不允许其他协议的隧道传输,因此被认为更安全。也许您应该考虑建立 ftp,因为它是一个不错的选择。如果您仅使用 PI 作为公司内部的中间件,或者您没有任何可从外部访问的 FTP 服务,那么这是切换到 ftps 的好机会。

问候

马蒂亚斯·奈斯尔

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top