New-EntraServicePrincipal

Cria uma entidade de serviço.

Sintaxe

Default (Default)

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>]

Description

Crie uma nova entidade de serviço.

Para aplicativos multilocatários, o usuário chamador também deve estar em pelo menos uma das seguintes funções de Microsoft Entra:

  • Administrador de Aplicativos
  • Administrador de Aplicativos na Nuvem

Para aplicativos de locatário único em que o usuário de chamada é um usuário não administrador, mas é o proprietário do aplicativo de suporte, o usuário deve ter a função de Desenvolvedor de Aplicativos.

Exemplos

Exemplo 1: criar uma nova entidade de serviço 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

Este exemplo demonstra como criar uma nova entidade de serviço no Microsoft Entra ID. Você pode usar o comando Get-EntraApplication para obter a ID do aplicativo de aplicativo.

A marca -Tags {WindowsAzureActiveDirectoryIntegratedApp} é usada para que essa entidade de serviço apareça na lista de Aplicativos Integrados no Portal de Administração.

  • -AccountEnabled o parâmetro especifica true se a conta da entidade de serviço estiver habilitada, caso contrário, false.
  • -AppId o parâmetro especifica o identificador exclusivo para o aplicativo associado (sua propriedade appId).
  • -DisplayName o parâmetro especifica o nome de exibição da entidade de serviço.
  • -AppRoleAssignmentRequired o parâmetro indica se uma atribuição de função de aplicativo é necessária.

Exemplo 2: criar uma nova entidade de serviço 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

Este exemplo demonstra como criar uma nova entidade de serviço no Microsoft Entra ID. Você pode usar o comando Get-EntraApplication para obter a ID do aplicativo de aplicativo.

  • -AppId o parâmetro especifica o identificador exclusivo para o aplicativo associado (sua propriedade appId).
  • -Homepage o parâmetro especifica a home page ou a página de aterrissagem do aplicativo.
  • -LogoutUrl o parâmetro especifica a URL de logoff.
  • -ReplyUrls O parâmetro especifica as URLs para as quais os tokens de usuário são enviados para entrar com o aplicativo associado.

Exemplo 3: Criar uma nova entidade de serviço por 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

Este exemplo demonstra como criar uma nova entidade de serviço no Microsoft Entra ID. Você pode usar o comando Get-EntraApplication para obter a ID do aplicativo de aplicativo.

  • -AppId o parâmetro especifica o identificador exclusivo para o aplicativo associado (sua propriedade appId).
  • -KeyCredentials o parâmetro especifica a coleção de credenciais de chave associadas à entidade de serviço.

Exemplo 4: Criar uma nova entidade de serviço por 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

Este exemplo demonstra como criar uma nova entidade de serviço no Microsoft Entra ID. Você pode usar o comando Get-EntraApplication para obter a ID do aplicativo de aplicativo.

  • -AppId o parâmetro especifica o identificador exclusivo para o aplicativo associado (sua propriedade appId).
  • -AlternativeNames O parâmetro especifica os nomes alternativos para essa entidade de serviço.
  • -ServicePrincipalType o parâmetro especifica o tipo da entidade de serviço.
  • -ServicePrincipalNames o parâmetro especifica uma matriz de nomes de entidade de serviço.

Parâmetros

-AccountEnabled

Verdadeiro se a conta do principal de serviço estiver ativada; caso contrário, falso.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-AlternativeNames

Os nomes alternativos para essa entidade de serviço.

Propriedades do parâmetro

Tipo:

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

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-AppId

O identificador exclusivo do aplicativo associado (sua propriedade appId).

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-AppRoleAssignmentRequired

Indica se é necessária uma atribuição de função de aplicação.

Propriedades do parâmetro

Tipo:System.Boolean
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-DisplayName

Especifica o nome de exibição da entidade de serviço.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Homepage

Página inicial ou página de aterrissagem do aplicativo.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-KeyCredentials

A coleção de credenciais principais associada à entidade de serviço.

Propriedades do parâmetro

Tipo:

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

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-LogoutUrl

Especifica a URL de logoff.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-PasswordCredentials

A coleção de credenciais de senha associada ao aplicativo.

Propriedades do parâmetro

Tipo:

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

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ReplyUrls

As URLs às quais os tokens de usuário são enviados para entrar com aplicativo associado ou os URIs de redirecionamento aos quais os códigos de autorização do OAuth 2.0 e tokens de acesso são enviados para o aplicativo associado.

Propriedades do parâmetro

Tipo:

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

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ServicePrincipalNames

Especifica uma matriz de nomes principais de serviço. Com base na coleção identifierURIs, além da propriedade appId da aplicação, estes URIs são utilizados para referenciar o principal de serviço de uma aplicação. Um cliente usa ServicePrincipalNames para:

  • preencha requiredResourceAccess por meio de "Permissões para outros aplicativos" no Azure portal clássico.
  • Especifique um URI de recurso para adquirir um token de acesso, que é o URI retornado na declaração.

Propriedades do parâmetro

Tipo:

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

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ServicePrincipalType

O tipo do principal de serviço.

Propriedades do parâmetro

Tipo:System.String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Tags

Marcas vinculadas a essa entidade de serviço.

Observe que, se você pretende que essa entidade de serviço apareça na lista Todos os Aplicativos no portal de administração, você precisará definir esse valor como {WindowsAzureActiveDirectoryIntegratedApp}.

Propriedades do parâmetro

Tipo:

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

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes: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.