azure - Azure 自动化运行 Sharepoint Online PowerShell Set-Commands
问题描述
我已设置 Azure Automation Runbook 来运行与 Sharepoint Online 交互的 PowerShell。我正在使用 2 个模块;Microsoft.Online.SharePoint.PowerShell 和 AzureAD。我的本地机器上有相同的版本。我还为 Azure 自动化指定了凭据,这些凭据与我在本地计算机上运行的凭据相同。出于某种原因,Azure 自动化 Runbook 不执行 Set-Commands。如果我在我的本地机器上运行脚本 Set-Commands 执行得很好。
$myCred = Get-AutomationPSCredential -Name 'test'
$adminSiteUrl = "https://mytenant-admin.sharepoint.com"
# Connect to SPOService
Connect-SPOService -Url $adminSiteUrl -Credential $myCred
Get-SPOSite -Identity https://mytenant-my.sharepoint.com | select sharingcapability
Set-SPOSite -Identity https://mytenant-my.sharepoint.com -SharingCapability ExternalUserSharingOnly
Get-SPOSite
在输出中执行并写入,但Set-SPOSite
不执行任何操作。我已将 Sharepoint 管理中心 UI 中的 Sharepoint 外部共享设置设置为仅允许 SharePoint 共享到 ExternalUserSharing,并将 OneDrive 共享设置为禁用。Set-SPOSite
应该仅将 OneDrive 共享功能更改为 ExternalUserSharing,但事实并非如此。
Azure 自动化不会引发任何错误并成功完成脚本。我还尝试Set-SPOUser
了 cmdlet 从测试用户修改站点的IsSiteCollectionAdmin
-property 只是为了测试它是否有效。它再次在我的本地机器上运行良好,但在 Azure Automation Runbook 上却不行。
更新:我尝试在 Azure Function 中实现相同的脚本,它的行为与 Azure Automation Runbook 完全相同。我安装了与在 Azure 自动化中使用相同的模块,仅此而已。并且仍然没有输出错误。
解决方案
推荐阅读
- pine-script - TradingView - 如何以百分比设置佣金?
- javascript - AgnualrJs - $parsers.unshift 与 $parsers.push 的区别
- arrays - 在 ruby 的所有数组中创建一个具有公共字符串的新数组
- c++ - 父类的虚函数无法工作
- tensorflow - 在 Tensorflow 的计算图中创建一个新的随机操作
- c - 打印字符串指针导致 C 中的输出损坏
- excel - 在 excel 中使用 CONCATENATE 后,如何在一个单元格中为不同的行使用 2 种不同的字体?
- c++ - C++基类指针调用子虚函数,为什么基类指针可以看到子类成员
- java - 有关使用 Java 与 Apache Derby 连接的协议
- python - 对 Python 的 SQL 查询,使用 Pandas