【问题标题】:Enable/Disable Workflow using Azure Workflow Management API使用 Azure 工作流管理 API 启用/禁用工作流
【发布时间】:2015-08-14 15:44:47
【问题描述】:


我正在尝试使用管理 API 在 Azure 上启用/禁用逻辑应用。我总是收到一个 403 说客户端:对象 ID 没有执行“Microsoft.Logic/workflows/disable/action”的授权... 我确实在我的请求中使用了身份验证令牌,到目前为止,我已经能够使用 API 列出所有工作流,使用相同的方法获取触发历史记录和输入/输出消息。 有什么建议吗?

【问题讨论】:

    标签: rest asp.net-mvc-4 azure azure-management-api azure-logic-apps


    【解决方案1】:

    如果您调用的是 http:// 而不是 https://,我之前已经经常看到这个问题 - 我们正在研究自动重定向,但现在您需要确保调用的是 https: // 具有正确方法的端点(在本例中为 PUT)

    编辑:我们发现问题是用于执行启用/禁用的帐户没有贡献权限。

    【讨论】:

    • 来自msdn.microsoft.com/en-US/library/azure/dn948513.aspx 我使用“https://{endpoint}/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/enable?api -version=2015-02-01-preview”和“https://{endpoint}/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/disable?api-version =2015-02-01-preview" 使用 POST 方法,我确实尝试过 PUT,但两种情况都返回提到的错误。
    • 其他调用有效吗?可能与身份验证有关-您提到您正在将授权令牌用于 Azure 资源管理器请求(AAD-基本身份验证不适用于这些调用)-只需确保您具有正确的 Bearer xxxxxxxxxxxxxx 语法而不是 Basic xxxxxxxx跨度>
    • 是的,其他调用有效。我还使用带有 Bearer xxx 语法的身份验证令牌。我注意到对于这个特定的调用,类似于为工作流检索输入/输出链接的 JSON 消息,Azure 门户首先使用 OPTIONS 方法来获取一些信息,以将它们包含在后续 GET/POST 的标头中。我要到星期一才能检查。如果解决了问题,我会发布。
    • 好的,我测试了它并且能够让它工作 - 看起来我弄错了,如果你愿意,你可以使用 Basic Auth,你只需要确保你按照步骤文档的底部。如果您使用的是 AAD Auth(承载令牌),请确保您正在使用management.azure.com......的 URL 进行 POST,而不是 {region}.logic.... - 只有在做基本认证。将该设置作为正确的 URL 并使用 management.azure.com 的基础,因为我使用的是 AAD Bearer 身份验证,它对我有用。
    • 好的,首先感谢您的持续跟进。我仍然无法让它工作,我使用 POST 和提到的 URL 进行 AAD 身份验证,我实际上调用了相同的函数来从 GetWrokflow 中提取信息,获取工作流的触发器和获取触发器上的历史记录,它们都工作,除了这个特殊的电话。我也尝试使用 Fiddler 并且可以进行所有其他调用,但在启用/禁用调用时仍然会收到 403。我必须暂时继续前进,因为我已经花了很多时间。
    猜你喜欢
    • 2021-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多