【问题标题】:How to securely invoke a Azure Logic App from Azure Data Factory如何从 Azure 数据工厂安全地调用 Azure 逻辑应用
【发布时间】:2021-08-07 15:44:50
【问题描述】:

我有一个调用逻辑应用程序的数据工厂管道。逻辑应用设计器提供的 URL 在 URL 中包含一个签名。在数据工厂管道中,我有一个使用 POST 方法调用逻辑应用程序的 Web 活动。这行得通,应用程序被调用。

我希望将此签名与 URL 分开并将其存储在 Azure Key Vault 中,或者使用身份验证。数据工厂中的身份验证选项包括:基本、托管身份或客户端证书。我尝试follow this article to enable authentication via Azure Active Directory OAuth,但目前不知道这将如何与 Azure 数据工厂一起使用。

我知道可以启用 API 管理网关以对包括逻辑应用在内的 API 启用更复杂的身份验证,但我目前不认为我应该这样做。

我在 Logic App 界面中注意到的另一件事是您无法发出执行授权。这与其他 Azure 服务(例如 Data Lake)不同,例如,您可以发出“类似使用”的授权来读取容器。只有授权窗格可用于定义声明。我有一点尝试,但我缺少关键信息。

最终我不希望签名暴露给包括我自己在内的开发人员。

【问题讨论】:

    标签: authentication azure-data-factory azure-logic-apps


    【解决方案1】:

    我个人喜欢将 PostURL 存储在 Azure KeyVault 中,然后在 ADF 中执行 Azure KeyVault GET API 调用,然后将 ADF 中的输出安全地传递给请求以触发逻辑应用程序。这是两项无异的活动,而且是一种安全方法,可以只使用 ADF 中原生的托管身份验证。

    以下是如何从 AKV 获取值的示例:

    从 AKV 中获得价值

    这是 Azure KeyVault 示例机密的 URL:

    https://kv-ccok-ops-@{pipeline().globalParameters.Environment}.vault.azure.net//secrets/FILESERVER-UserName?api-version=7.1
    

    使用 AKV 的价值

    这个例子应该非常容易理解。

    【讨论】:

      【解决方案2】:

      我相信您可以将Managed Identity of the Web ActivityAzure AD OAuth feature for Logic Apps 配对。

      所需的声明需要在 Authorization 刀片上为 setup 以验证令牌。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-11-24
        • 2020-10-27
        • 2021-02-02
        • 2020-11-20
        • 2019-04-25
        • 1970-01-01
        • 1970-01-01
        • 2019-03-26
        相关资源
        最近更新 更多