Compartilhar via


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. Esse conteúdo se aplica somente aos grupos do Microsoft 365.

Importante

Algumas configurações exigem uma licença do Microsoft Entra ID P1. Para obter mais informações, consulte a tabela de 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 propriedade AllowedToCreateSecurityGroups como False, conforme descrito em Update-MgPolicyAuthorizationPolicy.

As configurações de grupos do Microsoft 365 são configuradas usando um objeto Settings e um objeto SettingsTemplate. Inicialmente, você não vê nenhum objeto Settings em seu diretório, pois 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. A Microsoft fornece vários modelos de configurações. 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 convidados a um grupo do Microsoft 365.

Os cmdlets fazem parte do módulo do 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

Mesmo com as restrições habilitadas para impedir a adição de convidados aos grupos do Microsoft 365, os administradores ainda podem adicionar usuários convidados. A restrição só se aplica a usuários não administradores.

Instale os cmdlets do PowerShell

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

  1. Abra o aplicativo 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 de DirectorySettings, você deve especificar o identificador do SettingsTemplate que deseja usar. Se você não souber essa ID, este cmdlet retornará a lista de todos os modelos de configurações:

    Get-MgBetaDirectorySettingTemplate
    

    Essa 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 Grupo. Modelo unificado:

    $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 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 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 as 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
    

    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 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 do Microsoft Entra ID P1.

Configuração Descrição
HabilitarCriaçãoDeGrupos
Tipo: Boolean
Padrão: True
Esse sinalizador indica se usuários não administradores podem criar grupos do Microsoft 365 no diretório. Essa configuração não requer uma licença do Microsoft Entra ID P1.
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 Orientações 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 só é válido neste formato:
$setting["ClassificationDescriptions"] ="Classification:Description,Classification:Description"
em que Classificação corresponde a uma entrada na Lista de Classificações.
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 ser escapadas.
DefaultClassification
Tipo: String
Padrão: ""
A classificação que deve ser usada como a classificação padrão para um grupo se nenhum tiver sido especificado.
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, consulte Impor uma política de nomenclatura para grupos do Microsoft 365.
CustomBlockedWordsList
Tipo: String
Padrão: ""
Cadeia de caracteres separada por vírgula de frases que os usuários não têm 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: Boolean
Padrão: False
Preterido. Não use.
AllowGuestsToBeGroupOwner
Tipo: Boolean
Padrão: False
Booliano indicando se um usuário convidado pode ou não ser proprietário de grupos.
AllowGuestsToAccessGroups
Tipo: Boolean
Padrão: True
Booliano que indica 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: String
Padrão: ""
A URL de um link para as diretrizes de uso do convidado.
PermitirAdicionarConvidados
Tipo: Boolean
Padrão: True
Um booliano que indica se é permitido ou não adicionar convidados a esse 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 à etiqueta de confidencialidade atribuído ao grupo.
Se a configuração de AllowToAddGuests estiver definida como False no nível da organização, qualquer configuração de AllowToAddGuests no nível do grupo será ignorada. Se você quiser habilitar o acesso de convidados para apenas alguns grupos, deverá definir AllowToAddGuests como verdadeiro no nível da organização e desabilitá-lo seletivamente para grupos específicos.
Lista de Classificação
Tipo: String
Padrão: ""
Uma lista delimitada por vírgulas de valores de classificação válidos que podem ser aplicados a grupos do Microsoft 365.
Essa configuração não se aplica quando EnableMIPLabels == True.
EnableMIPLabels
Tipo: Boolean
Padrão: False
O sinalizador que indica se os rótulos de confidencialidade publicados no portal de conformidade do Microsoft Purview podem ser aplicados aos grupos do Microsoft 365. Para obter mais informações, confira Atribuir rótulos de confidencialidade a grupos do Microsoft 365.
NewUnifiedGroupWritebackDefault
Tipo: Boolean
Padrão: True
O sinalizador que permite que um administrador crie novos 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 de grupo global do Microsoft 365. O valor padrão é verdadeiro. Atualizar o valor de configuração para falso altera o comportamento padrão de write-back para grupos recém-criados do Microsoft 365 e não altera o valor da propriedade isEnabled para grupos existentes do Microsoft 365. O administrador do grupo precisa 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 de convidado para grupos no nível do 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 de configurações 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 do 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 da ID de Configurações:

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

    Esse 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 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 de um grupo específico

  1. Obtenha a 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 esta configuração:

    Update-MgBetaGroupSetting -DirectorySettingId $Setting.Id -GroupId $GroupId -BodyParameter $params
    
  5. Você pode ler o valor da configuração para verificar se 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 Microsoft Entra Cmdlets.

Gerenciar configurações de grupo usando o Microsoft Graph

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

Leitura adicional