配置ARM模板以自动授权Salesforce连接

时间:2019-01-08 04:53:47

标签: azure azure-logic-apps arm-template

我们目前有一个ARM模板,该模板可部署带有Salesforce连接器的Logic App。

我们面临的问题是,一旦部署了模板,我们必须手动授权Salesforce连接:

enter image description here

是否可以将授权添加到ARM模板?如果是这样,将如何实现?

2 个答案:

答案 0 :(得分:1)

AFAIK,不可能通过ARM模板授权Salesforce Connection。我们最多只能通过模板创建API连接,ARM模板基于天蓝色的资源,它不会存储您的凭据(例如用户名,密码)。

解决方法

1。您可以分别为Logic App和API连接创建两个模板,然后只需要在部署时授权一次连接,就可以让该逻辑应用使用该连接。

2。如果您需要在不打开每个Logic App的情况下完成API连接的创建,则可以尝试使用powershell脚本LogicAppConnectionAuth,然后它将打开同意链接并完成授权以启用连接,请参见此{ {3}}。

答案 1 :(得分:1)

我们遇到了同样的问题,您只需将其添加到属性下的ARM模板中即可:

对于沙盒:

"ParameterValues": {
"token:LoginUri": "https://test.salesforce.com",
}

或将此用于生产:

"ParameterValues": {
"token:LoginUri": "https://login.salesforce.com",
}

PS:创建连接后,您仍然必须手动授权连接。

这是有效的完整ARM模板:

"resources": [
    {
        "type": "Microsoft.Web/connections",
        "apiVersion": "2016-06-01",
        "name": "salesforce",
        "location": "eastus",
        "properties": {
            "displayName": "Connection to Salesforce",
            "ParameterValues": {
                "token:LoginUri": "test.salesforce.com"
            },
            "api": {
                "id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/salesforce')]"
            }
        }
    }
]