繁体   English   中英

使用Powershell调用同步

[英]Invoke Sync with Powershell

通常,我将部署源集成到webapp,然后在需要时运行 webapp仪表板中的“同步”按钮,以将Azure webapp与我的onedrive文件夹同步。

但是,如果我想给一个非Azure用户 ,我的意思是,谁不需要登录到Azure门户本身,而是可以使用演示凭据或排序进行调用,我该怎么办? 或者,如果我想自己从shell运行它,该如何处理?

是否可以通过Power Shell使用服务主体或类似方式(runbooks,带有azure函数进行sync的http触发器) 从power-shell运行同步,而无需实际给用户本身提供登录凭证?

更新:1.我在Kudu上阅读了此博客,但不确定是否是我真正想要的。 请提出建议。 https://dzimchuk.net/post/azure-web-apps-continuous-deployment

更新31 /八月

我的工作流程有3个插槽dev / stage / mirror。 我的目标是将开发人员与源存储库集成。 因此,在最低环境下启用了同步。

SiteName                  : YourWebApp(dev)
State                     : Running
DefaultHostName           : YourWebApp-dev.azurewebsites.net
Id                        : /subscriptions/1234567890-{my}-{subscription}_{id}/resourceGroups/Default-Web/providers/Microsoft.Web/sites/YourWebApp/slots/dev
Name                      : YourWebApp/dev
Location                  : East US
Type                      : Microsoft.Web/sites/slots

如果安装了最新的Azure PowerShell,则可以运行以下命令来触发同步:

Invoke-AzureRmResourceAction -ResourceGroupName {YourResourceGroup} -ResourceType Microsoft.Web/sites -ResourceName YourWebApp -Action sync -ApiVersion 2015-08-01 -Force

或者,如果您要处理的是插槽,则外观如下所示:

Invoke-AzureRmResourceAction -ResourceGroupName {YourResourceGroup} -ResourceType Microsoft.Web/sites/slots -ResourceName YourWebApp/YourSlot -Action sync -ApiVersion 2015-08-01 -Force

至于让其他用户进行身份验证,您有两种选择:

  1. 您可以使他们成为该Web应用程序的贡献者(使用RBAC-基于角色的访问控制)
  2. 您可以设置服务主体

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM