Gerir grupos de segurança com o PowerShell
Este artigo aplica-se ao Microsoft 365 Enterprise e ao Office 365 Enterprise.
Pode utilizar o PowerShell para o Microsoft 365 como alternativa ao centro de administração do Microsoft 365 para gerir grupos de segurança.
Este artigo descreve a listagem, criação, alteração de definições e remoção de grupos de segurança.
Quando um bloco de comandos neste artigo exigir que especifique valores variáveis, utilize estes passos.
- Copie o bloco de comandos para a área de transferência e cole-o no Bloco de Notas ou no Ambiente de Script Integrado do PowerShell (ISE).
- Preencha os valores das variáveis e remova os carateres "<" e ">".
- Execute os comandos na janela do PowerShell ou no ISE do PowerShell.
Gerir grupos de segurança com o Microsoft Graph PowerShell
Nota
O módulo do Azure Active Directory está a ser substituído pelo SDK do PowerShell do Microsoft Graph. Pode utilizar o SDK do PowerShell do Microsoft Graph para aceder a todas as APIs do Microsoft Graph. Para obter mais informações, veja Introdução ao SDK do PowerShell do Microsoft Graph.
Primeiro, ligue-se ao seu inquilino do Microsoft 365.
A gestão de grupos de segurança requer o âmbito de permissão Group.ReadWrite.All ou uma das outras permissões listadas na página de referência da Graph API "List subscribedSkus". Alguns comandos neste artigo podem exigir âmbitos de permissão diferentes, caso em que será indicado na secção relevante.
Connect-Graph -Scopes Group.ReadWrite.All
Listar os seus grupos
Utilize este comando para listar todos os seus grupos.
Get-MgGroup -All
Utilize estes comandos para apresentar as definições de um grupo específico pelo respetivo nome a apresentar.
$groupName="<display name of the group>"
Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName }
Criar um novo grupo
Utilize este comando para criar um novo grupo de segurança.
Connect-MgGraph -Scopes "Group.Create"
New-MgGroup -Description "<group purpose>" -DisplayName "<name>" -MailEnabled:$false -SecurityEnabled -MailNickname "<email name>"
Apresentar as definições de um grupo
Apresentar as definições do grupo com estes comandos.
$groupName="<display name of the group>"
Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName } | Select-Object *
Remover um grupo de segurança
Utilize estes comandos para remover um grupo de segurança.
$groupName="<display name of the group>"
$group = Get-MgGroup -Filter "displayName eq '$groupName'"
Remove-MgGroup -GroupId $group.Id
Gerir os proprietários de um grupo de segurança
Utilize estes comandos para apresentar os proprietários atuais de um grupo de segurança.
$groupName="<display name of the group>"
# Connect to Microsoft Graph
Connect-MgGraph -Scopes "GroupMember.Read.All"
# Display group owners
Get-MgGroupOwner -GroupId (Get-MgGroup | Where-Object { $_.DisplayName -eq $groupName }).Id
Utilize estes comandos para adicionar uma conta de utilizador pelo respetivo nome principal de utilizador (UPN) aos proprietários atuais de um grupo de segurança.
$userUPN="<UPN of the user account to add>"
$groupName="<display name of the group>"
# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "User.ReadBasic.All"
# Get the group and user
$group = Get-MgGroup -Filter "displayName eq '$groupName'"
$userId = (Get-MgUser -Filter "userPrincipalName eq '$userUPN'").Id
# Add the user as an owner to the group
$newGroupOwner =@{
"@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
}
New-MgGroupOwnerByRef -GroupId $group.Id -BodyParameter $newGroupOwner
Utilize estes comandos para adicionar uma conta de utilizador pelo respetivo nome a apresentar aos proprietários atuais de um grupo de segurança.
$userName="<Display name of the user account to add>"
$groupName="<display name of the group>"
# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "Directory.Read.All", "User.ReadBasic.All"
# Get the group and user
$group = Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName }
$userId = (Get-MgUser -All | Where-Object { $_.DisplayName -eq $userName }).Id
# Add the user as an owner to the group
$newGroupOwner =@{
"@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
}
New-MgGroupOwnerByRef -GroupId $group.Id -BodyParameter $newGroupOwner
Utilize estes comandos para remover uma conta de utilizador pelo respetivo UPN dos proprietários atuais de um grupo de segurança.
$userUPN="<UPN of the user account to remove>"
$groupName="<display name of the group>"
# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "Directory.ReadWrite.All"
# Get the group and user
$group = Get-MgGroup -Filter "displayName eq '$groupName'" | Select-Object -First 1
$user = Get-MgUser -Filter "userPrincipalName eq '$userUPN'" | Select-Object -First 1
# Remove the user from the group
Remove-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $user.Id
Utilize estes comandos para remover uma conta de utilizador pelo respetivo nome a apresentar dos proprietários atuais de um grupo de segurança.
$userName="<Display name of the user account to remove>"
$groupName="<display name of the group>"
$group = Get-MgGroup | Where-Object { $_.DisplayName -eq $groupName }
$user = Get-MgUser | Where-Object { $_.DisplayName -eq $userName }
Remove-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $user.Id
Consulte também
Gerir contas de utilizador, licenças e grupos do Microsoft 365 com o PowerShell