New-MsolServicePrincipal

Agrega una entidad de servicio a 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

El cmdlet New-MsolServicePrincipal crea una entidad de servicio que se puede usar para representar una aplicación de línea de negocio (LOB) o un servidor local, como Microsoft Exchange, SharePoint o Lync en Microsoft Azure Active Directory como objetos de entidad de servicio. Agregar una nueva aplicación como una entidad de seguridad de servicio permite a esa aplicación autenticarse en otros servicios, como Microsoft Office 365.

Ejemplos

Ejemplo 1: Creación de una entidad de servicio

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

Este comando crea una entidad de servicio. En este ejemplo, la entidad de servicio se crea con el nombre de entidad de seguridad de servicio MyApp/myApp.com, el nombre para mostrar Mi aplicación y usará una clave simétrica de 256 bits generada automáticamente para comprobar la aplicación. Esta clave será válida durante un año a partir de hoy.

Ejemplo 2: Creación de una entidad de servicio que usa un 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

En este ejemplo se crea una entidad de servicio. En este ejemplo, la entidad de servicio se crea con el nombre de entidad de seguridad de servicio MyApp/myApp.com, el nombre para mostrar Mi aplicación y usa el certificado X509 proporcionado myapp.cer que está configurado con una clave asimétrica codificada en base 64.

Parámetros

-AccountEnabled

Especifica si la cuenta debe habilitarse. El valor predeterminado es $True.

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

-Addresses

Especifica las direcciones usadas por la aplicación. Use el cmdlet New-MsolServicePrincipalAddresses para ayudar a crear el objeto de lista Direcciones.

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

-AppPrincipalId

Especifica el identificador de aplicación único para una entidad de servicio en un inquilino. Una vez creada, esta propiedad no se puede cambiar. Si no especifica este parámetro, se genera el identificador de la aplicación.

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

-DisplayName

Especifica un nombre para mostrar de la entidad de servicio.

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

-EndDate

Especifica la fecha de finalización efectiva del uso de credenciales. El valor de fecha de finalización predeterminado es un año de hoy.

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

-ServicePrincipalNames

Lista de nombres de entidad de seguridad de servicio (SPN) asociados a la entidad de servicio.

Un SPN debe ser único por inquilino de empresa y una aplicación lo usa para identificarse de forma única. De forma predeterminada, la entidad de servicio AppID siempre se agrega como un SPN. Un SPN debe usar uno de los siguientes formatos:

  • appName
  • appName/hostname
  • una dirección URL válida

AppName representa el nombre de la aplicación y el nombre de host representa la entidad de URI de la aplicación. Cuando la entidad de servicio representa un WS-Federation usuario de confianza, un SPN se puede establecer en una dirección URL que se trataría como el 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 la fecha de inicio efectiva del uso de credenciales. El valor de fecha de inicio predeterminado es hoy.

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

-TenantId

Especifica el identificador único del inquilino en el que se va a realizar la operación. El valor predeterminado es el inquilino del usuario actual. Este parámetro solo se aplica a los usuarios asociados.

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

-Type

Especifica el tipo de credencial que se va a usar. Los valores válidos son: asimétrico, simétrico y contraseña.

  • Si es asimétrico, el parámetro Value debe establecerse en la parte pública de un certificado X509 codificado en base 64.
  • Si es simétrico, se generará una clave simétrica AES de 256 bits si no se establece Value .
  • Si la contraseña, se debe especificar el parámetro Value y no debe codificarse en base 64.

El valor predeterminado es "simétrico".

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

-Usage

Especifica el uso de la clave de credencial. El uso de la clave de credencial puede establecerse para firmar o comprobar un token. La configuración predeterminada es verify.

Solo se permite firmar para claves simétricas. Compruebe que se permite para todos los tipos de clave.

Azure Active Directory requiere una clave de credencial de comprobación para comprobar que la aplicación envió el token de solicitud, representado por esta entidad de servicio. La aplicación puede requerir opcionalmente que Azure Active Directory emita tokens en la aplicación firmados mediante la clave de firma en lugar de la clave pública asimétrica que identifica Azure Active Directory. En este caso, proporcione una clave de credencial de firma para la entidad de servicio.

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

-Value

Especifica el valor de la credencial.

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

Salidas

Microsoft.Online.Administration.ServicePrincipalExtended

Este cmdlet devuelve la entidad de servicio que agregó. Esto incluye la siguiente información:

  • Idobjeto. Identificador único de la entidad de servicio.
  • AppPrincipalId. Identificador de aplicación de la entidad de servicio.
  • Displayname. Nombre descriptivo de la entidad de servicio.
  • ServicePrincipalName. Lista de nombres de entidad de seguridad de servicio (SPN) asociados a la entidad de servicio.
  • TrustedForDelegation. Valor que indica si se permite la entidad de servicio para la delegación.
  • AccountEnabled. Valor que indica si la cuenta está habilitada.

También recupera la lista de credenciales que se agregaron. Cada objeto de credencial contiene la siguiente información:

  • Type (Tipo). Tipo de credencial de entidad de servicio (Asimétrica/Simétrica/Otro).
  • Value. Valor de la credencial. Si el tipo de credencial es certificado, representa el certificado codificado en base 64. Si el tipo de credencial es simétrico, representa una clave AES.
  • KeyGroupId. Identificador reservado para uso interno.
  • KeyId. Identificador único de la clave.
  • StartDate. Fecha de inicio efectiva del uso de credenciales.
  • Enddate. Fecha de finalización efectiva del uso de credenciales.
  • Uso. Especifica si la credencial se usa para firmar o comprobar un token.