Freigeben über


New-MsolServicePrincipalCredential

Fügen Sie einem Dienstprinzipal einen Anmeldeinformationsschlüssel hinzu.

Syntax

New-MsolServicePrincipalCredential
   -ObjectId <Guid>
   [-Type <ServicePrincipalCredentialType>]
   [-Value <String>]
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-Usage <ServicePrincipalCredentialUsage>]
   [-TenantId <Guid>]
   [<CommonParameters>]
New-MsolServicePrincipalCredential
   -ServicePrincipalName <String>
   [-Type <ServicePrincipalCredentialType>]
   [-Value <String>]
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-Usage <ServicePrincipalCredentialUsage>]
   [-TenantId <Guid>]
   [<CommonParameters>]
New-MsolServicePrincipalCredential
   -AppPrincipalId <Guid>
   [-Type <ServicePrincipalCredentialType>]
   [-Value <String>]
   [-StartDate <DateTime>]
   [-EndDate <DateTime>]
   [-Usage <ServicePrincipalCredentialUsage>]
   [-TenantId <Guid>]
   [<CommonParameters>]

Beschreibung

Das Cmdlet New-MsolServicePrincipalCredential fügt einem Dienstprinzipal neue Anmeldeinformationen hinzu oder fügt Anmeldeinformationsschlüssel für eine Anwendung hinzu oder führt einen Rollroll aus. Der Dienstprinzipal wird identifiziert, indem entweder die Objekt-ID, die App-Prinzipal-ID oder der Dienstprinzipalname (Service Principal Name, SPN) angegeben wird.

Beispiele

Beispiel 1: Hinzufügen vorhandener Anmeldeinformationen zu einem Dienstprinzipal

PS C:\> $Certificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate
PS C:\> $Certificate.Import("C:\myapp.cer")
PS C:\> $BinCert = $Certificate.GetRawCertData()
PS C:\> $CredValue = [System.Convert]::ToBase64String($binCert);
PS C:\> New-MsolServicePrincipalCredential -ServicePrincipalName "MyApp/myApp.com" -Type asymmetric -Value $CredValue -StartDate $Certificate.GetEffectiveDateString() -EndDate $Certificate.GetExpirationDateString()

In diesem Beispiel wird einem vorhandenen Dienstprinzipal ein Anmeldeinformations- oder Schlüsselobjekt hinzugefügt. In diesem Beispiel wird das bereitgestellte base64-codierte öffentliche X509-Zertifikat mit dem Namen myapp.cer dem Dienstprinzipal mithilfe des Dienstprinzipalsnamenwerts MyApp/myApp.com hinzugefügt.

Beispiel 2: Registrieren eines lokalen Exchange Server

PS C:\> New-MsolServicePrincipalCredential -AppPrincipalId  -Type asymmetric -Value $CredValue

Mit diesem Befehl wird eine lokale Exchange Server registriert, damit die Kommunikation zwischen dem Exchange Server und Microsoft Azure Active Directory Diensten wie Office 365 erfolgen kann. Für dieses Beispiel wird angenommen, dass $credValue das Base64-codierte öffentliche X509-Zertifikat enthält, das zur Darstellung des lokalen Exchange-Servers verwendet wird. Die bekannten IDs für Office 365 Server sind:

  • Exchange: 00000002-0000-0ff1-ce00-00000000000
  • SharePoint: 000000003-0000-0ff1-ce00-000000000000
  • Lync: 00000004-0000-0ff1-ce00-000000000000

Parameter

-AppPrincipalId

Gibt die Anwendungs-ID des Dienstprinzipals an, dem die Anmeldeinformationen hinzugefügt werden sollen.

Typ:Guid
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-EndDate

Gibt das effektive Enddatum der Anmeldeinformationsverwendung an. Der Standardwert ist ein Jahr ab heute. Bei Anmeldeinformationen vom asymmetrischen Typ muss dies auf oder vor dem Datum festgelegt werden, an dem das X509-Zertifikat gültig ist. Andernfalls wird für diese Anwendung kein OAuth-Token ausgestellt.

Typ:DateTime
Position:Named
Standardwert:Today + 1 year
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ObjectId

Gibt die eindeutige Objekt-ID des Dienstprinzipals an, dem die Anmeldeinformationen hinzugefügt werden sollen.

Typ:Guid
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ServicePrincipalName

Gibt den Namen des Dienstprinzipals an, dem die Anmeldeinformationen hinzugefügt werden sollen. Ein SPN muss eines der folgenden Formate verwenden:

  • appName
  • appName/hostname
  • eine gültige URL

AppName stellt den Namen der Anwendung dar. Hostname stellt die URI-Autorität für die Anwendung dar.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-StartDate

Gibt das effektive Startdatum der Anmeldeinformationsverwendung an. Der Standardwert ist heute. Für asymmetrische Typanmeldeinformationen muss diese auf oder nach dem Datum festgelegt werden, ab dem das X509-Zertifikat gültig ist. Andernfalls wird für diese Anwendung kein OAuth-Token ausgestellt.

Typ:DateTime
Position:Named
Standardwert:Today
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-TenantId

Gibt die eindeutige ID des Mandanten an, auf dem der Vorgang ausgeführt werden soll. Der Standardwert ist der Mandant des aktuellen Benutzers. Dieser Parameter gilt nur für Partnerbenutzer.

Typ:Guid
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Type

Gibt den Typ der verwendeten Anmeldeinformationen an. Gültige Werte sind:

  • Asymmetrische
  • Symmetrische
  • password

Der Standardwert ist symmetrisch.

Wichtig

Asymmetrische Schlüssel werden empfohlen. Symmetrische Schlüssel sind nicht sicher und werden für Dienstprinzipale deaktiviert, die auf Microsoft-Erstanbieteranwendungen zugreifen.

Typ:ServicePrincipalCredentialType
Position:Named
Standardwert:Symmetric
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Usage

Gibt die Verwendung des Anmeldeinformationsschlüssels an. Die Verwendung des Anmeldeinformationsschlüssels kann entweder so festgelegt werden, dass ein Token signiert oder überprüft wird. Der Standardwert ist verify. Das Signieren ist NUR für symmetrische Schlüssel zulässig. Überprüfen, ob für alle Schlüsseltypen zulässig ist.

Ein Anmeldeinformationsschlüssel ist vom Azure Active Directory-Verzeichnis erforderlich, um zu überprüfen, ob das Anforderungstoken von Ihrer Anwendung gesendet wurde, die durch diesen Dienstprinzipal dargestellt wird.

Ihre Anwendung kann optional erfordern, dass Azure Active Directory-Dienste Token für Ihre Anwendung ausstellen, die mit Ihrem Signaturschlüssel signiert sind, anstatt mit dem asymmetrischen öffentlichen Schlüssel, der Microsoft Azure Active Directory identifiziert. Geben Sie in diesem Fall einen Anmeldeinformationsschlüssel für Ihren Dienstprinzipal an.

Typ:ServicePrincipalCredentialUsage
Position:Named
Standardwert:Verify
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Value

Gibt den Wert der Anmeldeinformationen an.

  • Wenn der Anmeldeinformationstyp asymmetrisch ist, stellt der Wert das Basis-64-codierte Zertifikat dar.
  • Wenn der Anmeldeinformationstyp symmetrisch ist und der Value-Parameter nicht angegeben ist, wird automatisch ein 256-Bit-AES-Schlüssel erstellt, der nach der Erstellung für ein Jahr gültig ist.
  • Wenn der Anmeldeinformationstyp kennwort ist, geben Sie Wert an. Es sollte nicht Base64-codiert sein.
Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False