You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将SSH私钥存储为Logic App应用设置时SFTP连接异常求助

问题解决:Logic App应用设置存储SSH私钥无法建立SFTP连接

核心问题原因

应用设置中存储多行SSH私钥时,换行符可能被自动转义或丢失,导致Logic App读取到的私钥格式不符合SFTP连接要求;而直接写入connections.json时,私钥的换行格式会被完整保留,因此可以正常连接。

正确配置步骤

  1. 应用设置/Key Vault中存储私钥

    • 在Azure门户的应用设置里,完整粘贴包含-----BEGIN RSA PRIVATE KEY-----、-----END RSA PRIVATE KEY-----及中间所有换行的SSH私钥,Azure会自动处理多行存储,无需手动添加转义字符。
    • 若使用Key Vault引用,确保Key Vault中的密钥值为完整的多行私钥,应用设置的引用格式需正确:@Microsoft.KeyVault(SecretUri=https://<your-vault>.vault.azure.net/secrets/<secret-name>/<version>)
  2. connections.json中正确引用
    在SFTP连接配置的私钥字段,直接引用应用设置变量,示例:

    {
      "connections": {
        "sftp": {
          "connectionParameters": {
            "privateKey": "@appsetting('SFTP_SSH_PRIVATE_KEY')"
          }
        }
      }
    }
    

    注意:不要对引用变量做额外字符串处理,确保读取原始值。

  3. 格式验证
    查看Logic App运行历史中的输入参数,确认私钥是否完整保留所有换行符。若换行丢失,检查应用设置/Key Vault中的私钥存储格式是否正确。

常见排查点

  • 若开启应用设置的部署槽位设置,需确认当前槽位的设置值无误。
  • 确保Key Vault访问策略已授予Logic App的系统/托管身份密钥读取权限。
  • 若私钥带密码,需同步在应用设置中存储密码并在connections.json中正确引用。

内容的提问来源于stack exchange,提问作者Viggo Lundén

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 13:52:04