Get-EntraServicePrincipal

Hämtar tjänstens huvudnamn.

Syntax

GetQuery (Standard)

Get-EntraServicePrincipal

    [-Top <Int32>]
    [-All]
    [-Filter <String>]
    [-Property <String[]>]
    [-AssignmentRequired <Boolean>]
    [-ApplicationType <String>]
    [<CommonParameters>]

GetVague

Get-EntraServicePrincipal

    [-SearchString <String>]
    [-All]
    [-Property <String[]>]
    [-AssignmentRequired <Boolean>]
    [-ApplicationType <String>]
    [<CommonParameters>]

GetById

Get-EntraServicePrincipal

    -ServicePrincipalId <String>
    [-All]
    [-Property <String[]>]
    [<CommonParameters>]

Description

Cmdleten Get-EntraServicePrincipal hämtar ett huvudnamn för tjänsten i Microsoft Entra ID.

Exempel

Exempel 1: Hämta alla tjänstens huvudnamn från katalogen

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal
ObjectId                             AppId                                DisplayName
--------                             -----                                -----------
bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 Demo App
aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 22223333-cccc-4444-dddd-5555eeee6666 Demo Two App
dddddddd-3333-4444-5555-eeeeeeeeeeee 33334444-dddd-5555-eeee-6666ffff7777 ProjectWorkManagement

Det här exemplet hämtar alla tjänstens huvudnamn från katalogen.

Exempel 2: Hämta ett huvudnamn för tjänsten av ServicePrincipalId

Connect-Entra -Scopes 'Application.Read.All'
$servicePrincipal = Get-EntraServicePrincipal -Filter "displayName eq 'Helpdesk Application'"
Get-EntraServicePrincipal -ServicePrincipalId $servicePrincipal.Id
DisplayName                         Id                                   AppId                                SignInAudience      ServicePrincipalType
-----------                         --                                   -----                                --------------      --------------------
Helpdesk Application                aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMultipleOrgs Application

Det här kommandot hämtar specifika tjänstens huvudnamn.

  • -ServicePrincipalId Parametern anger ID för ett huvudnamn för tjänsten.

Exempel 3: Hämta alla tjänstens huvudnamn från katalogen

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -All
DisplayName                         Id                                   AppId                                SignInAudience      ServicePrincipalType
-----------                         --                                   -----                                --------------      --------------------
Helpdesk Application                aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMultipleOrgs Application
Microsoft Device Management Checkin bbbbbbbb-1111-2222-3333-cccccccccccc 11112222-bbbb-3333-cccc-4444dddd5555 AzureADMultipleOrgs Application
ProvisioningPowerBi                 cccccccc-2222-3333-4444-dddddddddddd 22223333-cccc-4444-dddd-5555eeee6666                     Application

Det här exemplet hämtar alla tjänstens huvudnamn från katalogen.

Exempel 4: Hämta de två främsta huvudnamnen för tjänsten från katalogen

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -Top 2
DisplayName                         Id                                   AppId                                SignInAudience      ServicePrincipalType
-----------                         --                                   -----                                --------------      --------------------
Helpdesk Application                aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMultipleOrgs Application
Microsoft Device Management Checkin bbbbbbbb-1111-2222-3333-cccccccccccc 11112222-bbbb-3333-cccc-4444dddd5555 AzureADMultipleOrgs Application

Det här kommandot hämtar de två främsta huvudnamnen för tjänsten från katalogen. Du kan använda -Limit som ett alias för -Top.

Exempel 5: Hämta tjänstens huvudnamn efter visningsnamn

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -Filter "displayName eq 'Helpdesk Application'"
DisplayName                         Id                                   AppId                                SignInAudience      ServicePrincipalType
-----------                         --                                   -----                                --------------      --------------------
Helpdesk Application                aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMultipleOrgs Application

I det här exemplet hämtas tjänstens huvudnamn med dess visningsnamn.

Exempel 6: Hämta en lista över alla tjänstens huvudnamn, som har ett visningsnamn som innehåller "Helpdesk Application"

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -SearchString 'Helpdesk Application'
DisplayName                         Id                                   AppId                                SignInAudience      ServicePrincipalType
-----------                         --                                   -----                                --------------      --------------------
Helpdesk Application                aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMultipleOrgs Application

Det här exemplet hämtar en lista över tjänstens huvudnamn, som har det angivna visningsnamnet.

Exempel 7: Hämta alla Företagsappar

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -Filter "tags/Any(x: x eq 'WindowsAzureActiveDirectoryIntegratedApp')"
DisplayName         Id                                   AppId                                SignInAudience         ServicePrincipalType
-----------         --                                   -----                                --------------         --------------------
Enterprise App1     00001111-aaaa-2222-bbbb-3333cccc4444 33334444-dddd-5555-eeee-6666ffff7777                         Application
Enterprise App2     11112222-bbbb-3333-cccc-4444dddd5555 22223333-cccc-4444-dddd-5555eeee6666 AzureADMultipleOrgs    Application

Det här exemplet visar hur du hämtar alla företagsappar.

Exempel 8: Hämta alla appproxyappar

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -Filter "tags/Any(x: x eq 'WindowsAzureActiveDirectoryOnPremApp')"
DisplayName         Id                                   AppId                                SignInAudience         ServicePrincipalType
-----------         --                                   -----                                --------------         --------------------
App proxy 1     00001111-aaaa-2222-bbbb-3333cccc4444 33334444-dddd-5555-eeee-6666ffff7777                         Application
App proxy 2     11112222-bbbb-3333-cccc-4444dddd5555 22223333-cccc-4444-dddd-5555eeee6666 AzureADMultipleOrgs    Application

Det här exemplet visar hur du hämtar alla appproxyappar.

Exempel 9: Hämta alla inaktiverade appar

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -Filter "accountEnabled eq false"
DisplayName         Id                                   AppId                                SignInAudience         ServicePrincipalType
-----------         --                                   -----                                --------------         --------------------
Disabled App1     00001111-aaaa-2222-bbbb-3333cccc4444 33334444-dddd-5555-eeee-6666ffff7777                         Application

Det här exemplet visar hur du hämtar alla inaktiverade appar.

Exempel 10: Hämta alla globala appar för säker åtkomst

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -Filter "tags/Any(x: x eq 'PrivateAccessNonWebApplication') or tags/Any(x: x eq 'NetworkAccessManagedApplication')"
DisplayName         Id                                   AppId                                SignInAudience         ServicePrincipalType
-----------         --                                   -----                                --------------         --------------------
Global secure access app     00001111-aaaa-2222-bbbb-3333cccc4444 33334444-dddd-5555-eeee-6666ffff7777                         Application

Det här exemplet visar hur du hämtar alla globala appar för säker åtkomst.

Exempel 11: Visa en lista över alla program utan användartilldelning

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -All | Where-Object {$_.appRoleAssignmentRequired -ne 'true'}
DisplayName                     Id                                   AppId                                SignInAudience         ServicePrincipalType
-----------                     --                                   -----                                --------------         --------------------
App without user assignment     00001111-aaaa-2222-bbbb-3333cccc4444 33334444-dddd-5555-eeee-6666ffff7777                         Application

Det här exemplet visar hur du hämtar alla program utan användartilldelning.

Exempel 12: Lista all SAML-programinformation

Connect-Entra -Scopes 'Application.Read.All'
$servicePrincipal = Get-EntraServicePrincipal -Filter "PreferredSingleSignOnMode eq 'saml'"
$servicePrincipal | Select-Object Id, DisplayName, AccountEnabled, AppId, PreferredSingleSignOnMode, AppRoleAssignmentRequired, SignInAudience, NotificationEmailAddresses, PreferredTokenSigningKeyEndDateTime, PreferredTokenSigningKeyValid, ReplyUrls,LoginUrl, LogoutUrl | Format-Table -AutoSize
Id                                   DisplayName                           AccountEnabled AppId                                PreferredSingleSignOnMode AppRoleAssignmentRequired SignInAudience NotificationEmailAddresses
--                                   -----------                           -------------- -----                                ------------------------- ------------------------- -------------- --------------
00001111-aaaa-2222-bbbb-3333cccc4444 SAML App                             True            33334444-dddd-5555-eeee-6666ffff7777 saml                              True                    AzureADMyOrg   {admin@Contoso}

Det här exemplet visar hur du hämtar all SAML-programinformation.

Exempel 13: Lista approller för tjänstens huvudnamn

Connect-Entra -Scopes 'Application.Read.All'
$servicePrincipal = Get-EntraServicePrincipal -SearchString 'Contoso Helpdesk Application'
$servicePrincipal.AppRoles | Format-Table -AutoSize
AllowedMemberTypes    Description        DisplayName       Id                                   IsEnabled  Origin       Value
------------------    -----------        -----------       --                                   ---------  ------       -----
{User, Application}   General All        General All       gggggggg-6666-7777-8888-hhhhhhhhhhhh  True       Application  Survey.Read
{Application}         General App Only   General Apponly   hhhhhhhh-7777-8888-9999-iiiiiiiiiiii  True       Application  Task.Write
{User}                General role       General           bbbbbbbb-1111-2222-3333-cccccccccccc  True       Application  General

Det här exemplet visar hur du kan hämta approller för tjänstens huvudnamn.

Exempel 14: Lista program (tjänstens huvudnamn) utanför min klientorganisation

Connect-Entra -Scopes 'Application.Read.All'
$tenantId = Get-EntraContext | Select-Object -ExpandProperty TenantId
$servicePrincipals = Get-EntraServicePrincipal -All -Property AppOwnerOrganizationId, Id, DisplayName, AppId
$externalServicePrincipals = $servicePrincipals | Where-Object { $_.AppOwnerOrganizationId -ne $tenantId }
$externalServicePrincipals | Select-Object DisplayName, Id, AppId, AppOwnerOrganizationId | Format-Table -AutoSize
DisplayName                                             Id                                   AppId                                AppOwnerOrganizationId
-----------                                             --                                   -----                                ----------------------
Azure MFA StrongAuthenticationService                   aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 f8cdef31-a31e-4b4a-93e4-5f571e91255a
M365 Label Analytics                                    bbbbbbbb-1111-2222-3333-cccccccccccc 11112222-bbbb-3333-cccc-4444dddd5555 f8cdef31-a31e-4b4a-93e4-5f571e91255a
PowerApps-Advisor                                       cccccccc-2222-3333-4444-dddddddddddd 22223333-cccc-4444-dddd-5555eeee6666 f8cdef31-a31e-4b4a-93e4-5f571e91255a

Det här exemplet visar hur du kan hämta program (tjänstens huvudnamn) utanför min klientorganisation.

Exempel 15: Hämta tjänstens huvudnamn med användartilldelning krävs

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -AssignmentRequired $true
DisplayName                Id                                   AppId                                SignInAudience      ServicePrincipalType
-----------                --                                   -----                                --------------      --------------------
Restricted App             aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg        Application

Det här exemplet hämtar alla tjänsthuvudnamn där användartilldelning krävs för att få åtkomst till programmet.

Exempel 16: Hämta Företagsappar med applicationtype-parametern

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -ApplicationType EnterpriseApps
DisplayName         Id                                   AppId                                SignInAudience         ServicePrincipalType
-----------         --                                   -----                                --------------         --------------------
Enterprise App1     00001111-aaaa-2222-bbbb-3333cccc4444 33334444-dddd-5555-eeee-6666ffff7777                         Application
Enterprise App2     11112222-bbbb-3333-cccc-4444dddd5555 22223333-cccc-4444-dddd-5555eeee6666 AzureADMultipleOrgs    Application

Det här exemplet visar hur du hämtar alla företagsappar med hjälp av parametern ApplicationType. Giltiga värden är: AppProxyApps, EnterpriseApps, ManagedIdentity, MicrosoftApps.

Exempel 17: Hämta hanterade identiteter

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -ApplicationType ManagedIdentity
DisplayName         Id                                   AppId                                SignInAudience         ServicePrincipalType
-----------         --                                   -----                                --------------         --------------------
MyVM-Identity       00001111-aaaa-2222-bbbb-3333cccc4444 33334444-dddd-5555-eeee-6666ffff7777                         ManagedIdentity

Det här exemplet hämtar alla hanterade identiteter.

Exempel 18: Kombinera AssignmentRequired- och ApplicationType-filter

Connect-Entra -Scopes 'Application.Read.All'
Get-EntraServicePrincipal -AssignmentRequired $true -ApplicationType EnterpriseApps
DisplayName                Id                                   AppId                                SignInAudience      ServicePrincipalType
-----------                --                                   -----                                --------------      --------------------
Secured Enterprise App     aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg        Application

Det här exemplet visar hur du kombinerar parametrarna AssignmentRequired och ApplicationType för att filtrera företagsappar som kräver användartilldelning.

Parametrar

-All

Visa en lista över alla sidor.

Parameteregenskaper

Typ:System.Management.Automation.SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-ApplicationType

Filtrera efter programtyp. Giltiga värden är:

  • AppProxyApps: Programproxyprogram
  • EnterpriseApps: Företagsprogram
  • ManagedIdentity: Huvudnamn för hanterad identitetstjänst
  • MicrosoftApps: Microsoft program från första part

Parameteregenskaper

Typ:System.String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

GetQuery
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False
GetVague
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-AssignmentRequired

Filtrera efter om användartilldelning krävs för att få åtkomst till programmet. När värdet är $truereturnerar endast tjänstens huvudnamn där användartilldelning krävs. När värdet är $falsereturnerar endast tjänstens huvudnamn där användartilldelning inte krävs.

Parameteregenskaper

Typ:System.Boolean
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

GetQuery
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False
GetVague
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Filter

Anger en OData v4.0-filtersats. Den här parametern styr vilka objekt som returneras.

Parameteregenskaper

Typ:System.String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

GetQuery
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Property

Anger egenskaper som ska returneras.

Parameteregenskaper

Typ:

System.String[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:Select

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-SearchString

Anger en söksträng.

Parameteregenskaper

Typ:System.String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

GetVague
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-ServicePrincipalId

Anger ID för ett huvudnamn för tjänsten i Microsoft Entra ID.

Parameteregenskaper

Typ:System.String
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:Objekt-ID

Parameteruppsättningar

GetById
Position:Named
Obligatorisk:True
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Top

Anger det maximala antalet poster som ska returneras.

Parameteregenskaper

Typ:System.Int32
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:Limit

Parameteruppsättningar

GetQuery
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

CommonParameters

Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.