New-EntraServicePrincipal

Crea un'entità servizio.

Sintassi

Default (Impostazione predefinita)

New-EntraServicePrincipal

    -AppId <String>
    [-KeyCredentials <System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.KeyCredential]>]
    [-Homepage <String>]
    [-LogoutUrl <String>]
    [-ServicePrincipalType <String>]
    [-AlternativeNames <System.Collections.Generic.List`1[System.String]>]
    [-PasswordCredentials <System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.PasswordCredential]>]
    [-Tags <System.Collections.Generic.List`1[System.String]>]
    [-AccountEnabled <String>]
    [-ServicePrincipalNames <System.Collections.Generic.List`1[System.String]>]
    [-AppRoleAssignmentRequired <Boolean>]
    [-DisplayName <String>]
    [-ReplyUrls <System.Collections.Generic.List`1[System.String]>]
    [<CommonParameters>]

Descrizione

Creare una nuova entità servizio.

Per le app multi-tenant, l'utente chiamante deve trovarsi anche in almeno uno dei ruoli Microsoft Entra seguenti:

  • Amministratore di applicazioni
  • Amministratore di applicazioni cloud

Per le app a tenant singolo in cui l'utente chiamante è un utente non amministratore, ma è il proprietario dell'applicazione di backup, l'utente deve avere il ruolo Sviluppatore applicazione.

Esempio

Esempio 1: Creare una nuova entità servizio usando DisplayName, AccountEnabled, Tags e AppRoleAssignmentRequired

Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"
$params = @{
    AccountEnabled = $true
    AppId = $application.AppId
    AppRoleAssignmentRequired = $true
    DisplayName = $application.DisplayName
    Tags = {WindowsAzureActiveDirectoryIntegratedApp}
}
New-EntraServicePrincipal @params
DisplayName Id                                   AppId                                SignInAudience ServicePrincipalType
----------- --                                   -----                                -------------- --------------------
Helpdesk Application    bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg   Application

Questo esempio illustra come creare una nuova entità servizio in Microsoft Entra ID. È possibile usare il comando Get-EntraApplication per ottenere l'ID app dell'applicazione.

Il tag -Tags {WindowsAzureActiveDirectoryIntegratedApp} viene usato per visualizzare questa entità servizio nell'elenco delle applicazioni integrate nel portale di amministrazione.

  • -AccountEnabled parametro specifica true se l'account dell'entità servizio è abilitato; in caso contrario, false.
  • -AppId parametro specifica l'identificatore univoco per l'applicazione associata (proprietà appId).
  • -DisplayName parametro specifica il nome visualizzato dell'entità servizio.
  • -AppRoleAssignmentRequired parametro indica se è necessaria un'assegnazione di ruolo dell'applicazione.

Esempio 2: Creare una nuova entità servizio usando homepage, logoutUrl e ReplyUrls

Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"
$params = @{
    AppId = $application.AppId
    Homepage = 'https://localhost/home'
    LogoutUrl = 'htpp://localhost/logout'
    ReplyUrls = 'https://localhost/redirect'
}
New-EntraServicePrincipal @params
DisplayName Id                                   AppId                                SignInAudience ServicePrincipalType
----------- --                                   -----                                -------------- --------------------
Helpdesk Application    bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg   Application

Questo esempio illustra come creare una nuova entità servizio in Microsoft Entra ID. È possibile usare il comando Get-EntraApplication per ottenere l'ID app dell'applicazione.

  • -AppId parametro specifica l'identificatore univoco per l'applicazione associata (proprietà appId).
  • -Homepage parametro specifica la home page o la pagina di destinazione dell'applicazione.
  • -LogoutUrl parametro specifica l'URL di disconnessione.
  • -ReplyUrls parametro specifica gli URL a cui vengono inviati i token utente per l'accesso con l'applicazione associata.

Esempio 3: Creare una nuova entità servizio da KeyCredentials

Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$creds = New-Object Microsoft.Open.AzureAD.Model.KeyCredential
$creds.CustomKeyIdentifier = [System.Text.Encoding]::UTF8.GetBytes('Test')
$startdate = Get-Date -Year 2023 -Month 10 -Day 23
$creds.StartDate = $startdate
$creds.Type = 'Symmetric'
$creds.Usage = 'Sign'
$creds.Value = [System.Text.Encoding]::UTF8.GetBytes('strong-cred-value')
$creds.EndDate = Get-Date -Year 2024 -Month 10 -Day 23
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"

New-EntraServicePrincipal -AppId $application.AppId -KeyCredentials $creds
DisplayName Id                                   AppId                                SignInAudience ServicePrincipalType
----------- --                                   -----                                -------------- --------------------
Helpdesk Application    bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg   Application

Questo esempio illustra come creare una nuova entità servizio in Microsoft Entra ID. È possibile usare il comando Get-EntraApplication per ottenere l'ID app dell'applicazione.

  • -AppId parametro specifica l'identificatore univoco per l'applicazione associata (proprietà appId).
  • -KeyCredentials parametro specifica la raccolta di credenziali della chiave associate all'entità servizio.

Esempio 4: Creare una nuova entità servizio da AlternativeNames, ServicePrincipalType e ServicePrincipalName

Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"
New-EntraServicePrincipal -AppId $application.AppId -AlternativeNames 'sktest2' -ServicePrincipalType 'Application' -ServicePrincipalNames $application.AppId
DisplayName Id                                   AppId                                SignInAudience                     ServicePrincipalType
----------- --                                   -----                                --------------                     --------------------
Helpdesk Application   bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADandPersonalMicrosoftAccount Application

Questo esempio illustra come creare una nuova entità servizio in Microsoft Entra ID. È possibile usare il comando Get-EntraApplication per ottenere l'ID app dell'applicazione.

  • -AppId parametro specifica l'identificatore univoco per l'applicazione associata (proprietà appId).
  • -AlternativeNames parametro specifica i nomi alternativi per questa entità servizio.
  • -ServicePrincipalType parametro specifica il tipo dell'entità servizio.
  • -ServicePrincipalNames parametro specifica una matrice di nomi di entità servizio.

Parametri

-AccountEnabled

True se l'account dell'entità servizio è abilitato; in caso contrario, false.

Proprietà dei parametri

Tipo:System.String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-AlternativeNames

Nomi alternativi per questa entità servizio.

Proprietà dei parametri

Tipo:

System.Collections.Generic.List`1[System.String]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-AppId

Identificatore univoco per l'applicazione associata (proprietà appId).

Proprietà dei parametri

Tipo:System.String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-AppRoleAssignmentRequired

Indica se è necessaria un'assegnazione di ruolo dell'applicazione.

Proprietà dei parametri

Tipo:System.Boolean
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-DisplayName

Specifica il nome visualizzato dell'entità servizio.

Proprietà dei parametri

Tipo:System.String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Homepage

Pagina iniziale o pagina di destinazione dell'applicazione.

Proprietà dei parametri

Tipo:System.String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-KeyCredentials

Raccolta di credenziali della chiave associate all'entità servizio.

Proprietà dei parametri

Tipo:

System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.KeyCredential]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-LogoutUrl

Specifica l'URL di disconnessione.

Proprietà dei parametri

Tipo:System.String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-PasswordCredentials

Raccolta di credenziali della password associate all'applicazione.

Proprietà dei parametri

Tipo:

System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.PasswordCredential]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-ReplyUrls

Gli URL a cui vengono inviati i token utente per l'accesso con l'applicazione associata o gli URI di reindirizzamento a cui vengono inviati i codici di autorizzazione e i token di accesso OAuth 2.0 per l'applicazione associata.

Proprietà dei parametri

Tipo:

System.Collections.Generic.List`1[System.String]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-ServicePrincipalNames

Specifica una matrice di nomi di entità servizio. In base alla raccolta identifierURIs, oltre alla proprietà appId dell'applicazione, questi URI vengono usati per fare riferimento all'entità servizio di un'applicazione. Un client usa ServicePrincipalNames per:

  • popolare requiredResourceAccess, tramite "Autorizzazioni per altre applicazioni" nel portale di Azure classico.
  • Specificare un URI della risorsa per acquisire un token di accesso, ovvero l'URI restituito nell'attestazione.

Proprietà dei parametri

Tipo:

System.Collections.Generic.List`1[System.String]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-ServicePrincipalType

Tipo dell'entità servizio.

Proprietà dei parametri

Tipo:System.String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Tags

Tag collegati a questa entità servizio.

Si noti che se si prevede che questa entità servizio venga visualizzata nell'elenco Tutte le applicazioni nel portale di amministrazione, è necessario impostare questo valore su {WindowsAzureActiveDirectoryIntegratedApp}.

Proprietà dei parametri

Tipo:

System.Collections.Generic.List`1[System.String]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.