New-EntraServicePrincipalAppRoleAssignment

Weist einer Anwendungsrolle einen Dienstprinzipal zu.

Syntax

Default (Standard)

New-EntraServicePrincipalAppRoleAssignment

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

Beschreibung

Das New-EntraServicePrincipalAppRoleAssignment Cmdlet weist einer Anwendungsrolle in Microsoft Entra ID einen Dienstprinzipal zu.

Für delegierte Szenarien benötigt der aufrufende Benutzer mindestens eine der folgenden Microsoft Entra Rollen.

  • Verzeichnissynchronisierungskonten
  • Verzeichnisschreiber
  • Hybrid-Identitätsadministrator
  • Identitätsverwaltung-Administrator
  • Administrator für privilegierte Rollen
  • Benutzeradministrator
  • Anwendungsadministrator
  • Cloudanwendungsadministrator

Beispiele

Beispiel 1: Zuweisen einer App-Rolle zu einem Dienstprinzipal

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

Beispiel 2: Zuweisen einer App-Rolle zu einem anderen Dienstprinzipal

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

In diesem Beispiel wird das Zuweisen einer App-Rolle zu einem anderen Dienstprinzipal in Microsoft Entra ID veranschaulicht. Sie können den Befehl Get-EntraServicePrincipal verwenden, um eine Dienstprinzipal-ID abzurufen.

  • -ServicePrincipalId der Parameter gibt die ObjectId eines Clientdienstprinzipals an, dem Sie die App-Rolle zuweisen.
  • -ResourceIdder Parameter gibt die ObjectId des Ressourcendienstprinzipals an.
  • -Id der Parameter gibt die ID der App-Rolle an (definiert im Ressourcendienstprinzipal), die dem Clientdienstprinzipal zugewiesen werden soll. Wenn keine App-Rollen für die Ressourcen-App definiert sind, können Sie diese verwenden 00000000-0000-0000-0000-000000000000.
  • -PrincipalId der Parameter gibt die ObjectId des Clientdienstprinzipals an, dem Sie die App-Rolle zuweisen.

Beispiel 3: Zuweisen einer App-Rolle zu einem Benutzer

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

In diesem Beispiel wird veranschaulicht, wie sie einem Benutzer in Microsoft Entra ID eine App-Rolle zuweisen. Sie können den Befehl Get-EntraServicePrincipal verwenden, um eine Dienstprinzipal-ID abzurufen. Sie können den Befehl Get-EntraUser verwenden, um eine Benutzer-ID abzurufen.

  • -ServicePrincipalId der Parameter gibt die ObjectId des Dienstprinzipals der App an.
  • -ResourceIdder Parameter gibt die ObjectId des Dienstprinzipals der App an.
  • -Id der Parameter gibt die ID der App-Rolle an (definiert im Dienstprinzipal der App), die dem Benutzer zugewiesen werden soll. Wenn keine App-Rollen für die Ressourcen-App definiert sind, können 00000000-0000-0000-0000-000000000000 Sie angeben, dass die App dem Benutzer zugewiesen ist.
  • -PrincipalId der Parameter gibt die ObjectId eines Benutzers an, dem Sie die App-Rolle zuweisen.

Beispiel 4: Zuweisen einer App-Rolle zu einer Gruppe

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

In diesem Beispiel wird veranschaulicht, wie sie einer Gruppe in Microsoft Entra ID eine App-Rolle zuweisen. Sie können den Befehl Get-EntraServicePrincipal verwenden, um eine Dienstprinzipal-ID abzurufen. Sie können den Befehl Get-EntraGroup verwenden, um eine Gruppen-ID abzurufen.

  • -ServicePrincipalId der Parameter gibt die ObjectId des Dienstprinzipals der App an.
  • -ResourceIdder Parameter gibt die ObjectId des Dienstprinzipals der App an.
  • -Id der Parameter gibt die ID der App-Rolle an (definiert im Dienstprinzipal der App), die der Gruppe zugewiesen werden soll. Wenn keine App-Rollen für die Ressourcen-App definiert sind, können 00000000-0000-0000-0000-000000000000 Sie angeben, dass die App der Gruppe zugewiesen ist.
  • -PrincipalId der Parameter gibt die ObjectId einer Gruppe an, der Sie die App-Rolle zuweisen.

Parameter

-Id

Gibt die ID an.

Parametereigenschaften

Typ:System.String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-PrincipalId

Gibt eine Prinzipal-ID an.

Parametereigenschaften

Typ:System.String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-ResourceId

Gibt eine Ressourcen-ID an.

Parametereigenschaften

Typ:System.String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-ServicePrincipalId

Gibt die ID eines Dienstprinzipals in Microsoft Entra ID an.

Parametereigenschaften

Typ:System.String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:Objekt-ID

Parametersätze

(All)
Position:Named
Obligatorisch:True
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Hinweise

New-EntraServiceAppRoleAssignment ist ein Alias für New-EntraServicePrincipalAppRoleAssignment.