New-EntraServicePrincipalAppRoleAssignment

Affecte un principal de service à un rôle d’application.

Syntaxe

Default (Par défaut)

New-EntraServicePrincipalAppRoleAssignment

    -ServicePrincipalId <String>
    -PrincipalId <String>
    -Id <String>
    -ResourceId <String>
    [<CommonParameters>]

Description

L’applet New-EntraServicePrincipalAppRoleAssignment de commande affecte un principal de service à un rôle d’application dans Microsoft Entra ID.

Pour les scénarios délégués, l’utilisateur appelant a besoin d’au moins l’un des rôles Microsoft Entra suivants.

  • Comptes de synchronisation d’annuaires
  • Éditeur de répertoires
  • Administrateur d’identité hybride
  • Administrateur de la Gouvernance de l'Identité
  • Administrateur de rôle privilégié
  • Administrateur d’utilisateurs
  • Administrateur d’application
  • Administrateur d’applications cloud

Exemples

Exemple 1 : Attribuer un rôle d’application à un principal de service

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

Exemple 2 : Attribuer un rôle d’application à un autre principal de service

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

Cet exemple montre comment affecter un rôle d’application à un autre principal de service dans Microsoft Entra ID. Vous pouvez utiliser la commande Get-EntraServicePrincipal pour obtenir un ID de principal de service.

  • -ServicePrincipalId spécifie l’ObjectId d’un principal de service client auquel vous affectez le rôle d’application.
  • -ResourceIdspécifie l’ObjectId du principal du service de ressources.
  • -Id spécifie l’ID du rôle d’application (défini sur le principal du service de ressources) à affecter au principal du service client. Si aucun rôle d’application n’est défini sur l’application de ressource, vous pouvez utiliser 00000000-0000-0000-0000-000000000000.
  • -PrincipalId spécifie l’ObjectId du principal du service client auquel vous affectez le rôle d’application.

Exemple 3 : Attribuer un rôle d’application à un utilisateur

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

Cet exemple montre comment attribuer un rôle d’application à un utilisateur dans Microsoft Entra ID. Vous pouvez utiliser la commande Get-EntraServicePrincipal pour obtenir un ID de principal de service. Vous pouvez utiliser la commande Get-EntraUser pour obtenir un ID utilisateur.

  • -ServicePrincipalId spécifie l’ObjectId du principal de service de l’application.
  • -ResourceIdspécifie l’ObjectId du principal de service de l’application.
  • -Id spécifie l’ID du rôle d’application (défini sur le principal de service de l’application) à affecter à l’utilisateur. Si aucun rôle d’application n’est défini sur l’application de ressource, vous pouvez l’utiliser 00000000-0000-0000-0000-000000000000 pour indiquer que l’application est affectée à l’utilisateur.
  • -PrincipalId spécifie l’ObjectId d’un utilisateur auquel vous affectez le rôle d’application.

Exemple 4 : Attribuer un rôle d’application à un groupe

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

Cet exemple montre comment affecter un rôle d’application à un groupe dans Microsoft Entra ID. Vous pouvez utiliser la commande Get-EntraServicePrincipal pour obtenir un ID de principal de service. Vous pouvez utiliser la commande Get-EntraGroup pour obtenir un ID de groupe.

  • -ServicePrincipalId spécifie l’ObjectId du principal de service de l’application.
  • -ResourceIdspécifie l’ObjectId du principal de service de l’application.
  • -Id spécifie l’ID du rôle d’application (défini sur le principal de service de l’application) à affecter au groupe. Si aucun rôle d’application n’est défini sur l’application de ressource, vous pouvez l’utiliser 00000000-0000-0000-0000-000000000000 pour indiquer que l’application est affectée au groupe.
  • -PrincipalId spécifie l’ObjectId d’un groupe auquel vous affectez le rôle d’application.

Paramètres

-Id

Spécifie l’ID.

Propriétés du paramètre

Type:System.String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-PrincipalId

Spécifie un ID de principal.

Propriétés du paramètre

Type:System.String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ResourceId

Spécifie un ID de ressource.

Propriétés du paramètre

Type:System.String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ServicePrincipalId

Spécifie l’ID d’un principal de service dans Microsoft Entra ID.

Propriétés du paramètre

Type:System.String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Identifiant d'objet (ObjectId)

Jeux de paramètres

(All)
Position:Named
Obligatoire:True
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Notes

New-EntraServiceAppRoleAssignment est un alias pour New-EntraServicePrincipalAppRoleAssignment.