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 ID do Microsoft Entra, parte do Microsoft Entra. Esse conteúdo se aplica somente a grupos do Microsoft 365 (às vezes chamados de grupos unificados).

Importante

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

Para obter mais informações sobre como impedir que usuários não administradores criem grupos de segurança, defina a propriedade AllowedToCreateSecurityGroups 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 verá objetos Settings no seu diretório, pois o diretório foi configurado com as definiçõ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. Modelos de configurações são definidos pela Microsoft. Há vários modelos de configurações diferentes. Para definir as configuração de grupo do Microsoft 365 para o 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". Esse 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, veja Instalar o Microsoft Graph PowerShell SDK.

Observação

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

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

Observação

Com as configurações estabelecidas 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 restringirá usuários não administradores de adicionar usuários convidados a grupos do Microsoft 365.

Instalar cmdlets do PowerShell

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

  1. Abra o aplicativo Windows PowerShell como um administrador.

  2. Instalar os cmdlets do Microsoft Graph.

    Install-Module Microsoft.Graph -Scope AllUsers
    
  3. Instalar 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 de diretório, as quais se aplicam a todos os grupos do Microsoft 365 no diretório.

  1. Nos cmdlets DirectorySettings, você precisa especificar a ID de SettingsTemplate que deseja usar. Se você não conhece esse ID, esse cmdlet retorna a lista de todos os modelos de configurações:

    Get-MgBetaDirectorySettingTemplate
    

    Essa chamada do 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 diretrizes de uso, primeiro você precisa obter o objeto SettingsTemplate que define o valor de URL da diretriz de uso; ou seja, o modelo de 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 do diretório. Esses valores alteram o valor da diretriz de uso e habilitam rótulos de confidencialidade. Defina essas configurações 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 do diretório usando o 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 do 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 as configurações existentes que não sejam 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
    

    Esse 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 que ela seja 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 de modelo

Aqui estão as configurações definidas no Group.Unified SettingsTemplate. A menos que indicado de outra forma, esses recursos exigem uma licença de ID P1 Microsoft Entra.

Configuração Descrição
  • EnableGroupCreation
  • Tipo: booliano
  • Padrã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 P1 do ID do Microsoft Entra.
  • GroupCreationAllowedGroupId
  • Tipo: String
  • 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: String
  • Padrão: ""
Um link para as Diretrizes de Uso do Grupo.
  • ClassificationDescriptions
  • Tipo: String
  • Padrão: ""
Uma lista delimitada por vírgulas de descrições de classificação. O valor de ClassificationDescriptions somente é válido neste formato:
$setting["ClassificationDescriptions"] ="Classification:Description,Classification:Description"
onde a Classification corresponde a uma entrada na ClassificationList.
Essa 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 ter escape,
  • DefaultClassification
  • Tipo: String
  • Padrão: ""
A classificação que deve ser usada como a classificação padrão para um grupo, se nenhuma for especificada.
Essa configuração não se aplica quando EnableMIPLabels == True.
  • PrefixSuffixNamingRequirement
  • Tipo: String
  • 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, confira Impor uma política de nomenclatura para grupos do Microsoft 365.
  • CustomBlockedWordsList
  • Tipo: String
  • Padrão: ""
Cadeia de caracteres de frases separadas por vírgulas que os usuários não serão autorizados a usar em nomes de grupos ou alias. Para obter mais informações, confira Impor uma política de nomenclatura para grupos do Microsoft 365.
  • EnableMSStandardBlockedWords
  • Tipo: booliano
  • Padrão: "False"
Preterido. Não use.
  • AllowGuestsToBeGroupOwner
  • Tipo: booliano
  • Padrão: False
Booliano que indica se um usuário convidado pode ser um proprietário de grupos.
  • AllowGuestsToAccessGroups
  • Tipo: booliano
  • Padrão: True
Booliano que indica se um usuário convidado pode ter acesso ao conteúdo dos grupos do Microsoft 365. Essa configuração não requer uma licença P1 do ID do Microsoft Entra.
  • GuestUsageGuidelinesUrl
  • Tipo: String
  • Padrão: ""
A URL de um link para as diretrizes de uso do convidado.
  • AllowToAddGuests
  • Tipo: booliano
  • Padrão: True
Um booliano que indica se há permissão para adicionar convidados a este diretório.
Essa configuração poderá 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 confidencialidade atribuído ao grupo.
Se a configuração AllowToAddGuests for definida como False no nível da organização, qualquer configuração AllowToAddGuests no nível do grupo será ignorada. Se você quiser habilitar o acesso de convidado para apenas alguns grupos, deverá definir AllowToAddGuests como true no nível da organização e, em seguida, desabilitá-lo seletivamente para grupos específicos.
  • ClassificationList
  • Tipo: String
  • Padrão: ""
Uma lista delimitada por vírgulas de valores de classificação válidos que podem ser aplicados aos grupos do Microsoft 365.
Essa configuração não se aplica quando EnableMIPLabels == True.
  • EnableMIPLabels
  • Tipo: booliano
  • Padrão: "False"
O sinalizador que indica se os rótulos de confidencialidade publicados no portal de conformidade do Microsoft Purview podem ser aplicados nos grupos do Microsoft 365. Para obter mais informações, consulte Atribuir rótulos de confidencialidade a grupos do Microsoft 365.
  • NewUnifiedGroupWritebackDefault
  • Tipo: booliano
  • Padrão: "True"
O sinalizador que permite que um administrador crie grupos do Microsoft 365 sem definir o tipo de recurso groupWritebackConfiguration no conteúdo da solicitação. Essa configuração é aplicável quando o write-back de grupo é configurado no Microsoft Entra Connect. "NewUnifiedGroupWritebackDefault" é uma configuração global de grupo do Microsoft 365. O valor padrão é true. Atualizar o valor de configuração para false alterará o comportamento de write-back padrão para grupos do Microsoft 365 recém-criados, mas 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 dos grupos existentes do Microsoft 365.

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

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

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

    $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 de configurações usando o cmdlet New-MgBetaDirectorySetting :

    $Setting = New-MgBetaDirectorySetting -BodyParameter $params
    
  5. É possível ler os valores usando:

    $Setting.Values
    

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

Se você souber o nome da configuração que deseja recuperar, será possível usar o cmdlet abaixo para recuperar o valor atual das configurações. Neste exemplo, recuperaremos o valor de uma configuração chamada "UsageGuidelinesUrl".

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

Estas etapas leem 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 existentes do diretório:

    Get-MgBetaDirectorySetting -All
    

    Esse 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 para 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 da ID de Configurações:

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

    Esse cmdlet retorna os nomes e valores nesse objeto de configurações para esse 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 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, encontre 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 a ID do grupo ao qual você deseja aplicar essa configuraçã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 de grupo:

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

    Get-MgBetaGroupSetting -GroupId $GroupId | FL Values
    

Atualizar as configurações para um grupo específico

  1. Obtenha a ID do grupo cuja configuração você quer 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 esta 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 ele foi atualizado corretamente:

    Get-MgBetaGroupSetting -GroupId $GroupId  | FL Values
    

Referência de sintaxe de cmdlet

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

Gerenciar configurações de grupo usando o Microsoft Graph

Para configurar e gerenciar as configurações de grupo usando o Microsoft Graph, consulte groupSettingtipo de recurso e seus métodos associados.

Leituras adicionais