积极答复者
批量创建邮箱的.csv

问题
答案
-
您好,
首先您需要知道,使用脚本批量创建的限制:
1.所有用户都是使用相同的初始密码。
2. New—Mailbox命令必须的参数:Name,Password,UserPrincipalName
所以您需要创建一个“待创建用户”的.CSV文件,类似于:
之后就可以使用以下命令来批量创建用户:
$Password=Read-Host "Enter Password" –AsSecureString Import-CSV c:/temp/infor.csv | ForEach {New-Mailbox -Name $_.name -userPrincipalName $_.userPrincipalName -OrganizationalUnit $_.OrganizationalUnit -Password $Password -ResetPasswordOnNextLogon $true}
此致,
Kyle Xu
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已标记为答案 DJxiaoxin 2019年3月12日 3:21
-
您好,
并不行,为了安全考虑,创建邮箱的时候只接收密文的密码(从屏幕密文传入),如果您从CSV文件中获取密码值(明文),那是New-Mailbox命令不接受的方式,所以会有此报错。
如果您想要加在里面您可以使用以下脚本:
Import-CSV c:/temp/infor.csv | ForEach{ $Password=Read-Host "Enter Password for " $_.name –AsSecureString New-Mailbox -Name $_.name -userPrincipalName $_.userPrincipalName -OrganizationalUnit $_.OrganizationalUnit -Password $Password
我个人不推荐您使用该方式,因为每创建一个用户就需要输入一次密码,批量的操作就没什么意义了:
实际上您无需担心第一个脚本中所有用户使用相同的密码,因为它只是一个临时的初始密码,第一个脚本中的该参数强制用户下一次登录需要修改自己的密码:
-ResetPasswordOnNextLogon $true
此致,
Kyle Xu
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已标记为答案 DJxiaoxin 2019年3月12日 8:40
全部回复
-
您好,
首先您需要知道,使用脚本批量创建的限制:
1.所有用户都是使用相同的初始密码。
2. New—Mailbox命令必须的参数:Name,Password,UserPrincipalName
所以您需要创建一个“待创建用户”的.CSV文件,类似于:
之后就可以使用以下命令来批量创建用户:
$Password=Read-Host "Enter Password" –AsSecureString Import-CSV c:/temp/infor.csv | ForEach {New-Mailbox -Name $_.name -userPrincipalName $_.userPrincipalName -OrganizationalUnit $_.OrganizationalUnit -Password $Password -ResetPasswordOnNextLogon $true}
此致,
Kyle Xu
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已标记为答案 DJxiaoxin 2019年3月12日 3:21
-
您好:
是否可以直接在infor.csv中写入Password
无法处理对参数“Password”的参数转换。无法将“System.String”类型的“anbang@5488”值转换为“System.Security.SecureStrin
g”类型。
+ CategoryInfo : InvalidData: (:) [New-Mailbox], ParameterBindin...mationException
+ FullyQualifiedErrorId : ParameterArgumentTransformationError,New-Mailbox
无法处理对参数“Password”的参数转换。无法将“System.String”类型的“anbang@1556”值转换为“System.Security.SecureStrin
g”类型。
+ CategoryInfo : InvalidData: (:) [New-Mailbox], ParameterBindin...mationException
+ FullyQualifiedErrorId : ParameterArgumentTransformationError,New-Mailbox尝试写入后,提示以上报错,无法写入Password
-
您好,
并不行,为了安全考虑,创建邮箱的时候只接收密文的密码(从屏幕密文传入),如果您从CSV文件中获取密码值(明文),那是New-Mailbox命令不接受的方式,所以会有此报错。
如果您想要加在里面您可以使用以下脚本:
Import-CSV c:/temp/infor.csv | ForEach{ $Password=Read-Host "Enter Password for " $_.name –AsSecureString New-Mailbox -Name $_.name -userPrincipalName $_.userPrincipalName -OrganizationalUnit $_.OrganizationalUnit -Password $Password
我个人不推荐您使用该方式,因为每创建一个用户就需要输入一次密码,批量的操作就没什么意义了:
实际上您无需担心第一个脚本中所有用户使用相同的密码,因为它只是一个临时的初始密码,第一个脚本中的该参数强制用户下一次登录需要修改自己的密码:
-ResetPasswordOnNextLogon $true
此致,
Kyle Xu
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已标记为答案 DJxiaoxin 2019年3月12日 8:40
-
您好,
这一个是New-Mailbox命令中所有可以使用的命令。
您只需要在导入的CSV中添加相应的条目,并在脚本中添加相应的参数即可。
此致,
Kyle Xu
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
-
只有”-SamAccountName“是可以支持的的参数,其它的参数并不能在New-Mailbox命令中使用:
此致,
Kyle Xu
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.