New-EntraServicePrincipalAppRoleAssignment
Atribui um principal de serviço a uma função de aplicação.
Sintaxe
Default (Predefinição)
New-EntraServicePrincipalAppRoleAssignment
-ServicePrincipalId <String>
-PrincipalId <String>
-Id <String>
-ResourceId <String>
[<CommonParameters>]
Descrição
O New-EntraServicePrincipalAppRoleAssignment cmdlet atribui um principal de serviço a um papel de aplicação no Microsoft Entra ID.
Para cenários delegados, o utilizador que chama precisa de pelo menos uma das seguintes funções Microsoft Entra.
- Contas de Sincronização de Diretórios
- Gravador de Diretórios
- Administrador de identidade híbrida
- Administrador de Governança de Identidade
- Administrador de Função Privilegiada
- Administrador de usuários
- Administrador de Aplicações
- Administrador de aplicativos na nuvem
Exemplos
Exemplo 1: Atribuir um papel de aplicação a um principal de serviço
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
Exemplo 2: Atribuir um papel de aplicação a outro principal de serviço
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
Este exemplo demonstra como atribuir um papel de aplicação a outro principal de serviço no Microsoft Entra ID. Podes usar o comando Get-EntraServicePrincipal para obter um ID principal de serviço.
-
-ServicePrincipalIdO parâmetro especifica o ObjectId de um principal de serviço cliente ao qual está a atribuir o papel da aplicação. -
-ResourceIdo parâmetro especifica o ObjectId do principal do serviço de recursos. -
-Idparâmetro especifica o Id do papel da aplicação (definido no principal de serviço de recursos) a atribuir ao principal de serviço cliente. Se não estiverem definidos papéis de aplicação na aplicação de recurso, pode usar00000000-0000-0000-0000-000000000000. -
-PrincipalIdO parâmetro especifica o ObjectId do principal de serviço cliente ao qual está a atribuir o papel da aplicação.
Exemplo 3: Atribuir um papel de aplicação a um utilizador
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
Este exemplo demonstra como atribuir um papel de aplicação a um utilizador no Microsoft Entra ID.
Podes usar o comando Get-EntraServicePrincipal para obter um ID principal de serviço. Podes usar o comando Get-EntraUser para obter um ID de utilizador.
-
-ServicePrincipalIdo parâmetro especifica o ObjectId do principal de serviço da aplicação. -
-ResourceIdo parâmetro especifica o ObjectId do principal de serviço da aplicação. -
-Ido parâmetro especifica o Id do papel da aplicação (definido no principal de serviço da aplicação) a atribuir ao utilizador. Se não forem definidos papéis de aplicação para a aplicação de recursos, pode usar00000000-0000-0000-0000-000000000000para indicar que a aplicação está atribuída ao utilizador. -
-PrincipalIdespecifica o ObjectId de um utilizador a quem está a atribuir o papel da aplicação.
Exemplo 4: Atribuir um papel de aplicação a um 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
Este exemplo demonstra como atribuir um papel de aplicação a um grupo no Microsoft Entra ID.
Podes usar o comando Get-EntraServicePrincipal para obter um ID principal de serviço. Podes usar o comando Get-EntraGroup para obter um ID de grupo.
-
-ServicePrincipalIdo parâmetro especifica o ObjectId do principal de serviço da aplicação. -
-ResourceIdo parâmetro especifica o ObjectId do principal de serviço da aplicação. -
-Ido parâmetro especifica o Id do papel da aplicação (definido no principal de serviço da aplicação) a atribuir ao grupo. Se não forem definidos papéis de aplicação para a aplicação de recurso, pode usar00000000-0000-0000-0000-000000000000para indicar que a aplicação está atribuída ao grupo. -
-PrincipalIdparâmetro especifica o ObjectId de um grupo ao qual estás a atribuir a função da app.
Parâmetros
-Id
Especifica a ID.
Propriedades dos parâmetros
| Tipo: | System.String |
| Valor predefinido: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Posto: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-PrincipalId
Especifica um ID principal.
Propriedades dos parâmetros
| Tipo: | System.String |
| Valor predefinido: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Posto: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-ResourceId
Especifica um ID de recurso.
Propriedades dos parâmetros
| Tipo: | System.String |
| Valor predefinido: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Posto: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-ServicePrincipalId
Especifica o ID de um principal de serviço no Microsoft Entra ID.
Propriedades dos parâmetros
| Tipo: | System.String |
| Valor predefinido: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | IdentificadorDoObjeto |
Conjuntos de parâmetros
(All)
| Posto: | Named |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Notas
New-EntraServiceAppRoleAssignment é um alias para New-EntraServicePrincipalAppRoleAssignment.