如何使用命令行开启Teams class notebook的父母访问链接

几个星期之前我写了一篇文章是光宇如何开启Teams Class Notebook父母访问权限,之前的方法是需要通过管理员登陆后台一个个的去开启,估计各位已经用Teams和Groups的各位已经有上千个site了吧,这样去做其实是不现实的,时间花了不说,还不能保证真的做好,毕竟手工一个个去点肯定是有误差的。具体大家可以通过下面链接访问之前我描述这种方法的文章:

https://jamesrong.com/%E5%A6%82%E4%BD%95%E5%BC%80%E5%90%AFteams-class-notebook%E7%9A%84%E7%88%B6%E6%AF%8D%E8%AE%BF%E9%97%AE%E9%93%BE%E6%8E%A5/

过去这段时间我上网搜索了不少时间也质询了微软看如何可以快捷的解决这些问题,终于找到了一个非官方的方法能解决我们的问题,可以批量的允许anyone的共享权限来让parent link可以用上来。但也有点缺陷,就是命令行运行后新建的Site还是需要继续通过命令行改,不能一劳永逸,但有方法 总比没好,只要定期运行这个命令就可以了。我们这边测试过是没问题的,大家也可以参考一下。

第一步,你需要下载 Sharepoint的powershell 模块,所以你可以通过下面的链接去下载安装包。

https://www.microsoft.com/en-us/download/details.aspx?id=35588

双击安装包之后按照提示来安装,点击”Next”。

点击“Finish”.

以管理员身份打开sharepoint Online 的powershell.

运行以下命令并且登陆你O365的管理员账号。

$adminUPN=”SharePoint 管理员账号邮件地址”

输入一下命令来登陆。

$userCredential = Get-Credential -UserName $adminUPN -Message “Sharepoint 管理员的密码”.

再一次登陆你Sharepoint Online的管理员账号。

输入一下命令来登陆你sharepoint online的管理员site。

Connect-SPOService -Url https://”你sharepoint online的域名”-admin.sharepoint.com -Credential $userCredential

输入下面的命令来开启全局所有site 的anyone共享权限。注意,这里不需要有任何修改,直接复制粘贴就可以的了。

$sites = Get-SPOSite -Limit All

 

foreach($site in $sites)

{

$siteURL = $site.Url

Write-Host $siteURL -ForegroundColor Cyan

Set-SPOSite -Identity $siteURL -SharingCapability ExternalUserAndGuestSharing

 

}

命令行输出之后,你需要耐心等候,因为他要全局一个个site的帮你开启anyone共享的权限,即使是已经开启的site他也会扫面一遍的,这里需要你耐心等候,具体时间要看你的tenant有多少site,像我们学校就需要大概一个小时才完全修改完成。这过程中如果你终止了会导致部分site不能完成配置修改的。 等整个命令运行完成,你就可以测试一下,应该就可以开启parent 访问的链接了。

提示:

  1. 这条命令只能针对所有已存在的site修改anyone 共享权限,之后新建的site默认还是会禁掉这个权限的,所以我推荐你要定期运行下。
  2. 不要太局限,这条命令不单单是用来开启Onenote Class Notebook 的parent link访问权限。还可以开启基于Teams的anyone访问权限,当然了,如果你不需要,那就别运行了。