Microsoft.Common.ServicePrincipalSelector UI element
Элемент управления, позволяющий пользователям выбрать существующую субъект-службу или зарегистрировать новое приложение. При выборе команды Создать необходимо выполнить действия по регистрации нового приложения. При выборе существующего приложения элемент управления предоставляет текстовое поле для ввода пароля или отпечатка сертификата.
Примеры пользовательского интерфейса
Можно использовать приложение по умолчанию, создать новое или использовать существующее приложение.
Использование приложения по умолчанию или создание нового приложения
Представление по умолчанию определяется значениями свойства defaultValue
, а для Типа субъекта-службы установлено значение Создать. Если свойство principalId
содержит действительный глобальный уникальный идентификатор (GUID), элемент управления выполняет поиск приложения objectId
. Если пользователь не выполняет выбор из элемента управления, применяется значение по умолчанию.
Чтобы зарегистрировать новое приложение, щелкните Изменить выбор. Откроется диалоговое окно Регистрация приложения. Введите Имя, Поддерживаемый тип учетной записи и нажмите кнопку Зарегистрировать.
После регистрации нового приложения используйте Тип проверки подлинности для ввода пароля или отпечатка сертификата.
Использование существующего приложения
Чтобы использовать существующее приложение, выберите команду Выбрать существующий и щелкните Сделать выбор. Используйте диалоговое окно Выбор приложения для поиска имени приложения. В результатах выберите приложение и нажмите кнопку "Выбрать ". После выбора приложения элемент управления показывает Тип проверки подлинности для ввода пароля или отпечатка сертификата.
Схема
{
"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
}
Замечания
Указываются следующие необходимые свойства:
name
type
label
defaultValue
: задает значения по умолчаниюprincipalId
иname
.
Указываются следующие дополнительные свойства:
toolTip
: привязывает всплывающую подсказкуinfoBalloon
к каждой метке.visible
: скрывает или отображает элемент управления.options
: указывает, следует ли сделать параметр отпечатка сертификата доступным.constraints
: ограничения регулярных выражений для проверки пароля.
Пример
Следующий код является примером Microsoft.Common.ServicePrincipalSelector
элемента управления. Свойство defaultValue
присваивает значение principalId
в качестве заполнителя <default guid>
для GUID идентификатора приложения по умолчанию.
{
"$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]"
}
}
}
Пример результата
Идентификатор appId
выбранной или созданной регистрации приложения. objectId
является массивом идентификаторов объектов для субъектов-служб, настроенных для регистрации выбранного приложения.
При отсутствии выбора из элемента управления значением свойства newOrExisting
является new:
{
"appId": {
"value": "<default guid>"
},
"objectId": {
"value": ["<default guid>"]
},
"password": {
"value": "<password>"
},
"certificateThumbprint": {
"value": ""
},
"newOrExisting": {
"value": "new"
},
"authenticationType": {
"value": "password"
}
}
Если из элемента управления выбрана команда Создать новый или выбрано существующее приложение, то значением свойства newOrExisting
является existing:
{
"appId": {
"value": "<guid>"
},
"objectId": {
"value": ["<guid>"]
},
"password": {
"value": "<password>"
},
"certificateThumbprint": {
"value": ""
},
"newOrExisting": {
"value": "existing"
},
"authenticationType": {
"value": "password"
}
}
Следующие шаги
- Общие сведения о создании определений пользовательского интерфейса см. в статье Начало работы с CreateUiDefinition.
- Дополнительные сведения об общих свойствах элементов пользовательского интерфейса см. в статье Элементы CreateUiDefinition.