Estou trabalhando em uma maneira de habilitar o MFA para usuários do AAD/O365. Estou me referindo a este artigo dos documentos do MS:
https://docs.microsoft.com/en-us/azure/active-directory/authentication/howto-mfa-userstates
Se eu instalar o módulo MSOnline, importá-lo e conectar-msolservice com PS versão 5.1, ele funcionará conforme descrito. Se eu tentar fazer isso com o PS versão 6.2, recebo:
Connect-MsolService : Could not load file or assembly 'System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. The system cannot find the file specified.
Isso ocorre porque o PS 6.2 é construído no .Net Core e não é capaz de carregar as bibliotecas de uma versão anterior do .Net que faz parte do módulo MSOnline?
O que realmente procuro é uma maneira de automatizar a habilitação de MFA para usuários do AAD/O365, e estou pensando em usar um aplicativo de funções do Azure com o PowerShell. Esta parece ser uma boa maneira de unir isso com nosso sistema ITSM chamando um web hook disponibilizado por meio do Function App. Obviamente, há alguns elementos de permissão e segurança a serem trabalhados para fazer isso. No entanto, se eu não conseguir carregar o módulo MSOnline para PS 6.2, que é a plataforma PS disponível como um aplicativo de funções, acho que não funcionaria usar um aplicativo de funções do PowerShell.
Não vejo uma maneira de habilitar o MFA para um usuário do AAD na API do gráfico, mas talvez esteja faltando alguma coisa. Existe outra maneira de habilitar o MFA para um usuário do AzureAD que não seja o módulo MSOnline PS ou a interface do usuário da Web?
O módulo msonline não está realmente pronto para o PowerShell 6: https://blogs.technet.microsoft.com/cloudlojik/2018/07/02/how-to-install-the-msonline-powershell-module/ E: https:// /www.enowsoftware.com/solutions-engine/powershell-core-is-ga-but-not-ready-for-office-365
No entanto, acho que será em breve. Talvez em algum lugar hoje em dia @Ignite? :)
Em resposta à sua (sub)pergunta, como habilitar o MFA no AzureAD diferente do módulo e do webgui. Por que você não usa o Acesso Condicional do Azure AD? É totalmente automatizado, muito seguro e melhor ainda, feito para esse fim.