【问题标题】:Azure CLI - Webapp DeploymentAzure CLI - Web 应用部署
【发布时间】:2018-03-19 00:04:46
【问题描述】:

我是 Azure 新手,正在尝试以自动化 CI/CD 方法安装 webapp。

如果我登录了 CLI shell,我可以通过

进行部署

az webapp 部署源配置 --name ${WEBAPP_NAME} --resource-group ${RESOURCEGROUP_NAME} --slot staging --repo-url ${GIT_URL} --branch ${BRANCH} --manual-integration

我想在 Jenkins 中使用 shell(不使用 Azure 插件)来执行此操作。

如何使用部署凭据登录 az CLI?

我了解我们无法使用 Azure 凭据(从 CLI)登录。

有没有通过一些 API 密钥登录的替代方法(我们可以在 AWS/IBM Cloud 中做到这一点)?

【问题讨论】:

  • 如果我的理解是正确的,az cli 支持非交互式登录。您可以创建一个服务主体。 az login --service-principal --username APP_ID --tenant TENANT_ID --password PATH_TO_CERT 请参阅此链接 az login --service-principal --username APP_ID --tenant TENANT_ID --password PATH_TO_CERT
  • @ShengbaoShui-MSFT - 使用服务主体确实有效。我无法弄清楚如何限制对服务主体的权限。创建服务主体后,我可以在不添加任何权限的情况下进行 webapp 部署。我的阅读表明默认权限应该受到限制。我正在寻找如何控制这种行为。
  • 我将其添加为答案。希望它能帮助更多的人。

标签: azure azure-web-app-service azure-cli


【解决方案1】:

Azure Cli 2.0 支持非交互式登录。您可以创建一个服务主体并赋予它Owner 角色。然后您可以使用以下命令登录。

az login --service-principal --username APP_ID --tenant TENANT_ID --password PATH_TO_CERT 

创建服务主体,您可以检查此link

赋予 SP Owner 角色,您可以查看此link

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-21
    • 2019-06-04
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    相关资源
    最近更新 更多