New-AzureADServiceAppRoleAssignment

Atribui uma função de aplicação a um utilizador, a um grupo ou a outro principal de serviço.

Syntax

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 aplicação de um principal de serviço de recursos a um utilizador, a um grupo ou a outro principal de serviço. As funções de aplicação atribuídas aos principais de serviço também são conhecidas como permissões de aplicação.

Nota

O comportamento descrito aqui aplica-se quando Connect-AzureAD foi chamado sem quaisquer parâmetros ou com uma identidade de aplicação da Microsoft. Veja Exemplo 4 para saber mais sobre a diferença quando ligado através de uma identidade de serviço ou registo de aplicações pertencente ao cliente.

Exemplos

Exemplo 1: Atribuir uma função de aplicação a outro principal 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, é atribuída a um principal de serviço de cliente uma função de aplicação (permissão de aplicação) definida por um principal de serviço de recursos (por exemplo, uma API):

  • ObjectId: o ObjectId do principal do serviço de recursos (por exemplo, uma API).
  • ResourceId: o ObjectId do principal do serviço de recursos (por exemplo, uma API).
  • Id: O ID da função de aplicação (definido no principal do serviço de recursos) para atribuir ao principal de serviço de cliente. Se não tiverem sido definidas funções de aplicação na aplicação de recursos, pode utilizar 00000000-0000-0000-0000-000000000000.
  • PrincipalId: o ObjectId do principal de serviço de cliente ao qual está a atribuir a função de aplicação.

Nota

Este exemplo aplica-se quando Connect-AzureAD foi chamado sem quaisquer parâmetros. Veja Exemplo 4 para ver como este cmdlet é utilizado quando ligado através de uma identidade de serviço ou registo de aplicação pertencente ao cliente.

Exemplo 2: Atribuir uma função de aplicação a um utilizador

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

Neste exemplo, é atribuída a um utilizador uma função de aplicação definida por uma aplicação de recursos:

  • ObjectId: o ObjectId do principal de serviço da aplicação.
  • ResourceId: o ObjectId do principal de serviço da aplicação.
  • Id: O ID da função de aplicação (definido no principal de serviço da aplicação) para atribuir ao utilizador. Se não tiverem sido definidas funções de aplicação para a aplicação de recursos, pode utilizar 00000000-0000-0000-0000-000000000000 para indicar que a aplicação foi atribuída ao utilizador.
  • PrincipalId: o ObjectId do utilizador ao qual está a atribuir a função de aplicação.

Nota

Este exemplo aplica-se quando Connect-AzureAD foi chamado sem quaisquer parâmetros. Veja Exemplo 4 para ver como este cmdlet é utilizado quando ligado através de uma identidade de serviço ou registo de aplicação pertencente ao cliente.

Exemplo 3: Atribuir uma função de aplicação 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, é atribuída a um grupo uma função de aplicação definida por uma aplicação de recursos. Todos os utilizadores que são membros diretos do grupo atribuído são considerados como estando atribuídos à função de aplicação:

  • ObjectId: o ObjectId do principal de serviço da aplicação.
  • ResourceId: o ObjectId do principal de serviço da aplicação.
  • Id: O ID da função de aplicação (definido no principal de serviço da aplicação) para atribuir ao grupo. Se não tiverem sido definidas funções de aplicação na aplicação de recursos, pode utilizar 00000000-0000-0000-0000-000000000000 para indicar que a aplicação foi atribuída ao grupo.
  • PrincipalId: o ObjectId do grupo ao qual está a atribuir a função de aplicação.

Nota

Este exemplo aplica-se quando Connect-AzureAD foi chamado sem quaisquer parâmetros. Veja Exemplo 4 para ver como este cmdlet é utilizado quando ligado através de uma identidade de serviço ou registo de aplicação pertencente ao cliente.

Exemplo 4: quando ligado através de uma identidade de serviço ou aplicação pertencente ao 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 deste cmdlet muda quando ligado ao módulo Azure AD PowerShell através de uma identidade de serviço ou registo de aplicações pertencente ao cliente, incluindo:

  • Ao ligar como um principal de serviço e
  • Ao utilizar o AadAccessToken parâmetro com um token de acesso obtido para uma identidade de serviço ou registo de aplicação pertencente ao cliente.

Nestas circunstâncias, este cmdlet só é utilizado para atribuir uma função de aplicação a outro principal de serviço, identificado pelos ObjectId parâmetros e PrincipalId :

  • ObjectId: o ObjectId do principal de serviço de cliente ao qual está a atribuir a função de aplicação.
  • ResourceId: o ObjectId do principal do serviço de recursos (por exemplo, uma API).
  • Id: O ID da função de aplicação (definido no principal do serviço de recursos) para atribuir ao principal de serviço de cliente. Se não tiverem sido definidas funções de aplicação na aplicação de recursos, pode utilizar 00000000-0000-0000-0000-000000000000.
  • PrincipalId: o ObjectId do principal de serviço de cliente ao qual está a atribuir a função de aplicação.

Quando estiver ligado através de uma identidade de serviço ou aplicação pertencente ao cliente, utilize New-AzureADUserAppRoleAssignment e New-AzureADGroupAppRoleAssignment para criar atribuições de funções de aplicação para um utilizador e grupos, respetivamente.

Parâmetros

-Id

Especifica o ID da função de aplicação (definido no principal do serviço de recursos) a atribuir. Se não tiverem sido definidas funções de aplicação na aplicação de recursos, pode utilizar 00000000-0000-0000-0000-000000000000 para indicar a atribuição da aplicação ou serviço de recursos, sem especificar uma função de aplicação.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-InformationAction

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

  • Continuar
  • Ignorar
  • Inquire
  • SilentlyContinue
  • Parar
  • Suspender
Type:ActionPreference
Aliases:infa
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InformationVariable

Especifica uma variável de informação.

Type:String
Aliases:iv
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ObjectId

Especifica o ObjectId do principal do serviço de recursos (como uma aplicação ou uma API) que vai ser atribuído a um utilizador, a um grupo ou a outro principal de serviço.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PrincipalId

Especifica o ObjectId do utilizador, grupo ou outro principal de serviço ao qual a função da aplicação está a ser atribuída.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ResourceId

Especifica o ObjectId do principal do serviço de recursos (como uma aplicação ou uma API) que vai ser atribuído a um utilizador, a um grupo ou a outro principal de serviço.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

Notas

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