Azure - 使 API 应用程序可用于逻辑应用程序

Azure - Making an API App available to a Logic App

我创建了一个 Web 应用程序 API,它带有一个 swagger 界面,我已将其作为 API 应用程序部署到 Azure。

创建逻辑应用程序时,我可以找到我的 API 应用程序,但每当我尝试使用它时,我都会收到以下错误:

Failed to fetch swagger. Ensure you have CORS enabled on the endpoint and are calling an HTTPS endpoint.

我正在为 API 应用程序中的 API 定义使用默认的 https url:

https://microsoft-SOME-LONG-MS-INTERNAL-ID.azurewebsites.net/swagger/docs/v1

Swagger 文档已通过 Swashbuckle 在我的 C# Web API 应用程序中提供。

对于 CORS,我设置了一个 * 项。

这似乎不足以让逻辑应用程序访问 API 应用程序然后我为 API 应用程序配置身份验证/授权以使用 Azure Active Directory (express),创建一个 AD Azure 应用

我相信这个问题将是配置安全性的问题之一,这对我来说在 Azure 中是全新的。我想让 API 应用程序无法从外部访问,但可供我的 Azure 订阅中的 Web 应用程序和逻辑应用程序使用。

我没有向 ASP.NET Web 应用程序本身添加任何身份验证机制,因为我认为该 Web 应用程序将有效地位于 Azure 上的专用网络中。也许这是一个错误的假设,我需要添加身份验证以允许 Azure AD 工作?

有任何指示/建议吗?

原来我需要为 Visual Studio 更新 Azure SDK。我有一个旧版本正在部署预览 Api 应用程序,这导致部署了 "Api app host" 类型而不是 "API app" 类型。

更新后一切正常,我找到了一些文档来保护 API 应用程序并使其在逻辑应用程序中可用 - https://azure.microsoft.com/en-us/documentation/articles/app-service-logic-custom-hosted-api/