Cmdlets do Microsoft Entra para definir configurações de grupo

Este artigo contém instruções para usar cmdlets do PowerShell para criar e atualizar grupos no Microsoft Entra ID, parte do Microsoft Entra. Este conteúdo aplica-se apenas a grupos do Microsoft 365 (por vezes chamados grupos unificados).

Importante

Algumas configurações exigem uma licença do Microsoft Entra ID P1. Para obter mais informações, consulte a tabela Configurações do modelo .

Para obter mais informações sobre como impedir que usuários não administradores criem grupos de segurança, defina a AllowedToCreateSecurityGroups propriedade como False conforme descrito em Update-MgPolicyAuthorizationPolicy.

As configurações de grupos do Microsoft 365 são definidas usando um objeto Settings e um objeto SettingsTemplate. Inicialmente, você não vê nenhum objeto Settings em seu diretório, porque seu diretório está configurado com as configurações padrão. Para alterar as configurações padrão, você deve criar um novo objeto de configurações usando um modelo de configurações. Os modelos de configurações são definidos pela Microsoft. Existem vários modelos de configurações diferentes. Para definir as configurações de grupo do Microsoft 365 para seu diretório, use o modelo chamado "Group.Unified". Para definir as configurações de grupo do Microsoft 365 em um único grupo, use o modelo chamado "Group.Unified.Guest". Este modelo é usado para gerenciar o acesso de convidado a um grupo do Microsoft 365.

Os cmdlets fazem parte do módulo Microsoft Graph PowerShell . Para obter instruções sobre como baixar e instalar o módulo em seu computador, consulte Instalar o SDK do Microsoft Graph PowerShell.

Nota

Os módulos Azure AD e MSOnline PowerShell foram preteridos a partir de 30 de março de 2024. Para saber mais, leia a atualização de descontinuação. Após essa data, o suporte para esses módulos é limitado à assistência de migração para o SDK do Microsoft Graph PowerShell e correções de segurança. Os módulos preteridos continuarão a funcionar até 30 de março de 2025.

Recomendamos migrar para o Microsoft Graph PowerShell para interagir com o Microsoft Entra ID (anteriormente Azure AD). Para perguntas comuns sobre migração, consulte as Perguntas frequentes sobre migração. Nota: As versões 1.0.x do MSOnline podem sofrer interrupções após 30 de junho de 2024.

Nota

Com as configurações em vigor para restringir a adição de convidados aos Grupos do Microsoft 365, os administradores ainda adicionarão usuários convidados aos Grupos do Microsoft 365. A configuração impedirá que usuários não administradores adicionem usuários convidados a grupos do Microsoft 365.

Instalar cmdlets do PowerShell

Instale os cmdlets do Microsoft Graph conforme descrito em Instalar o SDK do Microsoft Graph PowerShell.

  1. Abra a aplicação Windows PowerShell como administrador.

  2. Instale os cmdlets do Microsoft Graph.

    Install-Module Microsoft.Graph -Scope AllUsers
    
  3. Instale os cmdlets beta do Microsoft Graph.

    Install-Module Microsoft.Graph.Beta -Scope AllUsers
    

Criar configurações no nível do diretório

Essas etapas criam configurações no nível do diretório, que se aplicam a todos os grupos do Microsoft 365 no diretório.

  1. Nos cmdlets DirectorySettings, você deve especificar a ID do SettingsTemplate que deseja usar. Se você não souber essa ID, esse cmdlet retornará a lista de todos os modelos de configurações:

    Get-MgBetaDirectorySettingTemplate
    

    Esta chamada de cmdlet retorna todos os modelos disponíveis:

    Id                                   DisplayName         Description
    --                                   -----------         -----------
    62375ab9-6b52-47ed-826b-58e47e0e304b Group.Unified       ...
    08d542b9-071f-4e16-94b0-74abb372e3d9 Group.Unified.Guest Settings for a specific Microsoft 365 group
    16933506-8a8d-4f0d-ad58-e1db05a5b929 Company.BuiltIn     Setting templates define the different settings that can be used for the associ...
    4bc7f740-180e-4586-adb6-38b2e9024e6b Application...
    898f1161-d651-43d1-805c-3b0b388a9fc2 Custom Policy       Settings ...
    5cf42378-d67d-4f36-ba46-e8b86229381d Password Rule       Settings ...
    
  2. Para adicionar uma URL de diretriz de uso, primeiro você precisa obter o objeto SettingsTemplate que define o valor da URL da diretriz de uso; ou seja, o modelo Group.Unified:

    $TemplateId = (Get-MgBetaDirectorySettingTemplate | where { $_.DisplayName -eq "Group.Unified" }).Id
    $Template = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value $TemplateId -EQ
    
  3. Crie um objeto que contenha valores a serem usados para a configuração de diretório. Esses valores alteram o valor da diretriz de uso e habilitam rótulos de sensibilidade. Defina estas ou qualquer outra configuração no modelo conforme necessário:

    $params = @{
       templateId = "$TemplateId"
       values = @(
          @{
             name = "UsageGuidelinesUrl"
             value = "https://guideline.example.com"
          }
          @{
             name = "EnableMIPLabels"
             value = "True"
          }
       )
    }
    
  4. Crie a configuração de diretório usando New-MgBetaDirectorySetting:

    New-MgBetaDirectorySetting -BodyParameter $params
    
  5. Você pode ler os valores usando os seguintes comandos:

    $Setting = Get-MgBetaDirectorySetting | where { $_.DisplayName -eq "Group.Unified"}
    $Setting.Values
    

Atualizar configurações no nível de diretório

Para atualizar o valor de UsageGuideLinesUrl no modelo de configuração, leia as configurações atuais do ID do Microsoft Entra, caso contrário, podemos acabar substituindo configurações existentes diferentes da UsageGuideLinesUrl.

  1. Obtenha as configurações atuais do Group.Unified SettingsTemplate:

    $Setting = Get-MgBetaDirectorySetting | where { $_.DisplayName -eq "Group.Unified"}
    
  2. Verifique as configurações atuais:

    $Setting.Values
    

    Este comando retorna os seguintes valores:

    Name                            Value
    ----                            -----
    EnableMIPLabels                 True
    CustomBlockedWordsList
    EnableMSStandardBlockedWords    False
    ClassificationDescriptions
    DefaultClassification
    PrefixSuffixNamingRequirement
    AllowGuestsToBeGroupOwner       False
    AllowGuestsToAccessGroups       True
    GuestUsageGuidelinesUrl
    GroupCreationAllowedGroupId
    AllowToAddGuests                True
    UsageGuidelinesUrl              https://guideline.example.com
    ClassificationList
    EnableGroupCreation             True
    NewUnifiedGroupWritebackDefault True
    
  3. Para remover o valor de UsageGuideLinesUrl, edite a URL para ser uma cadeia de caracteres vazia:

    $params = @{
       Values = @(
          @{
             Name = "UsageGuidelinesUrl"
             Value = ""
          }
       )
    }
    
  4. Atualize o valor usando o cmdlet Update-MgBetaDirectorySetting :

    Update-MgBetaDirectorySetting -DirectorySettingId $Setting.Id -BodyParameter $params
    

Configurações do modelo

Aqui estão as configurações definidas no Group.Unified SettingsTemplate. Salvo indicação em contrário, estas funcionalidades requerem uma licença Microsoft Entra ID P1.

Definição Descrição
  • EnableGroupCreation
  • Tipo: Booleano
  • Predefinição: True
O sinalizador que indica se a criação de grupos do Microsoft 365 é permitida no diretório por usuários não administradores. Essa configuração não requer uma licença do Microsoft Entra ID P1.
  • GroupCreationAllowedGroupId
  • Tipo: cadeia
  • Padrão: ""
GUID do grupo de segurança para o qual os membros têm permissão para criar grupos do Microsoft 365, mesmo quando EnableGroupCreation == false.
  • UsageGuidelinesUrl
  • Tipo: cadeia
  • Padrão: ""
Um link para as Diretrizes de Uso do Grupo.
  • ClassificaçãoDescrições
  • Tipo: cadeia
  • Padrão: ""
Uma lista delimitada por vírgulas de descrições de classificação. O valor de ClassificationDescriptions só é válido neste formato:
$setting["ClassificationDescriptions"] ="Classificação:Descrição,Classificação:Descrição"
onde Classification corresponde a uma entrada na ClassificationList.
Esta configuração não se aplica quando EnableMIPLabels == True.
O limite de caracteres para a propriedade ClassificationDescriptions é 300 e as vírgulas não podem ser escapadas,
  • DefaultClassification
  • Tipo: cadeia
  • Padrão: ""
A classificação que deve ser usada como a classificação padrão para um grupo, se nenhum foi especificado.
Esta configuração não se aplica quando EnableMIPLabels == True.
  • PrefixSuffixNamingRequirement
  • Tipo: cadeia
  • Padrão: ""
Cadeia de caracteres de um comprimento máximo de 64 caracteres que define a convenção de nomenclatura configurada para grupos do Microsoft 365. Para obter mais informações, consulte Impor uma política de nomenclatura para grupos do Microsoft 365.
  • CustomBlockedWordsList
  • Tipo: cadeia
  • Padrão: ""
Cadeia de frases separada por vírgulas que os usuários não terão permissão para usar em nomes de grupo ou aliases. Para obter mais informações, consulte Impor uma política de nomenclatura para grupos do Microsoft 365.
  • EnableMSStandardBlockedWords
  • Tipo: Booleano
  • Padrão: "False"
Preterido. Não utilizar.
  • AllowGuestsToBeGroupProprietário
  • Tipo: Booleano
  • Predefinição: Falso
Booleano indicando se um usuário convidado pode ou não ser proprietário de grupos.
  • AllowGuestsToAccessGroups
  • Tipo: Booleano
  • Predefinição: True
Boolean indicando se um usuário convidado pode ou não ter acesso ao conteúdo de grupos do Microsoft 365. Essa configuração não requer uma licença do Microsoft Entra ID P1.
  • GuestUsageGuidelinesUrl
  • Tipo: cadeia
  • Padrão: ""
O URL de um link para as diretrizes de uso do convidado.
  • AllowToAddGuests
  • Tipo: Booleano
  • Predefinição: True
Um booleano que indica se é permitido ou não adicionar convidados a este diretório.
Essa configuração pode ser substituída e se tornar somente leitura se EnableMIPLabels estiver definido como True e uma política de convidado estiver associada ao rótulo de sensibilidade atribuído ao grupo.
Se a configuração AllowToAddGuests estiver definida como False no nível da organização, qualquer configuração AllowToAddGuests no nível do grupo será ignorada. Se quiser habilitar o acesso de convidado para apenas alguns grupos, você deve definir AllowToAddGuests como true no nível da organização e, em seguida, desativá-lo seletivamente para grupos específicos.
  • Lista de Classificação
  • Tipo: cadeia
  • Padrão: ""
Uma lista delimitada por vírgulas de valores de classificação válidos que podem ser aplicados a grupos do Microsoft 365.
Esta configuração não se aplica quando EnableMIPLabels == True.
  • HabilitaçãoMIPLabels
  • Tipo: Booleano
  • Padrão: "False"
O sinalizador que indica se os rótulos de sensibilidade publicados no portal de conformidade do Microsoft Purview podem ser aplicados a grupos do Microsoft 365. Para obter mais informações, consulte Atribuir rótulos de sensibilidade para grupos do Microsoft 365.
  • NewUnifiedGroupWritebackDefault
  • Tipo: Booleano
  • Padrão: "True"
O sinalizador que permite que um administrador crie novos grupos do Microsoft 365 sem definir o tipo de recurso groupWritebackConfiguration na carga útil da solicitação. Essa configuração é aplicável quando o write-back de grupo é configurado no Microsoft Entra Connect. "NewUnifiedGroupWritebackDefault" é uma configuração de grupo global do Microsoft 365. O valor predefinido é verdadeiro. Atualizar o valor de configuração para false alterará o comportamento de write-back padrão para grupos do Microsoft 365 recém-criados e não alterará o valor da propriedade isEnabled para grupos existentes do Microsoft 365. O administrador do grupo precisará atualizar explicitamente o valor da propriedade isEnabled do grupo para alterar o estado de write-back para grupos existentes do Microsoft 365.

Exemplo: Configurar a política de convidado para grupos no nível de diretório

  1. Obtenha todos os modelos de configuração:

    Get-MgBetaDirectorySettingTemplate
    
  2. Para definir a política de convidado para grupos no nível de diretório, você precisa do modelo Group.Unified.

    $Template = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value "62375ab9-6b52-47ed-826b-58e47e0e304b" -EQ
    
  3. Defina um valor para AllowToAddGuests para o modelo especificado:

    $params = @{
       templateId = "62375ab9-6b52-47ed-826b-58e47e0e304b"
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "False"
          }
       )
    }
    
  4. Em seguida, crie um novo objeto settings usando o cmdlet New-MgBetaDirectorySetting :

    $Setting = New-MgBetaDirectorySetting -BodyParameter $params
    
  5. Você pode ler os valores usando:

    $Setting.Values
    

Ler configurações no nível de diretório

Se você souber o nome da configuração que deseja recuperar, poderá usar o cmdlet abaixo para recuperar o valor das configurações atuais. Neste exemplo, estamos recuperando o valor de uma configuração chamada "UsageGuidelinesUrl".

(Get-MgBetaDirectorySetting).Values | where -Property Name -Value UsageGuidelinesUrl -EQ

Essas etapas leem as configurações no nível do diretório, que se aplicam a todos os grupos do Office no diretório.

  1. Leia todas as configurações de diretório existentes:

    Get-MgBetaDirectorySetting -All
    

    Este cmdlet retorna uma lista de todas as configurações de diretório:

    Id                                   DisplayName   TemplateId                           Values
    --                                   -----------   ----------                           ------
    c391b57d-5783-4c53-9236-cefb5c6ef323 Group.Unified 62375ab9-6b52-47ed-826b-58e47e0e304b {class SettingValue {...
    
  2. Leia todas as configurações de um grupo específico:

    Get-MgBetaGroupSetting -GroupId "ab6a3887-776a-4db7-9da4-ea2b0d63c504"
    
  3. Leia todos os valores de configurações de diretório de um objeto de configurações de diretório específico, usando o GUID do ID de Configurações:

    (Get-MgBetaDirectorySetting -DirectorySettingId "c391b57d-5783-4c53-9236-cefb5c6ef323").values
    

    Este cmdlet retorna os nomes e valores neste objeto de configurações para este grupo específico:

    Name                          Value
    ----                          -----
    ClassificationDescriptions
    DefaultClassification
    PrefixSuffixNamingRequirement
    CustomBlockedWordsList        
    AllowGuestsToBeGroupOwner     False 
    AllowGuestsToAccessGroups     True
    GuestUsageGuidelinesUrl
    GroupCreationAllowedGroupId
    AllowToAddGuests              True
    UsageGuidelinesUrl            https://guideline.example.com
    ClassificationList
    EnableGroupCreation           True
    

Remover configurações no nível do diretório

Esta etapa remove as configurações no nível do diretório, que se aplicam a todos os grupos do Office no diretório.

Remove-MgBetaDirectorySetting –DirectorySettingId "c391b57d-5783-4c53-9236-cefb5c6ef323c"

Criar configurações para um grupo específico

  1. Obtenha os modelos de configurações.

    Get-MgBetaDirectorySettingTemplate
    
  2. Nos resultados, localize o modelo de configurações chamado "Groups.Unified.Guest":

    Id                                   DisplayName            Description
    --                                   -----------            -----------
    62375ab9-6b52-47ed-826b-58e47e0e304b Group.Unified          ...
    08d542b9-071f-4e16-94b0-74abb372e3d9 Group.Unified.Guest    Settings for a specific Microsoft 365 group
    4bc7f740-180e-4586-adb6-38b2e9024e6b Application            ...
    898f1161-d651-43d1-805c-3b0b388a9fc2 Custom Policy Settings ...
    5cf42378-d67d-4f36-ba46-e8b86229381d Password Rule Settings ...
    
  3. Recupere o objeto de modelo para o modelo Groups.Unified.Guest:

    $Template1 = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value "08d542b9-071f-4e16-94b0-74abb372e3d9" -EQ
    
  4. Obtenha o ID do grupo ao qual pretende aplicar esta definição:

    $GroupId = (Get-MgGroup -Filter "DisplayName eq '<YourGroupName>'").Id
    
  5. Crie a nova configuração:

    $params = @{
       templateId = "08d542b9-071f-4e16-94b0-74abb372e3d9"
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "False"
          }
       )
    }
    
  6. Crie a configuração do grupo:

    New-MgBetaGroupSetting -GroupId $GroupId -BodyParameter $params
    
  7. Para verificar as configurações, execute este comando:

    Get-MgBetaGroupSetting -GroupId $GroupId | FL Values
    

Atualizar configurações para um grupo específico

  1. Obtenha o ID do grupo cuja configuração você deseja atualizar:

    $groupId = (Get-MgGroup -Filter "DisplayName eq '<YourGroupName>'").Id
    
  2. Recupere a configuração do grupo:

    $Setting = Get-MgBetaGroupSetting -GroupId $GroupId
    
  3. Atualize a configuração do grupo conforme necessário:

    $params = @{
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "True"
          }
       )
    }
    
  4. Em seguida, você pode definir o novo valor para essa configuração:

    Update-MgBetaGroupSetting -DirectorySettingId $Setting.Id -GroupId $GroupId -BodyParameter $params
    
  5. Você pode ler o valor da configuração para certificar-se de que ela foi atualizada corretamente:

    Get-MgBetaGroupSetting -GroupId $GroupId  | FL Values
    

Referência de sintaxe do cmdlet

Você pode encontrar mais documentação do Microsoft Graph PowerShell em Cmdlets do Microsoft Entra.

Gerenciar configurações de grupo usando o Microsoft Graph

Para definir e gerenciar configurações de grupo usando o Microsoft Graph, consulte o groupSetting tipo de recurso e seus métodos associados.

Leitura adicional