2020年6月

面那个使用用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块。

若要解除阻止该文本文件中列出的帐户,请运行以下命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-MsolUser -UserPrincipalName $_ -BlockCredential $false }




补充
要先安装好模块,PowerShell版本要5以上

下载安装官方提供的Azure Active Directory Connection

请在本地用管理员身份打开PowerShell,并运行命令 Install-Module -Name AzureAD

下载安装官方提供的Microsoft Online Service Sign-in Assistant for IT Professionals

连接到MSOL

Connect-MsolService

列出所有被禁用户(手动操作一下,放进Accounts.txt)

Get-MsolUser -ALL  -EnabledFilter DisabledOnly

解除

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-MsolUser -UserPrincipalName $_ -BlockCredential $false }


1.连接到 Azure Active Directory PowerShell Graph 模块

步骤 1:安装所需软件

这些步骤只需在您的计算机上执行一次即可,而不是在每次连接时都要求执行。但是,您可能需要定期安装较新版本的软件。

打开提升的 Windows PowerShell 命令提示符(以管理员身份运行 Windows PowerShell)。

在"管理员: Windows PowerShell"命令窗口中,运行以下命令:

Install-Module -Name AzureAD

果系统提示从不受信任的存储库安装模块,请键入 Y,然后按 Enter 键。

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

若要使用帐户名称和密码或者多重身份验证 (MFA) 连接到 Office 365 订阅的 Azure AD,请在 Windows PowerShell 命令提示符中运行这些命令之一(不必进行提升)。

Office 365 云    命令
Office 365 全球 (+GCC)    Connect-AzureAD
由世纪互联运营的 Office 365    Connect-AzureAD -AzureEnvironmentName AzureChinaCloud
Office 365 德国    Connect-AzureAD -AzureEnvironmentName AzureGermanyCloud
Office 365 美国政府版 DoD 和 Office 365 美国政府版 GCC 高    Connect-AzureAD -AzureEnvironmentName AzureUSGovernment

在“登录到你的帐户”对话框中,键入 Office 365工作或学校帐户用户名和密码,再单击“确定”。
如果使用的是 MFA,请按照其他对话框中的说明提供更多身份验证信息,例如验证码。
连接后,可对 Azure Active Directory PowerShell Graph 模块使用这些 cmdlet。

与用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块连接
用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块中的命令在其 cmdlet 名称中具有 Msol。

PowerShell 版本 7 不支持用于 Windows PowerShell 模块和 cmdlet 的其名称中包含 Msol 的 Microsoft Azure Active Directory 模块。 对于 PowerShell 版本 7 和更高版本,必须使用 Azure Active Directory PowerShell for Graph 模块或 Azure PowerShell。

PowerShell Core 不支持用于 Windows PowerShell 模块和 cmdlet 的其名称中包含 Msol 的 Microsoft Azure Active Directory 模块。 若要继续使用这些 cmdlet,必须从 Windows PowerShell 运行它们。

步骤 1:安装所需软件

些步骤只需在您的计算机上执行一次即可,而不是在每次连接时都要求执行。但是,您可能需要定期安装较新版本的软件。

安装 64 位版 Microsoft Online Services 登录助手:适用于 IT 专业人员 RTW 的 Microsoft Online Services 登录助手

安装用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块,具体步骤如下:

打开提升的 Windows PowerShell 命令提示符(以管理员身份运行 Windows PowerShell)。

运行 Install-Module MSOnline 命令。

如果系统提示安装 NuGet 提供程序,请键入 Y,然后按 Enter 键。
如果系统提示从 PSGallery 安装模块,请键入 Y,然后按 Enter 键。

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

若要使用帐户名称和密码或者多重身份验证 (MFA) 连接到 Office 365 订阅的 Azure AD,请在 Windows PowerShell 命令提示符中运行这些命令之一(不必进行提升)。

表 2

Office 365 云 命令
Office 365 全球 (+GCC) Connect-MsolService
由世纪互联运营的 Office 365 Connect-MsolService -AzureEnvironment AzureChinaCloud
Office 365 德国 Connect-MsolService -AzureEnvironment AzureGermanyCloud
Office 365 美国政府版 DoD 和 Office 365 美国政府版 GCC 高 Connect-MsolService -AzureEnvironment USGovernment

在“登录到你的帐户”对话框中,键入 Office 365工作或学校帐户用户名和密码,再单击“确定”。
如果使用的是 MFA,请按照其他对话框中的说明提供更多身份验证信息,例如验证码。

以上内容参考:链接

使用用于图表模块的 Azure Active Directory PowerShell

首先连接到 Office365租户

阻止对单个用户帐户的访问

使用以下语法来阻止单个用户帐户:

Set-AzureADUser -ObjectID <sign-in name of the user account> -AccountEnabled $false

此示例阻止访问用户帐户 fabricec@litwareinc.com

Set-AzureADUser -ObjectID fabricec@litwareinc.com -AccountEnabled $false

若要取消阻止此用户帐户,请运行以下命令:

Set-AzureADUser -ObjectID fabricec@litwareinc.com -AccountEnabled $true

若要根据用户的显示名称显示用户帐户 UPN,请使用以下命令:

$userName="<display name>"
Write-Host (Get-AzureADUser | where {$_.DisplayName -eq $userName}).UserPrincipalName

本示例显示名为 Caleb Sills 的用户的用户帐户 UPN。

$userName="Caleb Sills"
Write-Host (Get-AzureADUser | where {$_.DisplayName -eq $userName}).UserPrincipalName

若要基于用户的显示名称阻止某个帐户,请使用以下命令:

$userName="<display name>"
Set-AzureADUser -ObjectID (Get-AzureADUser | where {$_.DisplayName -eq $userName}).UserPrincipalName -AccountEnabled $false

在任何时候,都可以使用以下命令检查用户帐户的阻止状态:

Get-AzureADUser -UserPrincipalName <UPN of user account> | Select DisplayName,AccountEnabled

阻止对多个用户帐户的访问

akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com

在以下命令中,示例文本文件为 C:\My Documents\Accounts.txt。 将此替换为您的文本文件的路径和文件名。

若要阻止访问该文本文件中列出的帐户,请运行以下命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-AzureADUSer -ObjectID $_ -AccountEnabled $false }

若要解除阻止该文本文件中列出的帐户,请运行以下命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-AzureADUSer -ObjectID $_ -AccountEnabled $true }

使用用于 Windows PowerShell 的 Microsoft Azure Active Directory 模块。

首先,连接到 Office 365 租户

阻止对单个用户帐户的访问

使用以下语法来阻止对单个用户帐户的访问

Set-MsolUser -UserPrincipalName <sign-in name of user account>  -BlockCredential $true

此示例阻止访问用户帐户 fabricec@litwareinc.com

Set-MsolUser -UserPrincipalName fabricec@litwareinc.com -BlockCredential $true

若要取消阻止该用户帐户,请运行以下命令:

Set-MsolUser -UserPrincipalName <sign-in name of user account>  -BlockCredential $false

在任何时候,都可以使用以下命令检查用户帐户的阻止状态:

Get-MsolUser -UserPrincipalName <sign-in name of user account> | Select DisplayName,BlockCredential

阻止对多个用户帐户的访问

首先,创建一个文本文件,其中每行包含一个帐户,如下所示

akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com

在以下命令中,示例文本文件为 C:\My Documents\Accounts.txt。 将此替换为您的文本文件的路径和文件名。

若要阻止访问该文本文件中列出的帐户,请运行以下命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-MsolUser -UserPrincipalName $_ -BlockCredential $true }

若要解除阻止该文本文件中列出的帐户,请运行以下命令:

Get-Content "C:\My Documents\Accounts.txt" | ForEach { Set-MsolUser -UserPrincipalName $_ -BlockCredential $false }

参考:链接1
参考:链接2
参考:链接3
参考:链接4

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

步骤 1:安装所需软件

Install-Module -Name AzureAD

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

Connect-AzureAD

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

步骤 1:安装所需软件

Install-Module MSOnline

出现提示时选择A

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

Connect-MsolService

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

登陆成功后,我们就能开始操作了

我在这里给出我用的代码

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"

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

这里转载了个csv:点击下载

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

csv文件由5个部分组成

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

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

提供的的csv文件里面是这样的

microsoft:STANDARDWOFFPACK_STUDENT

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

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

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

Get-MsolAccountSku

这些都做好了,就可以真正的开始跑脚本了

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"

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

转自:https://www.zxd.win/16.html

office 365账户有时候不知道怎么微软就强制给你启用了安全验证登录。

非让你下载一个Authenticator软件来辅助登录。

一开始以为是Azure多重身份验证结果关了,没用!!

解决方法:

1.打开管理后台。
2.点击Azure Active Directory
3.再次点击Azure里面的Azure Active Directory
4.点击:属性
5.点击下方的:管理安全默认值
6.修改安全默认值为:否(随便选一个理由)

一般情况问题就可以解决了