通过Terraform创建Azure API连接:Managed API数据源疑问
关于Terraform中azurerm_managed_api数据源的问题解答
1. 什么是Managed API?
Managed API就是Azure平台预定义的托管连接器,比如Azure Monitor Logs、Office 365 Outlook、SQL Server这类,是Logic Apps用来对接外部服务的内置组件,并非用户需要手动创建的资源——它是Azure全局/区域级别的预存服务,用户只需要引用即可。
2. azurerm_managed_api数据源的name值如何确定?
要找到正确的name参数值,有几种方法:
- Azure Portal查看:进入Logic App设计器,添加目标连接器时,查看连接器的内部标识名(比如Azure Monitor Logs对应的内部名称是
azuremonitorlogs) - Azure CLI命令查询:执行以下命令列出当前区域的所有托管API:
返回的JSON结果中,每个对象的az logic workflow managed-api list --location <你的区域名>name字段就是数据源需要的取值 - Azure资源管理器路径验证:托管API的资源路径格式为
/subscriptions/{订阅ID}/providers/Microsoft.Web/locations/{区域}/managedApis/{API名称},可以直接在Azure资源管理器中查看对应API的名称
3. 能否用ARM模板创建Managed API?
不能。Managed API是Azure官方预定义的平台资源,用户无法自行创建或部署,只能直接引用。如果需要创建的是API Connection(即托管连接器的实例,包含认证信息等),可以用azurerm_api_connection Terraform资源,或者通过ARM模板的Microsoft.Web/connections资源类型来创建。
内容的提问来源于stack exchange,提问作者devguydavid
相关产品推荐
相关产品推荐

