【发布时间】: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