Partager via


Élément d’interface utilisateur Microsoft.Common.ServicePrincipalSelector

Contrôle qui permet aux utilisateurs de sélectionner un principal de service existant ou d’inscrire une nouvelle application. Quand vous sélectionnez Créer nouveau, vous suivez les étapes pour inscrire une nouvelle application. Lorsque vous sélectionnez une application existante, le contrôle fournit une zone de texte pour entrer un mot de passe ou une empreinte de certificat.

Exemples d’interface utilisateur

Vous pouvez utiliser une application par défaut, créer une nouvelle application ou utiliser une application existante.

Utiliser une application par défaut ou en créer une nouvelle

La vue par défaut est déterminée par les valeurs de la propriété defaultValue et le Type de principal du service est défini sur Créer nouveau. Si la propriété principalId contient un identificateur global unique (GUID) valide, le contrôle recherche le objectId de l’application. La valeur par défaut s’applique si l’utilisateur n’effectue pas de sélection dans le contrôle.

Si vous voulez inscrire une nouvelle application, sélectionnez Modifier la sélection : la boîte de dialogue Inscrire une application est alors affichée. Entrez le Nom et le Type de compte pris en charge, puis sélectionnez le bouton Inscrire.

Capture d'écran de la vue initiale de Microsoft.Common.ServicePrincipalSelector avec l'application par défaut ou créer une nouvelle option.

Une fois que vous avez inscrit une nouvelle application, utilisez le Type d’authentification pour entrer un mot de passe ou une empreinte numérique de certificat.

Capture d'écran des options d'authentification Microsoft.Common.ServicePrincipalSelector après l'enregistrement d'une nouvelle application.

Utiliser une application existante

Pour utiliser une application existante, choisissez Sélectionner, puis sélectionnez Effectuer une sélection. Utilisez la boîte de dialogue Sélectionner une application pour rechercher le nom de l’application. Dans les résultats, sélectionnez l’application et cliquez sur le bouton Sélectionner. Une fois que vous avez sélectionné une application, le contrôle affiche le Type d’authentification pour vous permettre d’entrer un mot de passe ou une empreinte numérique de certificat.

Capture d'écran de Microsoft.Common.ServicePrincipalSelector avec l'option de sélection d'application existante et le type d'authentification affichés.

schéma

{
  "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
}

Remarques

  • Les propriétés obligatoires sont les suivantes :

    • name
    • type
    • label
    • defaultValue : Spécifie les valeurs principalId et name par défaut.
  • Les propriétés facultatives sont les suivantes :

    • toolTip : Attache une info-bulle infoBalloon à chaque étiquette.
    • visible : Masquez ou affichez le contrôle.
    • options : Spécifie si l’option d’empreinte de certificat doit être proposée ou non.
    • constraints : Contraintes Regex pour la validation du mot de passe.

Exemple

Le code suivant est un exemple de Microsoft.Common.ServicePrincipalSelector contrôle. La propriété defaultValue définit principalId sur <default guid> en tant qu’espace réservé pour un GUID d’identificateur d’application par défaut.

{
  "$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]"
    }
  }
}

Exemple de sortie

Il appId s’agit de l’ID de l’inscription de l’application que vous avez sélectionnée ou créée. L’objectId est un tableau d’ID d’objet pour les principaux de service configurés pour l’inscription de l’application sélectionnée.

Quand aucune sélection n’est effectuée à partir du contrôle, la valeur de la propriété newOrExisting est new :

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

Quand vous sélectionnez Créer nouveau ou une application existante à partir du contrôle, la valeur de la propriété newOrExisting est existing :

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

Étapes suivantes