Logic App自定义连接器-如何从最终用户那里获得客户端ID和机密?

时间:2019-07-22 07:01:44

标签: azure azure-logic-apps

我正在为具有oAuth 2.0身份验证的Web API创建自定义连接器。 我需要从将使用客户连接器的最终用户那里获取客户ID和机密。

示例类似于Acumatica Connector,其具有clientid和secret作为输入

我已经在“安全性”选项卡中尝试了“通用OAuth”选项,但它要求预先提供客户端ID和“秘密”。使用自定义连接器时,它使用相同的客户端ID。

1 个答案:

答案 0 :(得分:0)

因此,您需要两个接受clientIdclientSecret的输入来创建API连接。这是您可以使用的大方json

{
    "apiVersion": "[variables('connectorApiVersion')]",
    "name": "[variables('tracking_connectorName')]",
    "type": "Microsoft.Web/customApis",
    "location": "[resourceGroup().location]",
    "properties": {
        "connectionParameters": {
            "ClientId": {
                "type": "securestring",
                "uiDefinition": {
                    "displayName": "ClientId",
                    "description": "Enter ClientId",
                    "tooltip": "Enter ClientId",
                    "constraints": {
                        "tabIndex": 2,
                        "clearText": false,
                        "required": "true"
                    }
                }
            },
            "ClientSecret": {
                "type": "securestring",
                "uiDefinition": {
                    "displayName": "ClientSecret",
                    "description": "Enter ClientSecret",
                    "tooltip": "Enter ClientSecret",
                    "constraints": {
                        "tabIndex": 2,
                        "clearText": false,
                        "required": "true"
                    }
                }
            }
        },
        "description": "meh nah hyaaah",
        "displayName": "[variables('tracking_connectorName')]",
        "backendService": {
            "serviceUrl": "[concat('https://', parameters('myApiUrl')]"
        },
        "swagger": {
            "swagger": "2.0",
            "info": {
                "title": "Your connector name",
                "description": "Your connector description",
                "version": "1.0.0"
            },
            "host": "[concat(parameters('myApi')]",
            "basePath": "/",
            "schemes": [
                "https",
                "http"
            ],
            "paths": {},
            "definitions": {},
            "securityDefinitions": {
            }
        }
    }
}