Cmdlets de Microsoft Entra para configurar las opciones de grupo

Este artículo contiene instrucciones para usar cmdlets de PowerShell para crear y actualizar grupos en Microsoft Entra ID, parte de Microsoft Entra. Este contenido se aplica únicamente a grupos de Microsoft 365, también conocidos como grupos unificados.

Importante

Algunas opciones de configuración requieren una licencia Microsoft Entra ID P1. Para más información, consulte la tabla Configuración de plantillas.

Para obtener más información sobre cómo evitar que los usuarios que no son administradores creen grupos de seguridad, establezca la propiedad AllowedToCreateSecurityGroups en False, tal como se describe en Update-MgPolicyAuthorizationPolicy.

Los grupos de Microsoft 365 se configuran mediante un objeto Settings y un objeto SettingsTemplate. Al principio no ve ningún objeto de configuración en el directorio porque este se ha configurado de forma predeterminada. Para cambiar la configuración predeterminada, debe crear un nuevo objeto Settings utilizando una plantilla SettingsTemplate. Las plantillas de configuración las define Microsoft. Hay varias plantillas de configuración diferentes. Para configurar los valores del grupo de Microsoft 365 para su directorio, se utiliza la plantilla denominada "Group.Unified". Para configurar los valores del grupo de Microsoft 365 en un único grupo, utilice la plantilla denominada "Group.Unified.Guest". Esta plantilla se usa para administrar el acceso de invitado a un grupo de Microsoft 365.

Los cmdlets forman parte del módulo de PowerShell de Microsoft Graph. Para obtener instrucciones sobre cómo descargar e instalar el módulo en el equipo, consulte Instalar el SDK de PowerShell de Microsoft Graph.

Nota:

Los módulos de PowerShell de Azure AD y MSOnline están en desuso a partir del 30 de marzo de 2024. Para obtener más información, lea la actualización de desuso. Desde esta fecha, el soporte de estos módulos se limita a la asistencia de migración al SDK de PowerShell de Microsoft Graph y a las correcciones de seguridad. Los módulos en desuso seguirán funcionando hasta el 30 de marzo de 2025.

Se recomienda migrar a PowerShell de Microsoft Graph para interactuar con Microsoft Entra ID (anteriormente Azure AD). Para preguntas comunes sobre la migración, consulte las Preguntas más frecuentes sobre migración. Nota: versiones 1.0.x de MSOnline pueden experimentar interrupciones después del 30 de junio de 2024.

Nota:

Con la configuración en vigor para restringir la adición de invitados a grupos de Microsoft 365, los administradores seguirán agregando usuarios invitados a los grupos de Microsoft 365. La configuración impedirá que los usuarios que no son administradores agreguen usuarios invitados a grupos de Microsoft 365.

Instalación de los cmdlets de PowerShell

Instale los cmdlets de Microsoft Graph como se describe en Instalación del SDK de PowerShell de Microsoft Graph.

  1. Abra la aplicación Windows PowerShell como administrador.

  2. Instale los cmdlets de Microsoft Graph.

    Install-Module Microsoft.Graph -Scope AllUsers
    
  3. Instale los cmdlets beta de Microsoft Graph.

    Install-Module Microsoft.Graph.Beta -Scope AllUsers
    

Creación de una configuración en el nivel de directorio

Con estos pasos se crean configuraciones en el nivel de directorio que se aplican a todos los grupos de Microsoft 365 del directorio.

  1. En los cmdlets DirectorySettings, debe especificar el identificador de la plantilla SettingsTemplate que desea usar. Si no conoce este identificador, este cmdlet devuelve la lista de plantillas de configuración:

    Get-MgBetaDirectorySettingTemplate
    

    Esta llamada al cmdlet devuelve todas las plantillas que están disponibles:

    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 agregar una dirección URL de instrucciones de uso, primero debe obtener el objeto SettingsTemplate que define el valor pertinente, es decir, la plantilla Group.Unified:

    $TemplateId = (Get-MgBetaDirectorySettingTemplate | where { $_.DisplayName -eq "Group.Unified" }).Id
    $Template = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value $TemplateId -EQ
    
  3. Cree un objeto que contenga valores que se van a usar para la configuración del directorio. Estos valores cambian el valor de las directrices de uso y habilitan las etiquetas de confidencialidad. Establezca estas opciones o cualquier otra configuración correspondiente en la plantilla:

    $params = @{
       templateId = "$TemplateId"
       values = @(
          @{
             name = "UsageGuidelinesUrl"
             value = "https://guideline.example.com"
          }
          @{
             name = "EnableMIPLabels"
             value = "True"
          }
       )
    }
    
  4. Cree la configuración del directorio mediante New-MgBetaDirectorySetting:

    New-MgBetaDirectorySetting -BodyParameter $params
    
  5. Puede leer los valores mediante los siguientes comandos:

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

Actualización de la configuración en el nivel de directorio

Para actualizar el valor de UsageGuideLinesUrl en la plantilla de configuración, lea la configuración actual de Microsoft Entra ID; de lo contrario, podríamos acabar sobrescribiendo una configuración existente distinta de UsageGuideLinesUrl.

  1. Obtenga la configuración actual del objeto SettingsTemplate de Group.Unified:

    $Setting = Get-MgBetaDirectorySetting | where { $_.DisplayName -eq "Group.Unified"}
    
  2. Comprobación de la configuración actual:

    $Setting.Values
    

    Este comando devuelve los siguientes 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 quitar el valor de UsageGuideLinesUrl, edite la dirección URL de modo que sea una cadena vacía:

    $params = @{
       Values = @(
          @{
             Name = "UsageGuidelinesUrl"
             Value = ""
          }
       )
    }
    
  4. Actualice el valor mediante el cmdlet Update-MgBetaDirectorySetting:

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

Configuración de plantillas

Esta es la configuración definida en el objeto SettingsTemplate Group.Unified. A menos que se indique lo contrario, estas características requieren una licencia Microsoft Entra ID P1.

Configuración Descripción
  • EnableGroupCreation
  • Escriba: Boolean
  • Valor predeterminado: True
Marca que indica si se permite la creación de grupos de Microsoft 365 en el directorio por parte de usuarios que no sean administradores. Esta configuración no requiere una licencia Microsoft Entra ID P1.
  • GroupCreationAllowedGroupId
  • Escriba: String
  • Default: ""
El GUID del grupo de seguridad para el que se permite a los miembros crear grupos de Microsoft 365 incluso cuando EnableGroupCreation == false.
  • UsageGuidelinesUrl
  • Escriba: String
  • Default: ""
Un vínculo a las instrucciones de uso de grupos.
  • ClassificationDescriptions
  • Escriba: String
  • Default: ""
Una lista delimitada por comas de las descripciones de clasificación. El valor de ClassificationDescriptions solo es válido en este formato:
$setting["ClassificationDescriptions"] ="Classification:Description,Classification:Description"
donde el valor de Classification coincide con una entrada en ClassificationList.
Esta configuración no se aplica cuando EnableMIPLabels = = True.
El límite de caracteres para la propiedad ClassificationDescriptions es 300 y las comas no pueden ser el carácter de escape.
  • DefaultClassification
  • Escriba: String
  • Default: ""
La clasificación que se va a utilizar como la clasificación predeterminada para un grupo si no se ha especificado ninguno.
Esta configuración no se aplica cuando EnableMIPLabels = = True.
  • PrefixSuffixNamingRequirement
  • Escriba: String
  • Default: ""
Cadena de una longitud máxima de 64 caracteres que define la convención de nomenclatura configurada para los grupos de Microsoft 365. Para obtener más información, vea Aplicación de una directiva de nomenclatura en los grupos de Microsoft 365.
  • CustomBlockedWordsList
  • Escriba: String
  • Default: ""
Cadena de frases separadas por comas que los usuarios no tendrán permiso para usar en los nombres de grupos o alias. Para obtener más información, vea Aplicación de una directiva de nomenclatura en los grupos de Microsoft 365.
  • EnableMSStandardBlockedWords
  • Escriba: Boolean
  • Valor predeterminado: "False"
Desusado. No utilizar.
  • AllowGuestsToBeGroupOwner
  • Escriba: Boolean
  • Valor predeterminado: False
Valor booleano que indica si un usuario invitado puede ser o no un propietario de grupos.
  • AllowGuestsToAccessGroups
  • Escriba: Boolean
  • Valor predeterminado: True
Valor booleano que indica si un usuario invitado puede tener o no acceso al contenido de grupos de Microsoft 365. Esta configuración no requiere una licencia Microsoft Entra ID P1.
  • GuestUsageGuidelinesUrl
  • Escriba: String
  • Default: ""
La dirección URL de un vínculo a las instrucciones de uso del invitado.
  • AllowToAddGuests
  • Escriba: Boolean
  • Valor predeterminado: True
Un valor booleano que indica si está permitido o no agregar invitados a este directorio.
Esta configuración puede invalidarse y convertirse en solo lectura si EnableMIPLabels está establecida en True y una directiva de invitado está asociada a la etiqueta de confidencialidad asignada al grupo.
Si el valor de AllowToAddGuests se establece en False en el nivel de inquilino, se omite cualquier valor de AllowToAddGuests en el nivel de grupo. Si quiere habilitar el acceso de invitado solo para algunos grupos, debe establecer AllowToAddGuests en true en el nivel de inquilino y, luego, deshabilitarlo de forma selectiva para grupos específicos.
  • ClassificationList
  • Escriba: String
  • Default: ""
Lista de valores de clasificación válidos delimitados por comas que se puede aplicar a grupos de Microsoft 365.
Esta configuración no se aplica cuando EnableMIPLabels = = True.
  • EnableMIPLabels
  • Escriba: Boolean
  • Valor predeterminado: "False"
Marca que indica si las etiquetas de confidencialidad publicadas en el portal de cumplimiento de Microsoft Purview se pueden aplicar a grupos de Microsoft 365. Para más información, vea Asignación de etiquetas de confidencialidad para los grupos de Microsoft 365.
  • NewUnifiedGroupWritebackDefault
  • Escriba: Boolean
  • Valor predeterminado: "True"
La marca que permite a un administrador crear nuevos grupos de Microsoft 365 sin establecer el tipo de recurso groupWritebackConfiguration en la carga de solicitud. Esta configuración se aplica cuando se ha configurado la escritura diferida de grupos en Microsoft Entra Connect. "NewUnifiedGroupWritebackDefault" es una configuración de grupo global de Microsoft 365. El valor predeterminado es true. Al cambiar el valor de configuración a "False", el comportamiento de escritura diferida predeterminado cambiará para los grupos de Microsoft 365 recién creados, pero el valor de la propiedad isEnabled no cambiará para los grupos de Microsoft 365 existentes. El administrador del grupo deberá actualizar explícitamente el valor de la propiedad isEnabled del grupo para cambiar el estado de escritura diferida de los grupos de Microsoft 365 existentes.

Ejemplo: Configuración de la directiva de invitado para grupos en el nivel de directorio

  1. Obtenga todas las plantillas de configuración:

    Get-MgBetaDirectorySettingTemplate
    
  2. Para establecer la directiva de invitado para los grupos en el nivel de directorio, necesita la plantilla Group.Unified.

    $Template = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value "62375ab9-6b52-47ed-826b-58e47e0e304b" -EQ
    
  3. Establezca un valor para AllowToAddGuests para la plantilla especificada:

    $params = @{
       templateId = "62375ab9-6b52-47ed-826b-58e47e0e304b"
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "False"
          }
       )
    }
    
  4. A continuación, cree un nuevo objeto de configuración mediante el cmdlet New-MgBetaDirectorySetting:

    $Setting = New-MgBetaDirectorySetting -BodyParameter $params
    
  5. Puede leer los valores mediante:

    $Setting.Values
    

Lectura de la configuración en el nivel de directorio

Si conoce el nombre de la configuración que desea recuperar, puede usar el siguiente cmdlet para recuperar el valor de configuración actual. En este ejemplo, se recuperará el valor de una configuración denominada "UsageGuidelinesUrl".

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

Con estos pasos se lee la configuración en el nivel de directorio, la cual se aplica a todos los grupos de Office del directorio.

  1. Lea toda la configuración de directorio existente:

    Get-MgBetaDirectorySetting -All
    

    Este cmdlet devuelve la lista de las opciones de configuración del directorio:

    Id                                   DisplayName   TemplateId                           Values
    --                                   -----------   ----------                           ------
    c391b57d-5783-4c53-9236-cefb5c6ef323 Group.Unified 62375ab9-6b52-47ed-826b-58e47e0e304b {class SettingValue {...
    
  2. Lea toda la configuración de un grupo específico:

    Get-MgBetaGroupSetting -GroupId "ab6a3887-776a-4db7-9da4-ea2b0d63c504"
    
  3. Lea todos los valores de configuración de directorio de un objeto de configuración de directorio específico, con el GUID de identificador de configuración:

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

    Este cmdlet devuelve los nombres y valores de este objeto de configuración para este grupo en particular:

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

Eliminación de la configuración en el nivel de directorio

Con estos pasos se elimina la configuración en el nivel de directorio, lo cual se aplica a todos los grupos de Office del directorio.

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

Creación de la configuración de un grupo específico

  1. Obtenga las plantillas de configuración.

    Get-MgBetaDirectorySettingTemplate
    
  2. En los resultados, busque la plantilla de configuración denominada "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 el objeto de plantilla para la plantilla Groups.Unified.Guest:

    $Template1 = Get-MgBetaDirectorySettingTemplate | where -Property Id -Value "08d542b9-071f-4e16-94b0-74abb372e3d9" -EQ
    
  4. Obtenga el identificador del grupo al que desea aplicar esta configuración:

    $GroupId = (Get-MgGroup -Filter "DisplayName eq '<YourGroupName>'").Id
    
  5. Cree la nueva configuración:

    $params = @{
       templateId = "08d542b9-071f-4e16-94b0-74abb372e3d9"
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "False"
          }
       )
    }
    
  6. Cree la configuración de grupo:

    New-MgBetaGroupSetting -GroupId $GroupId -BodyParameter $params
    
  7. Para comprobar la configuración, ejecute este comando:

    Get-MgBetaGroupSetting -GroupId $GroupId | FL Values
    

Actualización de la configuración de un grupo específico

  1. Obtenga el identificador del grupo cuya configuración desea actualizar:

    $groupId = (Get-MgGroup -Filter "DisplayName eq '<YourGroupName>'").Id
    
  2. Recupere la configuración del grupo:

    $Setting = Get-MgBetaGroupSetting -GroupId $GroupId
    
  3. Actualice la configuración del grupo según sea necesario:

    $params = @{
       values = @(
          @{
             name = "AllowToAddGuests"
             value = "True"
          }
       )
    }
    
  4. A continuación, puede establecer el nuevo valor para esta configuración:

    Update-MgBetaGroupSetting -DirectorySettingId $Setting.Id -GroupId $GroupId -BodyParameter $params
    
  5. Puede leer el valor de la configuración para asegurarse de que se ha actualizado correctamente:

    Get-MgBetaGroupSetting -GroupId $GroupId  | FL Values
    

Referencia de sintaxis de cmdlet

Puede encontrar más documentación de PowerShell de Microsoft Graph en Cmdlets de Microsoft Entra.

Administración de la configuración del grupo mediante Microsoft Graph

Para configurar y administrar las opciones de grupo mediante Microsoft Graph, consulte el groupSetting tipo de recurso y sus métodos asociados.

Otras lecturas