利用Windows PowerShell来批量创建Office 365(各种订阅)用户

本文参考的官方文档:https://docs.microsoft.com/zh-cn/office365/enterprise/powershell/create-user-accounts-with-office-365-powershell

首先你的电脑要能运行Windows PowerShell,win10的话,在左下角图标上右键,选择Windows PowerShell(管理员)

步骤 1:安装所需软件

1
2
Install-Module -Name AzureAD

步骤 2:连接到 Office 365 订阅的 Azure AD

1
2
Connect-AzureAD

与用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块连接

步骤 1:安装所需软件

1
2
Install-Module MSOnline

出现提示时选择A

好了,完成上面的环境安装后,我们就可以开始操作了

1
2
Connect-MsolService

这时会让你输入账号密码,注意需要有管理权限的(或者具有创建用户权限的管理员)

[请输入图片描述

登陆成功后,我们就能开始操作了 下面是官方给的批量创建用户的命令,我们就按照这个写就好

[请输入图片描述 我在这里给出我用的代码

1
2
Import-Csv -Path "C:\Users\Administrator\Desktop
1
2
Import-Csv -Path "C:\Users\Administrator\Desktop
Import-Csv -Path "C:\Users\Administrator\Desktop\001.csv" | foreach {New-MsolUser -DisplayName $_.DisplayName -FirstName $_.FirstName -LastName $_.LastName -UserPrincipalName $_.UserPrincipalName -UsageLocation $_.UsageLocation -LicenseAssignment $_.AccountSkuId} | Export-Csv -Path "C:\Users\Administrator\Desktop\NewAccountResults.csv"

01.csv" | foreach {New-MsolUser -DisplayName $_.DisplayName -FirstName $_.FirstName -LastName $_.LastName -UserPrincipalName $_.UserPrincipalName -UsageLocation $_.UsageLocation -LicenseAssignment $_.AccountSkuId} | Export-Csv -Path "C:\Users\Administrator\Desktop\NewAccountResults.csv"
01.csv" | foreach {New-MsolUser -DisplayName $_.DisplayName -FirstName $_.FirstName -LastName $_.LastName -UserPrincipalName $_.UserPrincipalName -UsageLocation $_.UsageLocation -LicenseAssignment $_.AccountSkuId} | Export-Csv -Path "C:\Users\Administrator\Desktop\NewAccountResults.csv"

这个代码大概的意思是,读取的是我桌面(C:UsersAdministratorDesktop)的001.csv这个文件,并将结果记录在桌面(C:UsersAdministratorDesktop)的这个NewAccountResults.csv 文件中,大家在使用的时候可以自行修改这两个路径

为了方便大家,我把我用的csv文件放出来(csv文件不带用户密码,不用担心安全问题)

https://cloud.zxd.win/mjj.csv 备用链接:mjj.csv

如果你使用我的csv文件,还需要进行修改一些内容

csv文件由5个部分组成

[请输入图片描述

打开我提供的csv文件,UserPrincipalName(就是用户的登陆邮箱)需要修改一下,把后缀修改为你的域名后缀就可以了 用excel的话,直接按ctrl+h,按下图操作(其中xxxxxxx.com代表你绑定在Office 365的域名)

[请输入图片描述

除了UserPrincipalName,你还需要修改LicenseAssignment,就是你要分配给用户什么许可证

我的csv文件里面是这样的

1
2
microsoft:STANDARDWOFFPACK_STUDENT

前面这个microsoft,你需要修改为微软给你的二级域名的前面那部分 例如我的是这个admin@knauniversity.onmicrosoft.com 就需要把microsoft修改为knauniversity(批量修改的方法在前面有,ctrl+h)

后面这个STANDARDWOFFPACK_STUDENT,代表的是学生许可证 如果你想添加教师,就改为STANDARDWOFFPACK_FACULTY

你也可以在Windows PowerShell使用下面这个命令来看你的订阅

1
Get-MsolAccountSku

[请输入图片描述 这些都做好了,就可以真正的开始跑脚本了

1
2
Import-Csv -Path "C:\Users\Administrator\Desktop
1
2
Import-Csv -Path "C:\Users\Administrator\Desktop
Import-Csv -Path "C:\Users\Administrator\Desktop\001.csv" | foreach {New-MsolUser -DisplayName $_.DisplayName -FirstName $_.FirstName -LastName $_.LastName -UserPrincipalName $_.UserPrincipalName -UsageLocation $_.UsageLocation -LicenseAssignment $_.AccountSkuId} | Export-Csv -Path "C:\Users\Administrator\Desktop\NewAccountResults.csv"

01.csv" | foreach {New-MsolUser -DisplayName $_.DisplayName -FirstName $_.FirstName -LastName $_.LastName -UserPrincipalName $_.UserPrincipalName -UsageLocation $_.UsageLocation -LicenseAssignment $_.AccountSkuId} | Export-Csv -Path "C:\Users\Administrator\Desktop\NewAccountResults.csv"
01.csv" | foreach {New-MsolUser -DisplayName $_.DisplayName -FirstName $_.FirstName -LastName $_.LastName -UserPrincipalName $_.UserPrincipalName -UsageLocation $_.UsageLocation -LicenseAssignment $_.AccountSkuId} | Export-Csv -Path "C:\Users\Administrator\Desktop\NewAccountResults.csv"

这是我用的脚本,具体要修改的地方就两个,在文章开头也说过了,前面那个路径代表你的csv的位置,后面那个路径是储存你创建的用户信息的位置

大概就是这些啦,文章写的还算比较详细吧,所以显得比较冗长,我也是个小白,不足的地方请大家多多指正,谢谢!

这是我跑的成果

[请输入图片描述 转自:https://www.zxd.win/16.html

坚持原创技术分享,您的支持将鼓励我继续创作!