403禁止错误:运行API请求命令时



我可以根据文档使用API更新/创建函数键。https://learn.microsoft.com/en-us/rest/api/appservice/web-apps/create-or-update-function-secret

我的主要目标是每小时更新一次函数键,所以我创建了一个http触发器(里面有上面的api(并调度触发器。

  1. 出于测试目的,我将url存储在一个参数中。网址:'https://management.azure.com/subscriptions/xyz1/resourceGroups/xyz2/providers/Microsoft.Web/sites/func_appname/functions/func_name/keys/poc_testing1?api-version=2021-02-01{"属性":{"名称":"poc_testing1","值":"asdsda"}'

注意:这里的值是通过python 的随机生成库更新的

  1. 使用服务主体(我已经在使用它来连接我的stg acc(生成一个承载令牌,并将其存储在auth_token中header_auth={‘授权’:‘承载’+auth_token}

  2. 现在在python中运行以下命令导入请求requests.post(url,headers=header_auth(我得到403禁止错误

我认为这不是因为承载令牌,是否谷歌错误,它与IP地址有关。有人能帮我吗

  • 我指的是(https://learn.microsoft.com/en-us/troubleshoot/azure/general/request-throttling-http-403)doc,但我没有使用任何APIM服务
  1. 到目前为止,我推荐了MSFT的医生。https://learn.microsoft.com/en-us/rest/api/appservice/web-apps/create-or-update-function-secret

  2. 我能够创建新的功能键。

  3. 我正在尝试使用python来做同样的事情,我为其执行了上述步骤。

  4. 目前在我的本地Visual studio中运行了上述问题步骤,并尝试了az-cli,但出现了相同的403错误。

为什么要每小时更新一次函数键?

如果您的目标是提高安全性,请使用AzureAD Auth/OAuth2,而不是函数密钥。

关于403错误,请确保您已为服务主体分配了适当的权限,允许服务主体修改azure函数。

最新更新