[英]In Azure logic app i am getting DirectApiAuthorizationRequired
在 azure 逻辑应用程序中,我收到以下错误
{
"error": {
"code": "DirectApiAuthorizationRequired",
"message": "The request must be authenticated only by Shared Access scheme."
}
}
但据我所知,用于授权的 SAS 令牌将附加到 url,因此无需通过任何授权。
但我无法解决上述问题。
还要确保你有双引号之间的网址。
curl "https://production.centralus.logic.azure.com/.............."
我有完全相同的问题。 向我的逻辑应用程序发送的应用程序设置以下标头(不幸的是,我无法修改此应用程序)
授权基本 Og==
虽然我使用了包含 SAS 令牌的 HTTP 触发器 URL,但我仍然得到以下信息
{
"error": {
"code": "DirectApiAuthorizationRequired",
"message": "The request must be authenticated only by Shared Access scheme."
}
}
似乎有两种方法可以删除标题:* 使用 APIM(API 管理器)* 使用函数代理
https://devkimchi.com/2017/12/07/securing-sas-token-from-azure-logic-apps/ https://www.bruttin.com/2017/07/07/secure-serverless-architecture。 html
两者之间的选择取决于负载和成本[功能代理似乎是最实惠的,如果它只是为了删除标题]
您需要复制由您的 HTTP 触发器生成的完整 URL,该 URL 包含您的 API 的 SAS 令牌作为 URL 本身的参数。
否则您无法将身份验证标头发送到您的 HTTP 触发器
当通过 API 管理器公开的 Http 触发逻辑应用程序需要在调用后端之前删除“授权”标头时,可以为此使用 API 管理器策略
我需要在URL中使用引号,例如curl'http:// logicappurl / sas-key '
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.