Freigeben über


Benutzeroberflächenelement Microsoft.Common.ServicePrincipalSelector

Ein Steuerelement, mit dem Benutzer einen vorhandenen Dienstprinzipal auswählen oder eine neue Anwendung registrieren können. Wenn Sie Neu erstellen auswählen, durchlaufen Sie die Schritte zum Registrieren einer neuen Anwendung. Wenn Sie eine vorhandene Anwendung auswählen, stellt das Steuerelement ein Textfeld zum Eingeben eines Kennworts oder Zertifikatfingerabdrucks bereit.

Benutzeroberflächenbeispiele

Sie können eine Standardanwendung verwenden, eine neue Anwendung erstellen oder eine vorhandene Anwendung verwenden.

Verwenden der Standardanwendung oder Erstellen einer neuen Anwendung

Die Standardansicht wird durch die Werte in der defaultValue-Eigenschaft festgelegt, und der Dienstprinzipaltyp ist auf Neu erstellen festgelegt. Wenn die principalId-Eigenschaft einen gültigen Globally Unique Identifier (GUID) enthält, sucht das Steuerelement nach der objectId der Anwendung. Der Standardwert ist gültig, wenn der Benutzer keine Auswahl im Steuerelement trifft.

Wenn Sie eine neue Anwendung registrieren möchten, wählen Sie Auswahl ändern aus. Das Dialogfeld Anwendung registrieren wird angezeigt. Geben Sie einen Namen und unterstützten Kontotyp ein, und wählen Sie die Schaltfläche Registrieren aus.

Screenshot: Anfängliche Ansicht von „Microsoft.Common.ServicePrincipalSelector“ mit Standardanwendung oder der Option für die Neuerstellung

Nachdem Sie eine neue Anwendung registriert haben, verwenden Sie Authentifizierungstyp, um ein Kennwort oder einen Zertifikatfingerabdruck einzugeben.

Screenshot: Authentifizierungsoptionen für „Microsoft.Common.ServicePrincipalSelector“ nach dem Registrieren einer neuen Anwendung

Verwenden einer vorhandenen Anwendung

Um eine vorhandene Anwendung zu verwenden, wählen Sie Vorhandene auswählen und dann Auswahl treffen aus. Verwenden Sie das Dialogfeld Anwendung auswählen, um nach dem Namen der Anwendung zu suchen. Wählen Sie in den Ergebnissen die Anwendung und dann die Schaltfläche Auswählen aus. Nachdem Sie eine Anwendung ausgewählt haben, wird Authentifizierungstyp im Steuerelement angezeigt. Dort können Sie ein Kennwort oder einen Zertifikatfingerabdruck eingeben.

Screenshot: „Microsoft.Common.ServicePrincipalSelector“ mit Option zum Auswählen einer vorhandenen Anwendung und Authentifizierungstyp

Schema

{
  "name": "ServicePrincipal",
  "type": "Microsoft.Common.ServicePrincipalSelector",
  "label": {
    "password": "Password",
    "certificateThumbprint": "Certificate thumbprint",
    "authenticationType": "Authentication Type",
    "sectionHeader": "Service Principal"
  },
  "toolTip": {
    "password": "Password",
    "certificateThumbprint": "Certificate thumbprint",
    "authenticationType": "Authentication Type"
  },
  "defaultValue": {
    "principalId": "<default guid>",
    "name": "(New) default App Id"
  },
  "constraints": {
    "required": true,
    "regex": "^[a-zA-Z0-9]{8,}$",
    "validationMessage": "Password must be at least 8 characters long, contain only numbers and letters"
  },
  "options": {
    "hideCertificate": false
  },
  "visible": true
}

Bemerkungen

  • Die erforderlichen Eigenschaften lauten wie folgt:

    • name
    • type
    • label
    • defaultValue: Gibt die Standardwerte principalId und name an.
  • Die optionalen Eigenschaften lauten wie folgt:

    • toolTip: Fügt jeder Bezeichnung eine QuickInfo infoBalloon an.
    • visible: Ausblenden oder Anzeigen des Steuerelements.
    • options: Gibt an, ob die Zertifikatsfingerabdruck-Option zur Verfügung gestellt werden soll.
    • constraints: RegEx-Einschränkungen für die Kennwortüberprüfung.

Beispiel

Der folgende Code ist ein Beispiel für das Microsoft.Common.ServicePrincipalSelector Steuerelement. Mit der defaultValue-Eigenschaft wird principalId als Platzhalter für eine standardmäßige Anwendungsbezeichner-GUID auf <default guid> festgelegt.

{
  "$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
  "handler": "Microsoft.Azure.CreateUIDef",
  "version": "0.1.2-preview",
  "parameters": {
    "basics": [],
    "steps": [
      {
        "name": "SPNcontrol",
        "label": "SPNcontrol",
        "elements": [
          {
            "name": "ServicePrincipal",
            "type": "Microsoft.Common.ServicePrincipalSelector",
            "label": {
              "password": "Password",
              "certificateThumbprint": "Certificate thumbprint",
              "authenticationType": "Authentication Type",
              "sectionHeader": "Service Principal"
            },
            "toolTip": {
              "password": "Password",
              "certificateThumbprint": "Certificate thumbprint",
              "authenticationType": "Authentication Type"
            },
            "defaultValue": {
              "principalId": "<default guid>",
              "name": "(New) default App Id"
            },
            "constraints": {
              "required": true,
              "regex": "^[a-zA-Z0-9]{8,}$",
              "validationMessage": "Password must be at least 8 characters long, contain only numbers and letters"
            },
            "options": {
              "hideCertificate": false
            },
            "visible": true
          }
        ]
      }
    ],
    "outputs": {
      "appId": "[steps('SPNcontrol').ServicePrincipal.appId]",
      "objectId": "[steps('SPNcontrol').ServicePrincipal.objectId]",
      "password": "[steps('SPNcontrol').ServicePrincipal.password]",
      "certificateThumbprint": "[steps('SPNcontrol').ServicePrincipal.certificateThumbprint]",
      "newOrExisting": "[steps('SPNcontrol').ServicePrincipal.newOrExisting]",
      "authenticationType": "[steps('SPNcontrol').ServicePrincipal.authenticationType]"
    }
  }
}

Beispielausgabe

Dies appId ist die ID der Anwendungsregistrierung, die Sie ausgewählt oder erstellt haben. Die objectId ist ein Array von Objekt-IDs für die Dienstprinzipale, die für die ausgewählte Anwendungsregistrierung konfiguriert sind.

Wenn im Steuerelement keine Auswahl getroffen wird, lautet der newOrExisting-Eigenschaftswert new:

{
  "appId": {
    "value": "<default guid>"
  },
  "objectId": {
    "value": ["<default guid>"]
  },
  "password": {
    "value": "<password>"
  },
  "certificateThumbprint": {
    "value": ""
  },
  "newOrExisting": {
    "value": "new"
  },
  "authenticationType": {
    "value": "password"
  }
}

Wenn Neu erstellen oder eine vorhandene Anwendung im Steuerelement ausgewählt wird, lautet der newOrExisting-Eigenschaftswert existing:

{
  "appId": {
    "value": "<guid>"
  },
  "objectId": {
    "value": ["<guid>"]
  },
  "password": {
    "value": "<password>"
  },
  "certificateThumbprint": {
    "value": ""
  },
  "newOrExisting": {
    "value": "existing"
  },
  "authenticationType": {
    "value": "password"
  }
}

Nächste Schritte