New-AzureADServiceAppRoleAssignment
Asigna un rol de aplicación a un usuario, un grupo u otra entidad de servicio.
Sintaxis
New-AzureADServiceAppRoleAssignment
-ObjectId <String>
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
-Id <String>
-PrincipalId <String>
-ResourceId <String>
[<CommonParameters>]
Description
El cmdlet New-AzureADServiceAppRoleAssignment asigna un rol de aplicación de una entidad de servicio de recursos a un usuario, un grupo u otra entidad de servicio. Los roles de aplicación asignados a entidades de servicio también se conocen como permisos de aplicación.
Nota
El comportamiento descrito aquí se aplica cuando Connect-AzureAD
se llamó a sin parámetros o mediante una identidad de aplicación propiedad de Microsoft. Consulte el ejemplo 4 para obtener más información sobre la diferencia cuando se conecta mediante un registro de aplicación propiedad del cliente o una identidad de servicio.
Ejemplos
Ejemplo 1: Asignación de un rol de aplicación a otra entidad de servicio
PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $client.ObjectId
En este ejemplo, a una entidad de servicio de cliente se le asigna un rol de aplicación (permiso de aplicación) definido por una entidad de servicio de recursos (por ejemplo, una API):
-
ObjectId
: ObjectId de la entidad de servicio del recurso (por ejemplo, una API). -
ResourceId
: ObjectId de la entidad de servicio del recurso (por ejemplo, una API). -
Id
: 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 han definido roles de aplicación en la aplicación de recursos, puede usar00000000-0000-0000-0000-000000000000
. -
PrincipalId
: objectId de la entidad de servicio de cliente a la que va a asignar el rol de aplicación.
Nota
Este ejemplo se aplica cuando Connect-AzureAD
se llamó a sin parámetros. Consulte el ejemplo 4 para ver cómo se usa este cmdlet cuando se conecta mediante un registro de aplicación propiedad del cliente o una identidad de servicio.
Ejemplo 2: Asignación de un rol de aplicación a un usuario
PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $user.ObjectId
En este ejemplo, a un usuario se le asigna un rol de aplicación definido por una aplicación de recursos:
-
ObjectId
: ObjectId de la entidad de servicio de la aplicación. -
ResourceId
: ObjectId de la entidad de servicio de la aplicación. -
Id
: 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 han definido roles de aplicación en la aplicación de recursos, puede usar00000000-0000-0000-0000-000000000000
para indicar que la aplicación está asignada al usuario. -
PrincipalId
: el valor de ObjectId del usuario al que va a asignar el rol de aplicación.
Nota
Este ejemplo se aplica cuando Connect-AzureAD
se llamó a sin parámetros. Consulte el ejemplo 4 para ver cómo se usa este cmdlet cuando se conecta mediante un registro de aplicación propiedad del cliente o una identidad de servicio.
Ejemplo 3: Asignación de un rol de aplicación a un grupo
PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $group.ObjectId
En este ejemplo, a un grupo se le asigna un rol de aplicación definido por una aplicación de recursos. Todos los usuarios que son miembros directos del grupo asignado se consideran asignados al rol de aplicación:
-
ObjectId
: ObjectId de la entidad de servicio de la aplicación. -
ResourceId
: ObjectId de la entidad de servicio de la aplicación. -
Id
: 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 ha definido ningún rol de aplicación en la aplicación de recursos, puede usar00000000-0000-0000-0000-000000000000
para indicar que la aplicación se asigna al grupo. -
PrincipalId
: el valor de ObjectId del grupo al que va a asignar el rol de aplicación.
Nota
Este ejemplo se aplica cuando Connect-AzureAD
se llamó a sin parámetros. Consulte el ejemplo 4 para ver cómo se usa este cmdlet cuando se conecta mediante un registro de aplicación propiedad del cliente o una identidad de servicio.
Ejemplo 4: cuando se conecta mediante una identidad de servicio o una aplicación propiedad del cliente
PS C:\> Connect-AzureAD -TenantId $tenantOrDomain -ApplicationId $appId -CertificateThumbprint $thumb
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $client.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $client.ObjectId
El comportamiento de este cmdlet cambia cuando se conecta al módulo de PowerShell de Azure AD mediante un registro de aplicación propiedad del cliente o una identidad de servicio, entre las que se incluyen:
- Al conectarse como entidad de servicio y
- Cuando se usa el
AadAccessToken
parámetro con un token de acceso obtenido para un registro de aplicación propiedad del cliente o una identidad de servicio.
En estas circunstancias, este cmdlet solo se usa para asignar un rol de aplicación a otra entidad de servicio, identificado por los ObjectId
parámetros y PrincipalId
:
-
ObjectId
: objectId de la entidad de servicio de cliente a la que va a asignar el rol de aplicación. -
ResourceId
: ObjectId de la entidad de servicio del recurso (por ejemplo, una API). -
Id
: 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 han definido roles de aplicación en la aplicación de recursos, puede usar00000000-0000-0000-0000-000000000000
. -
PrincipalId
: objectId de la entidad de servicio de cliente a la que va a asignar el rol de aplicación.
Cuando se conecta mediante una identidad de servicio o una aplicación propiedad del cliente, use New-AzureADUserAppRoleAssignment y New-AzureADGroupAppRoleAssignment para crear asignaciones de roles de aplicación para un usuario y grupos, respectivamente.
Parámetros
-Id
Especifica el identificador del rol de aplicación (definido en la entidad de servicio de recursos) que se va a asignar. Si no se ha definido ningún rol de aplicación en la aplicación de recursos, puede usar 00000000-0000-0000-0000-000000000000
para indicar la asignación de la aplicación de recursos o el servicio, sin especificar un rol de aplicación.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-InformationAction
Especifica cómo responde este cmdlet a un evento de información. Los valores permitidos para este parámetro son los siguientes:
- Continuar
- Ignorar
- Consultar
- SilentlyContinue
- Stop
- Suspender
Tipo: | ActionPreference |
Alias: | infa |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-InformationVariable
Especifica una variable de información.
Tipo: | String |
Alias: | iv |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ObjectId
Especifica el ObjectId de la entidad de servicio de recursos (como una aplicación o una API) que se va a asignar a un usuario, un grupo u otra entidad de servicio.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-PrincipalId
Especifica el ObjectId del usuario, grupo u otra entidad de servicio a la que se asigna el rol de aplicación.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ResourceId
Especifica el ObjectId de la entidad de servicio de recursos (como una aplicación o una API) que se va a asignar a un usuario, un grupo u otra entidad de servicio.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Notas
Consulte la guía de migración para New-AzureADServiceAppRoleAssignment en Microsoft Graph PowerShell.