Share via


New-MsolServicePrincipal

Adiciona uma entidade de serviço ao Azure Active Directory.

Syntax

New-MsolServicePrincipal
   [-ServicePrincipalNames <String[]>]
   [-AppPrincipalId <Guid>]
   -DisplayName <String>
   [-AccountEnabled <Boolean>]
   [-Addresses <RedirectUri[]>]
   [-Type <ServicePrincipalCredentialType>]
   [-Value <String>]
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-Usage <ServicePrincipalCredentialUsage>]
   [-TenantId <Guid>]
   [<CommonParameters>]

Description

O cmdlet New-MsolServicePrincipal cria uma entidade de serviço que pode ser usada para representar um aplicativo LOB (Linha de Negócios) ou um servidor local, como Microsoft Exchange, SharePoint ou Lync em Microsoft Azure Active Directory como objetos de entidade de serviço. O acréscimo de um novo aplicativo como um objeto de serviço permite que o aplicativo autentique para outros serviços, como o Microsoft Office 365.

Exemplos

Exemplo 1: Criar uma entidade de serviço

PS C:\> New-MsolServicePrincipal -ServicePrincipalNames @("MyApp/myApp.com") -DisplayName "My Application"

Esse comando cria uma entidade de serviço. Neste exemplo, a entidade de serviço é criada com o nome da entidade de serviço MyApp/myApp.com, o nome de exibição Meu Aplicativo e usará uma chave simétrica de 256 bits gerada automaticamente para verificar o aplicativo. Esta chave será válida para um ano a partir de hoje.

Exemplo 2: Criar uma entidade de serviço que usa um certificado X509

PS C:\> $cer = New-Object System.Security.Cryptography.X509Certificates.X509Certificate
PS C:\> $cer.Import("C:\temp\myapp.cer")
PS C:\> $binCert = $cer.GetRawCertData()
PS C:\> $credValue = [System.Convert]::ToBase64String($binCert);
PS C:\> New-MsolServicePrincipal -ServicePrincipalNames @("MyApp/myApp.com") -DisplayName "My Application" -Type asymmetric -Value $credValue

Este exemplo cria uma entidade de serviço. Neste exemplo, a entidade de serviço é criada com o nome da entidade de serviço MyApp/myApp.com, o nome de exibição Meu Aplicativo e usa o certificado X509 myapp.cer fornecido configurado com uma chave assimétrica codificada em base 64.

Parâmetros

-AccountEnabled

Especifica se a conta precisa ser habilitada. O valor padrão é $True.

Type:Boolean
Position:Named
Default value:True
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Addresses

Especifica os endereços usados pelo aplicativo. Use o cmdlet New-MsolServicePrincipalAddresses para ajudar a criar o objeto de lista Addresses.

Type:RedirectUri[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-AppPrincipalId

Especifica a ID de aplicativo exclusiva para uma entidade de serviço em um locatário. Depois de criada, essa propriedade não pode ser alterada. Se você não especificar esse parâmetro, a ID do aplicativo será gerada.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DisplayName

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

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-EndDate

Especifica a data de término efetiva do uso da credencial. O valor da data de término padrão é de um ano a partir de hoje.

Type:DateTime
Position:Named
Default value:Today + 1 year
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ServicePrincipalNames

Uma lista de SPNs (nomes de entidade de serviço) associados à entidade de serviço.

Um SPN deve ser exclusivo por locatário da empresa e é usado por um aplicativo para se identificar exclusivamente. Por padrão, o AppID da entidade de serviço sempre é adicionado como um SPN. Um SPN deve usar um dos seguintes formatos:

  • appName
  • appName/hostname
  • uma URL válida

AppName representa o nome do aplicativo e o nome do host representa a autoridade de URI do aplicativo. Quando a entidade de serviço representa uma WS-Federation terceira parte confiável, um SPN pode ser definido como uma URL que seria tratada como o parâmetro WS-Federation wtrealm.

Type:String[]
Position:Named
Default value:AppId of the service principal
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-StartDate

Especifica a data de início efetiva do uso da credencial. O valor da data de início padrão é hoje.

Type:DateTime
Position:Named
Default value:Today
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-TenantId

Especifica a ID exclusiva do locatário no qual executar a operação. O valor padrão é o locatário do usuário atual. Esse parâmetro se aplica somente a usuários parceiros.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Type

Especifica o tipo de credencial a ser usada. Os valores válidos são: assimétrico, simétrico e senha.

  • Se assimétrico, o parâmetro Valor deve ser definido como a parte pública de um certificado X509 codificado em base 64.
  • Se simétrica, uma chave simétrica AES de 256 bits será gerada se Valor não estiver definido.
  • Se a senha, o parâmetro Value deve ser especificado e não deve ser codificado em base 64.

A configuração padrão é "simétrica".

Type:ServicePrincipalCredentialType
Position:Named
Default value:Symmetric
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Usage

Especifica o uso da chave de credencial. O uso da chave de credencial pode ser definido para assinar ou verificar um token. A configuração padrão é verificar.

O sinal é permitido SOMENTE para chaves simétricas. Verifique se é permitido para todos os tipos de chave.

Uma chave de credencial de verificação é exigida pelo Azure Active Directory para verificar se o token de solicitação foi enviado pelo aplicativo, representado por essa entidade de serviço. Opcionalmente, seu aplicativo pode exigir que o Azure Active Directory emita tokens para seu aplicativo assinados usando sua chave de assinatura em vez da chave pública assimétrica que identifica o Azure Active Directory. Nesse caso, forneça uma chave de credencial de sinal para sua entidade de serviço.

Type:ServicePrincipalCredentialUsage
Position:Named
Default value:Verify
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Value

Especifica o valor da credencial.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Saídas

Microsoft.Online.Administration.ServicePrincipalExtended

Esse cmdlet retorna a entidade de serviço que ele adicionou. Isso inclui as seguintes informações:

  • Objectid. O identificador exclusivo da entidade de serviço.
  • AppPrincipalId. O identificador de aplicativo da entidade de serviço.
  • DisplayName. O nome amigável da entidade de serviço.
  • Serviceprincipalname. A lista de SPNs (nomes de entidade de serviço) associados à entidade de serviço.
  • TrustedForDelegation. O valor que indica se a entidade de serviço tem permissão para delegação.
  • AccountEnabled. O valor que indica se a conta está habilitada.

Ele também recupera a lista de credenciais que foram adicionadas. Cada objeto de credencial contém as seguintes informações:

  • Digite. O tipo de credencial da entidade de serviço (Assimétrica/Simétrica/Outra).
  • Value. O valor da credencial. Se o tipo de credencial for certificado, este representa o certificado codificado em base 64. Se o tipo de credencial for simétrico, ele representará uma chave AES.
  • KeyGroupId. O identificador reservado para uso interno.
  • KeyId. O identificador exclusivo da chave.
  • Startdate. A data de início efetiva do uso da credencial.
  • Enddate. A data de término efetiva do uso da credencial.
  • Uso. Especifica se a credencial é usada para assinar ou verificar um token.