/
/

Cómo automatizar las asignaciones de perfiles de configuración de Intune según las etiquetas de dispositivo con la API de Graph

por Team Ninja
How to Automate Intune Configuration Profile Assignments Based on Device Labels via Graph API blog banner image

Resumen instantáneo

Este post ofrece una lista completa de comandos CMD básicos y una inmersión profunda en los comandos de Windows, con más de 70 comandos cmd esenciales tanto para principiantes como para usuarios avanzados. Explica comandos prácticos del símbolo del sistema para la gestión de archivos, la navegación por directorios, la solución de problemas de red, las operaciones de disco y la automatización con ejemplos reales para mejorar la productividad. Tanto si estás aprendiendo los comandos básicos de cmd como si ya dominas las herramientas avanzadas de la CLI de Windows, esta guía te ayudará a utilizar el Símbolo del sistema de forma más eficaz.

Puntos clave

  • Automatiza las asignaciones de perfiles de configuración de Intune con la API de Microsoft Graph mediante un flujo Etiqueta → Grupo → Perfil: etiqueta los dispositivos, consúltalos por etiqueta, añádelos a un grupo que coincida y, por último, asigna el perfil a ese grupo.
  • Requisitos previos: licencias de Intune, Microsoft Entra ID Premium, PowerShell 7+ con el módulo Microsoft.Graph y un registro de aplicación con los permisos DeviceManagementConfiguration.ReadWrite.All, Device.Read.All y Group.ReadWrite.All.
  • Intune solo admite asignaciones basadas en grupos, así que los dispositivos deben añadirse a un grupo de Entra ID (dinámico o gestionado manualmente) antes de poder aplicarles un perfil de configuración.
  • Utiliza una única fuente de etiquetas como referencia (clave del registro, DeviceCategory de Intune o atributo de extensión de Entra) para evitar dispositivos duplicados o sin asignar; si un dispositivo tiene varias etiquetas, Intune aplica el criterio de «la última escritura gana».
  • Ejecuta el flujo de trabajo de forma programada y registra el estado de la asignación en el registro para dejar rastro de auditoría, de modo que los dispositivos nuevos o modificados se detecten automáticamente.

Incorporar dispositivos y asignar grupos de usuarios son dos tareas habituales que los MSP y los equipos de TI de la empresa quieren automatizar para mejorar sus flujos de trabajo. A gran escala, esto suele configurarse mediante un RMM o con perfiles de configuración de Intune, que utilizan etiquetas de dispositivo a través de la API de Graph. Consulta nuestra guía para empezar.

¿Prefieres una guía visual para entenderlo mejor? Mira nuestro vídeo: Cómo automatizar las asignaciones de perfiles de configuración de Intune según las etiquetas de dispositivo con la API de Graph.

Pasos para configurar las asignaciones de perfiles de configuración de Intune con la API de Graph

Usa la tabla para elegir y acceder rápidamente a los pasos de activación que te interesen.

📌 Requisitos previos:

  • Licencias de Microsoft Intune
  • Microsoft Entra ID Premium (para grupos dinámicos y políticas de Intune)
  • Aplicación registrada con permisos de la API de Graph:
    • ReadWrite.All (para políticas del catálogo de configuración)
    • ReadWrite.All (para perfiles de configuración estándar)
    • Read.All (necesario para leer las categorías de dispositivo de Intune)
    • ReadWrite.All (para gestionar los grupos de asignación)
  • PowerShell 7+ con el módulo Microsoft.Graph
  • Opcional: acceso al registro local para el etiquetado
  • Opcional: NinjaOne u otra plataforma RMM para los metadatos de los endpoints y la ejecución de scripts

💡 Consejo: echa un vistazo a la sección Aspectos a tener en cuenta para saber cómo gestionar los posibles riesgos.

Paso 1: aplica etiquetas de dispositivo basadas en el registro local (opcional)

En este ejemplo se crea una clave del registro sencilla en cada dispositivo con valores como Label=Finance y AssignedProfile=None.

  1. Usa la Búsqueda 🔎 para abrir Terminal → PowerShell → Ejecutar como administrador.
  2. Etiqueta los endpoints con metadatos de rol o de entorno:

Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceLabels" -Name "Label" -Value "Finance"

Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceLabels" -Name "AssignedProfile" -Value "None"

Este paso puede usarse con Intune o en paralelo mientras haces la transición. Crea una clave del registro sencilla en cada dispositivo, que además sirve como metadato.

Puedes ejecutar reg query HKLM\SOFTWARE\Org\DeviceLabels en CMD o PowerShell para validarlo. Estas etiquetas pueden servir de guía para que la lógica de un script externo decida qué perfil de Intune se debe asignar.

Paso 2: conéctate a Microsoft Graph y consulta los dispositivos por etiqueta

Estos scripts etiquetan los dispositivos por una etiqueta (por ejemplo, DeviceCategory -eq «Finance») o mediante atributos de extensión, como las propiedades de extensión de Entra ID.

  1. Usa la Búsqueda 🔎 para abrir Terminal → PowerShell → Ejecutar como administrador.
  2. Conéctate a Graph:

Connect-MgGraph -Scopes "DeviceManagementManagedDevices.Read.All", «Group.ReadWrite.All»

  1. A continuación, consulta los dispositivos por categoría:

$devices = Get-MgManagedDevice | Where-Object { $_.DeviceCategory -eq "Finance" }

Si usas atributos de extensión, ajusta la consulta para que coincida con ellos. Intune y Entra ID funcionan mejor para dirigirse a dispositivos inscritos.

⚠️ Nota técnica: asegúrate de que tu automatización apunta al endpoint ManagedDevice y no al endpoint Device estándar de Entra ID. Los atributos propios de Intune, como DeviceCategory, no existen en los objetos predeterminados de Entra ID. Si consultas el endpoint equivocado, obtendrás un conjunto de datos vacío.

Paso 3: crea o localiza los perfiles de configuración y asígnalos por grupo

El siguiente objetivo es asegurarte de que existe un grupo de destino para la etiqueta (por ejemplo, «Finance Devices»).

  1. Usa la Búsqueda 🔎 para abrir Terminal → PowerShell → Ejecutar como administrador.
  2. Ejecuta Get-MgDeviceManagementDeviceConfiguration para enumerar los perfiles de configuración existentes.
  3. Después, localiza o crea un grupo de asignación para la etiqueta de destino:

$group = Get-MgGroup | Where-Object { $_.DisplayName -eq "Finance Devices" }

O crea un grupo nuevo:

$group = New-MgGroup -DisplayName "Finance Devices" -MailEnabled:$false `

-MailNickname "FinanceGroup" -SecurityEnabled:$true

  1. Una vez creado el grupo, puedes añadirle dispositivos y asignarle un perfil de configuración.
    • Añade dispositivos:

Add-MgGroupMember -GroupId $group.Id -DirectoryObjectId $device.Id

    • Asigna el perfil de configuración:

New-MgDeviceManagementDeviceConfigurationAssignment `

-DeviceConfigurationId $configProfile.Id `

-Target @{groupId = $group.Id}

🧠 Requisito estructural: al asignar un perfil de configuración con la API de Graph, el sistema exige un contenedor estructural @odata.type explícito. El script debe definir el destino de forma explícita como #microsoft.graph.groupAssignmentTarget y pasar el ID del grupo dentro de esa estructura concreta de carga, en lugar de aplicarlo directamente al objeto del perfil.

💡 Nota: además, puedes usar la pertenencia dinámica si tu etiqueta se almacena en un atributo que se pueda consultar desde un grupo (por ejemplo, un atributo de extensión). De lo contrario, automatiza el etiquetado con un RMM.

Paso 4: automatiza el flujo de trabajo (Etiqueta → Grupo → Perfil)

Este paso sirve para dejar la gestión en modo automático una vez identificadas y consultadas correctamente las fuentes de etiquetas y los perfiles de destino. Aquí tienes un script de ejemplo que usa las etiquetas y los perfiles anteriores:

$label = “Finance”

$devices = Get-MgDevice | Where-Object { $_.DeviceCategory -eq $label }foreach ($device in $devices) {

$group = Get-MgGroup | Where-Object { $_.DisplayName -eq “$label Devices” }if (-not $group) {

$group = New-MgGroup -DisplayName “$label Devices” -MailEnabled:$false `

-MailNickname “$labelGroup” -SecurityEnabled:$true}Add-MgGroupMember -GroupId $group.Id -DirectoryObjectId $device.IdNew-MgDeviceManagementDeviceConfigurationAssignment `

-DeviceConfigurationId $configProfile.Id `

-Target @{groupId = $group.Id}}

En entornos gestionados y empresariales, este script debe ejecutarse de forma periódica para detectar los nuevos endpoints que haya que organizar.

Paso 5: guarda el estado de la asignación en el registro para la auditoría

Para terminar, actualiza el registro para dejar constancia de qué perfil se ha aplicado. Puedes ejecutar el siguiente script en PowerShell:

Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceLabels" -Name "AssignedProfile" -Value "Finance_Profile"

Set-ItemProperty -Path "HKLM:\SOFTWARE\Org\DeviceLabels" -Name "LastSynced" -Value (Get-Date).ToString(«u»)

Así se crea un rastro de auditoría local para los equipos de soporte. Estos datos también puede recogerlos un RMM o exportarse a CSV para generar informes centralizados.

💡 Nota: este script puede ejecutarse o fallar sin mostrar ninguna confirmación ni aviso. Para comprobar si los cambios se han aplicado correctamente, revisa las claves del registro o la configuración del sistema correspondientes.

Guía de inicio rápido

NinjaOne puede ayudarte con las asignaciones de perfiles de configuración de Intune según las etiquetas de dispositivo a través de la API de Graph, aunque los detalles concretos pueden requerir algo de scripting o automatización personalizada. Estas son las claves:

1. NinjaOne admite la gestión de dispositivos y cuenta con capacidades de integración con tecnologías de Microsoft.

2. La plataforma ofrece:

  • Etiquetado de dispositivos
  • Configuraciones de dispositivos automatizadas
  • Compatibilidad con automatización mediante PowerShell y API

3. Aunque no existe una solución directa lista para usar para las asignaciones de perfiles de Intune, puedes conseguirlo mediante:

⚠️ Aspectos a tener en cuenta al automatizar las asignaciones de perfiles de Intune

A continuación tienes los riesgos más habituales, sus posibles consecuencias y algunas formas prácticas de revertirlos o evitarlos.

RiesgosPosibles consecuenciasSoluciones
Fuentes de etiquetado incoherentes (registro local frente a DeviceCategory de Intune frente a atributos de extensión de Entra)Los dispositivos pueden no agruparse correctamente; equipos duplicados o sin asignarEstandariza una única fuente de etiquetas como referencia; si estás migrando, añade medidas de protección para evitar asignaciones duplicadas
Crear grupos dinámicos sin un atributo estableLas reglas del grupo nunca se resuelven y los dispositivos nunca reciben los perfilesAsegúrate de que las etiquetas se guarden en un atributo utilizable en reglas dinámicas (por ejemplo, extensionAttribute o deviceCategory); prueba las reglas con un conjunto de muestra
Limitación de solicitudes (throttling) de Graph en entornos grandesLa ejecución del script se ralentiza y las actualizaciones de los dispositivos quedan incompletasAgrupa los dispositivos por lotes, añade lógica de reintento o ejecuta el flujo de trabajo etiqueta por etiqueta en lugar de todo a la vez

Algunas de las primeras dificultades al automatizar las asignaciones de perfiles con Intune surgen durante las transiciones. Por eso conviene hacer las comprobaciones necesarias para que las etiquetas y las agrupaciones no entren en conflicto ni se dupliquen.

Además, en entornos grandes puede que necesites ejecutar los scripts de forma escalonada, salvo que los ejecutes con un RMM adecuado para la escala de la operación.

Mejora tus flujos de trabajo de Intune con NinjaOne

Muchos flujos de trabajo de Intune se pueden complementar con las políticas de automatización, los informes y la gestión de TI escalable y granular que ofrece NinjaOne RMM®.

  • Despliegue de scripts que etiquetan los dispositivos en el registro
  • Activación de scripts externos de Graph mediante políticas de automatización
  • Informes sobre los metadatos de los dispositivos (etiqueta, rol, ubicación) para orientar las asignaciones
  • Etiquetado de los dispositivos sin perfiles de configuración adecuados para su remediación
  • Alertas cuando los dispositivos se desvían de las asignaciones de políticas de Intune previstas

Con NinjaOne, los MSP pueden simplificar el gobierno de las políticas de Intune sin renunciar a la escalabilidad y los informes multicliente.

Buenas prácticas para automatizar la asignación de perfiles en Intune

Automatizar la asignación de perfiles de configuración de Intune con la API de Graph es una forma eficaz de reforzar el cumplimiento de las políticas y agilizar la incorporación de dispositivos en toda tu red.

Pero, a medida que tu organización crece, conviene combinar Intune y la API de Graph con un RMM como NinjaOne, que ofrece capacidades de automatización y remediación a gran escala. Este enfoque proactivo proporciona un marco completo para una gestión de endpoints escalable, automática y lista para auditorías.
Temas relacionados:

FAQs

Los perfiles de configuración de Intune son conjuntos de ajustes y políticas que controlan la seguridad, las restricciones de hardware y el comportamiento del sistema operativo en los endpoints gestionados. Estos perfiles se asignan a grupos de usuarios o de dispositivos para aplicar líneas base estandarizadas en todo el entorno.

La API de Microsoft Graph es la puerta de entrada unificada a los servicios de Microsoft 365. Como el centro de administración de Microsoft Intune se basa íntegramente en los endpoints de la API de Graph, los administradores pueden usarla para automatizar de forma programática el despliegue del tenant, consultar el estado de los dispositivos y asignar políticas a gran escala.

Si quieres un flujo de trabajo 100 % cloud nativo, puedes prescindir por completo de las claves del registro local. Puedes basarte en las categorías de dispositivo nativas de Intune o usar los atributos de extensión de Microsoft Entra ID para construir tu segmentación dinámica. Las claves del registro local suelen usarse cuando necesitas un motor RMM local (como NinjaOne) que cubra el hueco de los endpoints no gestionados o en fase de transición.

Si un dispositivo recibe dos ajustes de perfil de configuración contradictorios a través de asignaciones de grupo distintas, Intune no aplica la regla de «la última escritura gana». En su lugar, marca un estado de conflicto en el centro de administración y no aplica ninguno de los dos ajustes hasta que un administrador resuelva manualmente el solapamiento. Para evitarlo, asegúrate de que la lógica de tu script imponga una arquitectura estricta de «una etiqueta por dominio de política».

Microsoft Intune se basa en arquitecturas de segmentación por grupos para las políticas personalizadas de cumplimiento y configuración. Aunque la plataforma te permite dirigirte a colecciones virtuales amplias como «Todos los dispositivos», la segmentación granular por atributos únicos o etiquetas operativas exige agrupar antes los objetos. Por eso los grupos de Microsoft Entra ID son el enlace funcional imprescindible para automatizar con la API de Graph.

Quizá también te interese…

¿Listo para simplificar los aspectos más complejos de las TI?