New-EntraServicePrincipalAppRoleAssignment
Asigna una entidad de servicio a un rol de aplicación.
Sintaxis
Default (valor predeterminado)
New-EntraServicePrincipalAppRoleAssignment
-ServicePrincipalId <String>
-PrincipalId <String>
-Id <String>
-ResourceId <String>
[<CommonParameters>]
Description
El New-EntraServicePrincipalAppRoleAssignment cmdlet asigna una entidad de servicio a un rol de aplicación en Microsoft Entra ID.
En escenarios delegados, el usuario que llama necesita al menos uno de los siguientes roles Microsoft Entra.
- Cuentas de sincronización de directorios
- Escritor de directorios
- Administrador de identidades híbridas
- Administrador de gobernanza de identidades
- Administrador de roles con privilegios
- Administrador de usuarios
- Administrador de aplicaciones
- Administrador de aplicaciones en la nube
Ejemplos
Ejemplo 1: Asignación de un rol de aplicación a una entidad de servicio
Connect-Entra -Scopes 'AppRoleAssignment.ReadWrite.All'
$clientServicePrincipal = Get-EntraServicePrincipal -Filter "displayName eq 'Helpdesk Application'"
$resourceServicePrincipal = Get-EntraServicePrincipal -Filter "displayName eq 'Microsoft Graph'"
$appRole = $resourceServicePrincipal.AppRoles | Where-Object { $_.Value -eq "User.ReadBasic.All" }
New-EntraServicePrincipalAppRoleAssignment -ServicePrincipalId $clientServicePrincipal.Id -PrincipalId $clientServicePrincipal.Id -Id $appRole.Id -ResourceId $resourceServicePrincipal.Id
Ejemplo 2: Asignación de un rol de aplicación a otra entidad de servicio
Connect-Entra -Scopes 'AppRoleAssignment.ReadWrite.All'
$clientServicePrincipal = Get-EntraServicePrincipal -Filter "displayName eq 'Helpdesk Application'"
$servicePrincipalObject = Get-EntraServicePrincipal -Filter "displayName eq 'Box'"
New-EntraServicePrincipalAppRoleAssignment -ServicePrincipalId $clientServicePrincipal.Id -PrincipalId $clientServicePrincipal.Id -ResourceId $servicePrincipalObject.Id -Id $servicePrincipalObject.Approles[1].Id
Id AppRoleId CreationTimestamp PrincipalDisplayName PrincipalId PrincipalType ResourceDisplayName ResourceId
-- --------- ----------------- -------------------- ----------- ------------- ------------------- ----------
1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5 00000000-0000-0000-0000-000000000000 12-03-2024 11:05:29 Box aaaaaaaa-bbbb-cccc-1111-222222222222 ServicePrincipal Box aaaa0000-bb11-2222-33cc-444444dddddd
En este ejemplo se muestra cómo asignar un rol de aplicación a otra entidad de servicio en Microsoft Entra ID. Puede usar el comando Get-EntraServicePrincipal para obtener un identificador de entidad de servicio.
-
-ServicePrincipalIdel parámetro especifica el ObjectId de una entidad de servicio de cliente a la que va a asignar el rol de aplicación. -
-ResourceIdparameter especifica el ObjectId de la entidad de servicio de recursos. -
-Idel parámetro especifica el identificador del rol de aplicación (definido en la entidad de servicio de recursos) que se va a asignar a la entidad de servicio de cliente. Si no se definen roles de aplicación en la aplicación de recursos, puede usar00000000-0000-0000-0000-000000000000. -
-PrincipalIdel parámetro especifica el ObjectId de la entidad de servicio de cliente a la que va a asignar el rol de aplicación.
Ejemplo 3: Asignación de un rol de aplicación a un usuario
Connect-Entra -Scopes 'AppRoleAssignment.ReadWrite.All'
$servicePrincipalObject = Get-EntraServicePrincipal -Filter "displayName eq 'Box'"
$user = Get-EntraUser -UserId 'PattiF@Contoso.com'
New-EntraServicePrincipalAppRoleAssignment `
-ServicePrincipalId $servicePrincipalObject.Id `
-ResourceId $servicePrincipalObject.Id `
-Id $servicePrincipalObject.Approles[1].Id `
-PrincipalId $user.Id
Id AppRoleId CreationTimestamp PrincipalDisplayName PrincipalId PrincipalType ResourceDisplayName ResourceId
-- --------- ----------------- -------------------- ----------- ------------- ------------------- ----------
2bbbbbb2-3cc3-4dd4-5ee5-6ffffffffff6 00000000-0000-0000-0000-000000000000 12-03-2024 11:05:29 Box aaaaaaaa-bbbb-cccc-1111-222222222222 ServicePrincipal Box bbbb1111-cc22-3333-44dd-555555eeeeee
En este ejemplo se muestra cómo asignar un rol de aplicación a un usuario en Microsoft Entra ID.
Puede usar el comando Get-EntraServicePrincipal para obtener un identificador de entidad de servicio. Puede usar el comando Get-EntraUser para obtener un identificador de usuario.
-
-ServicePrincipalIdel parámetro especifica el ObjectId de la entidad de servicio de la aplicación. -
-ResourceIdel parámetro especifica el ObjectId de la entidad de servicio de la aplicación. -
-Idel parámetro especifica el identificador del rol de aplicación (definido en la entidad de servicio de la aplicación) que se va a asignar al usuario. Si no se define ningún rol de aplicación en la aplicación de recursos, puede usar00000000-0000-0000-0000-000000000000para indicar que la aplicación está asignada al usuario. -
-PrincipalIdel parámetro especifica el ObjectId de un usuario al que va a asignar el rol de aplicación.
Ejemplo 4: Asignación de un rol de aplicación a un grupo
Connect-Entra -Scopes 'AppRoleAssignment.ReadWrite.All'
$servicePrincipalObject = Get-EntraServicePrincipal -Filter "displayName eq 'Box'"
$group = Get-EntraGroup -Filter "displayName eq 'Contoso marketing'"
New-EntraServicePrincipalAppRoleAssignment `
-ServicePrincipalId $servicePrincipalObject.Id `
-ResourceId $servicePrincipalObject.Id `
-Id $servicePrincipalObject.Approles[1].Id `
-PrincipalId $group.Id
Id AppRoleId CreationTimestamp PrincipalDisplayName PrincipalId PrincipalType ResourceDisplayName ResourceId
-- --------- ----------------- -------------------- ----------- ------------- ------------------- ----------
3cccccc3-4dd4-5ee5-6ff6-7aaaaaaaaaa7 00000000-0000-0000-0000-000000000000 12-03-2024 11:05:29 Box aaaaaaaa-bbbb-cccc-1111-222222222222 ServicePrincipal Box cccc2222-dd33-4444-55ee-666666ffffff
En este ejemplo se muestra cómo asignar un rol de aplicación a un grupo en Microsoft Entra ID.
Puede usar el comando Get-EntraServicePrincipal para obtener un identificador de entidad de servicio. Puede usar el comando Get-EntraGroup para obtener un identificador de grupo.
-
-ServicePrincipalIdel parámetro especifica el ObjectId de la entidad de servicio de la aplicación. -
-ResourceIdel parámetro especifica el ObjectId de la entidad de servicio de la aplicación. -
-Idel parámetro especifica el identificador del rol de aplicación (definido en la entidad de servicio de la aplicación) que se va a asignar al grupo. Si no se definen roles de aplicación en la aplicación de recursos, puede usar00000000-0000-0000-0000-000000000000para indicar que la aplicación está asignada al grupo. -
-PrincipalIdel parámetro especifica el ObjectId de un grupo al que va a asignar el rol de aplicación.
Parámetros
-Id
Especifica el identificador.
Propiedades de parámetro
| Tipo: | System.String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Obligatorio: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-PrincipalId
Especifica un identificador de entidad de seguridad.
Propiedades de parámetro
| Tipo: | System.String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Obligatorio: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-ResourceId
Especifica un identificador de recurso.
Propiedades de parámetro
| Tipo: | System.String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Obligatorio: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-ServicePrincipalId
Especifica el identificador de una entidad de servicio en Microsoft Entra ID.
Propiedades de parámetro
| Tipo: | System.String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | ObjectId (identificador de objeto) |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Obligatorio: | True |
| Valor de la canalización: | True |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
CommonParameters
Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.
Notas
New-EntraServiceAppRoleAssignment es un alias de New-EntraServicePrincipalAppRoleAssignment.