Конечная точка службы CLI Azure DevOps
Azure DevOps Services
az devops service-endpoint
С помощью команды можно создавать и управлять различными типами подключений к службе. Подключение к службе позволяет Azure DevOps взаимодействовать с внешней службой, например Azure, Bitbucket, Kubernetes, Maven, GitHub и т. д. С помощью az devops service-endpoint
функции можно выполнить следующие задачи:
- Создание конечной точки службы с помощью файла конфигурации
- Обновление конечной точки службы
- Управление конечными точками и подключениями службы GitHub
- Управление конечными точками и подключениями службы Azure Resource Manager
- Вывод списка конечных точек службы, определенных для проекта
- Получение сведений о конечной точке службы.
Подробные сведения о синтаксисе команд см. в разделе az devops service-endpoint
. Синтаксис REST API для конечных точек службы см. в разделе "Конечные точки".
Вы также можете использовать команды Azure CLI для получения сведений, списка, удаления и обновления конечной точки службы. Ознакомьтесь с примерами azure DevOps CLI, конечными точками службы или подключениями к службам.
Сведения об использовании веб-портала для создания и изменения подключений служб см. в статье "Управление подключениями к службе".
Совет
В примерах в этой статье в качестве более безопасного метода аутентификации используются учетные записи служб вместо базовой проверки подлинности. Дополнительные сведения см. в статье Использование субъектов-служб & управляемых удостоверений в Azure DevOps.
Создание конечной точки службы с помощью файла конфигурации
Чтобы создать конечную точку службы с помощью файла конфигурации, необходимо сначала определить файл конфигурации. Содержимое файла конфигурации зависит от типа подключения, например Azure Classic, Azure Data Explorer, Bitbucket Cloud, Chef и т. д.
Формат файла конфигурации
В следующем синтаксисе json
показан формат файла конфигурации.
{
"data": {},
"name": "MyNewServiceEndpoint",
"type": "AzureRM",
"url": "https://management.azure.com/",
"authorization": {
"parameters": {
"tenantid": "your-tenant-id"
},
"scheme": "ManagedServiceIdentity"
},
"isShared": false,
"isReady": true,
"serviceEndpointProjectReferences": [
{
"projectReference": {
"id": "c7e5f0b3-71fa-4429-9fb3-3321963a7c06",
"name": "TestProject"
},
"name": "MyNewServiceEndpoint"
}
]
}
В следующей таблице содержатся описания всех параметров. Параметр type
поддерживает создание любой конечной точки службы.
Параметр | Тип | Описание: |
---|---|---|
name |
строка | Задает понятное имя конечной точки. |
type |
строка | Задает тип конечной точки. |
url |
строка | Задает URL-адрес конечной точки. |
authorization |
EndpointAuthorization | Задает данные авторизации для разговора с конечной точкой. |
isShared |
boolean | Указывает, предоставляется ли конечная точка службы другим проектам или нет. |
isReady |
boolean | Индикатор состояния EndPoint. |
serviceEndpointProjectReferences |
Справочник по проекту | Задает ссылку на проект конечной точки службы. |
Для списка поддерживаемых типов и необходимых входных параметров можно выполнить следующую запись REST API:
https://dev.azure.com/{organization}/_apis/serviceendpoint/types?api-version=6.0-preview.1
Кроме того, описание типов подключений службы и других параметров, которые могут потребоваться, см. в разделе "Управление подключениями служб", типами подключений common service.
Выполните команду create
.
Вы создаете конечную точку службы с az devops service-endpoint create
помощью команды.
az devops service-endpoint create --service-endpoint-configuration
[--encoding {ascii, utf-16be, utf-16le, utf-8}]
[--org]
[--project]
Параметры
-
service-endpoint-configuration: обязательный. Имя файла конфигурации с конфигурацией конечной
json
точки службы. -
кодировка: необязательно. Кодировка входного файла. По умолчанию —
utf-8
. Принятые значения:ascii
,utf-16be
,utf-16le
utf-8
. -
org: URL-адрес организации Azure DevOps. Вы можете настроить организацию по умолчанию с помощью
az devops configure -d organization=ORG_URL
. Требуется, если значение по умолчанию не настроено. -
проект: имя или идентификатор проекта. Вы можете настроить проект по умолчанию с помощью
az devops configure -d project=NAME_OR_ID
. Требуется, если значение по умолчанию не настроено.
Пример
Следующая команда создает подключение службы, ссылающееся ServiceConnectionGeneric.json
на файл.
az devops service-endpoint create --service-endpoint-configuration ./ServiceConnectionGeneric.json
После успешного создания возвращается конечная Id
точка службы, а ответ, аналогичный следующему синтаксису.
{
"administratorsGroup": null,
"authorization": {
"parameters": {
"serviceprincipalid": "your-service-principal-id",
"serviceprincipalkey": "your-service-principal-key",
"tenantid": "your-tenant-id"
},
"scheme": "ServicePrincipal"
},
"createdBy": {
"descriptor": "aad.OGYxZTFlODEtMGJiNC03N2ZkLThkYzUtYjE3MTNiNTQ2MjQ4",
"directoryAlias": null,
"displayName": "Jamal Hartnett",
"id": "60c83423-4eb6-4c5e-8395-1e71cb4aef4c",
"imageUrl": "https://dev.azure.com/fabrikam/_apis/GraphProfile/MemberAvatars/aad.OGYxZTFlODEtMGJiNC03N2ZkLThkYzUtYjE3MTNiNTQ2MjQ4",
"inactive": null,
"isAadIdentity": null,
"isContainer": null,
"isDeletedInOrigin": null,
"profileUrl": null,
"uniqueName": "fabrikamfiber4@hotmail.com",
"url": "https://spsprodwcus0.vssps.visualstudio.com/A0214b8cc-a36c-4b93-abbf-6348473c2f0a/_apis/Identities/60c83423-4eb6-4c5e-8395-1e71cb4aef4c"
},
"data": {},
"description": null,
"groupScopeId": null,
"id": "3b6890ef-54b3-47ec-a907-a5d2f96237da",
"isReady": true,
"isShared": false,
"name": "MyNewServiceEndpoint",
"operationStatus": null,
"owner": "library",
"readersGroup": null,
"serviceEndpointProjectReferences": [
{
"name": "MyNewServiceEndpoint",
"projectReference": {
"id": "677da0fb-b067-4f77-b89b-f32c12bb8617",
"name": null
}
}
],
"type": "Generic",
"url": "https://myserver"
}
Создание конечной точки службы GitHub
Чтобы создать конечную точку службы GitHub, используйте az devops service-endpoint github create
команду:
az devops service-endpoint github create --github-url
--name
[--org]
[--project]
В интерактивном режиме az devops service-endpoint github create
команда запрашивает маркер GitHub PAT с помощью сообщения командной строки, чтобы задать маркер GitHub PAT с помощью переменной AZURE_DEVOPS_EXT_GITHUB_PAT
среды. Дополнительные сведения см. в разделе "Вход с помощью личного маркера доступа( PAT)".
Создание конечной точки службы Azure Resource Manager
Чтобы создать конечную точку службы Azure Resource Manager, используйте az devops service-endpoint azurerm create
команду.
az devops service-endpoint azurerm create --azure-rm-service-principal-id
--azure-rm-subscription-id
--azure-rm-subscription-name
--azure-rm-tenant-id
--name
[--azure-rm-service-principal-certificate-path]
[--org]
[--project]
Использование секрета клиента
В интерактивном режиме команда az devops service-endpoint azurerm create
запрашивает секрет сервисного аккаунта с помощью сообщения-подсказки. Для автоматизации задайте секрет служебного принципала с помощью переменной окружения AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY
.
export AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
$env:AZURE_DEVOPS_EXT_AZURE_RM_SERVICE_PRINCIPAL_KEY=<your_secret_here>
Использование сертификата клиента
Если приложение Microsoft Entra использует сертификат для проверки подлинности, создайте PEM-файл для сертификата и передайте путь к PEM-файлу с помощью аргумента --azure-rm-service-principal-certificate-path
.
Pem-файл можно создать с помощью opensl:
openssl pkcs12 -in file.pfx -out file.pem -nodes -secret pass:<secret_here>