Compartilhar via


New-AzureADServiceAppRoleAssignment

Atribui uma função de aplicativo a um usuário, um grupo ou outra entidade de serviço.

Sintaxe

New-AzureADServiceAppRoleAssignment
   -ObjectId <String>
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   -Id <String>
   -PrincipalId <String>
   -ResourceId <String>
   [<CommonParameters>]

Description

O cmdlet New-AzureADServiceAppRoleAssignment atribui uma função de aplicativo de uma entidade de serviço de recurso a um usuário, um grupo ou outra entidade de serviço. As funções de aplicativo atribuídas às entidades de serviço também são conhecidas como permissões de aplicativo.

Observação

O comportamento descrito aqui se aplica quando Connect-AzureAD foi chamado sem parâmetros ou usando uma identidade de aplicativo de propriedade da Microsoft. Consulte o Exemplo 4 para saber mais sobre a diferença quando conectado usando um registro de aplicativo de propriedade do cliente ou uma identidade de serviço.

Exemplos

Exemplo 1: Atribuir uma função de aplicativo a outra entidade de serviço

PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $client.ObjectId

Neste exemplo, uma entidade de serviço do cliente recebe uma função de aplicativo (permissão de aplicativo) definida por uma entidade de serviço de recurso (por exemplo, uma API):

  • ObjectId: a ObjectId da entidade de serviço de recurso (por exemplo, uma API).
  • ResourceId: a ObjectId da entidade de serviço de recurso (por exemplo, uma API).
  • Id: a ID da função de aplicativo (definida na entidade de serviço de recurso) a ser atribuída à entidade de serviço do cliente. Se nenhuma funções de aplicativo tiver sido definida no aplicativo de recursos, você poderá usar 00000000-0000-0000-0000-000000000000.
  • PrincipalId: a ObjectId da entidade de serviço do cliente à qual você está atribuindo a função de aplicativo.

Observação

Este exemplo se aplica quando Connect-AzureAD foi chamado sem parâmetros. Consulte o Exemplo 4 para ver como esse cmdlet é usado quando conectado usando um registro de aplicativo de propriedade do cliente ou uma identidade de serviço.

Exemplo 2: Atribuir uma função de aplicativo a um usuário

PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $user.ObjectId

Neste exemplo, um usuário recebe uma função de aplicativo definida por um aplicativo de recurso:

  • ObjectId: a ObjectId da entidade de serviço do aplicativo.
  • ResourceId: a ObjectId da entidade de serviço do aplicativo.
  • Id: a ID da função de aplicativo (definida na entidade de serviço do aplicativo) a ser atribuída ao usuário. Se nenhuma funções de aplicativo tiver sido definida para o aplicativo de recursos, você poderá usar 00000000-0000-0000-0000-000000000000 para indicar que o aplicativo foi atribuído ao usuário.
  • PrincipalId: a ObjectId do usuário ao qual você está atribuindo a função de aplicativo.

Observação

Este exemplo se aplica quando Connect-AzureAD foi chamado sem parâmetros. Consulte o Exemplo 4 para ver como esse cmdlet é usado quando conectado usando um registro de aplicativo de propriedade do cliente ou uma identidade de serviço.

Exemplo 3: Atribuir uma função de aplicativo a um grupo

PS C:\> Connect-AzureAD
PS C:\> New-AzureADServiceAppRoleAssignment -ObjectId $resource.ObjectId -ResourceId $resource.ObjectId -Id $appRole.Id -PrincipalId $group.ObjectId

Neste exemplo, um grupo recebe uma função de aplicativo definida por um aplicativo de recurso. Todos os usuários que são membros diretos do grupo atribuído são considerados atribuídos à função de aplicativo:

  • ObjectId: a ObjectId da entidade de serviço do aplicativo.
  • ResourceId: a ObjectId da entidade de serviço do aplicativo.
  • Id: a ID da função de aplicativo (definida na entidade de serviço do aplicativo) a ser atribuída ao grupo. Se nenhuma funções de aplicativo tiver sido definida no aplicativo de recursos, você poderá usar 00000000-0000-0000-0000-000000000000 para indicar que o aplicativo está atribuído ao grupo.
  • PrincipalId: a ObjectId do grupo ao qual você está atribuindo a função de aplicativo.

Observação

Este exemplo se aplica quando Connect-AzureAD foi chamado sem parâmetros. Consulte o Exemplo 4 para ver como esse cmdlet é usado quando conectado usando um registro de aplicativo de propriedade do cliente ou uma identidade de serviço.

Exemplo 4: quando conectado usando uma identidade de aplicativo ou serviço de propriedade do 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

O comportamento desse cmdlet muda quando conectado ao módulo do PowerShell do Azure AD usando um registro de aplicativo ou identidade de serviço de propriedade do cliente, incluindo:

  • Ao se conectar como uma entidade de serviço e
  • Ao usar o AadAccessToken parâmetro com um token de acesso obtido para uma identidade de serviço ou registro de aplicativo de propriedade do cliente.

Nessas circunstâncias, esse cmdlet só é usado para atribuir uma função de aplicativo a outra entidade de serviço, identificada pelos ObjectId parâmetros e PrincipalId :

  • ObjectId: a ObjectId da entidade de serviço do cliente à qual você está atribuindo a função de aplicativo.
  • ResourceId: a ObjectId da entidade de serviço de recurso (por exemplo, uma API).
  • Id: a ID da função de aplicativo (definida na entidade de serviço de recurso) a ser atribuída à entidade de serviço do cliente. Se nenhuma funções de aplicativo tiver sido definida no aplicativo de recursos, você poderá usar 00000000-0000-0000-0000-000000000000.
  • PrincipalId: a ObjectId da entidade de serviço do cliente à qual você está atribuindo a função de aplicativo.

Quando conectado usando uma identidade de aplicativo ou serviço de propriedade do cliente, use New-AzureADUserAppRoleAssignment e New-AzureADGroupAppRoleAssignment para criar atribuições de função de aplicativo para um usuário e grupos, respectivamente.

Parâmetros

-Id

Especifica a ID da função de aplicativo (definida na entidade de serviço de recurso) a ser atribuída. Se nenhuma função de aplicativo tiver sido definida no aplicativo de recursos, você poderá usar 00000000-0000-0000-0000-000000000000 para indicar a atribuição do aplicativo ou serviço de recurso, sem especificar uma função de aplicativo.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-InformationAction

Especifica como esse cmdlet responde a um evento de informações. Os valores aceitáveis para esse parâmetro são:

  • Continuar
  • Ignorar
  • Consultar
  • SilentlyContinue
  • Stop
  • Suspend
Tipo:ActionPreference
Aliases:infa
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-InformationVariable

Especifica uma variável de informações.

Tipo:String
Aliases:iv
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ObjectId

Especifica a ObjectId da entidade de serviço de recurso (como um aplicativo ou uma API) que será atribuída a um usuário, um grupo ou outra entidade de serviço.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-PrincipalId

Especifica a ObjectId do usuário, grupo ou outra entidade de serviço à qual a função de aplicativo está sendo atribuída.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ResourceId

Especifica a ObjectId da entidade de serviço de recurso (como um aplicativo ou uma API) que será atribuída a um usuário, um grupo ou outra entidade de serviço.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Observações

Consulte o guia de migração para New-AzureADServiceAppRoleAssignment para o PowerShell do Microsoft Graph.