Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure DevOps Services
Une connexion de service permet à Azure DevOps de communiquer avec un service externe, tel qu’Azure, Bitbucket, Kubernetes, Maven et GitHub. Grâce à la commande az devops service-endpoint, vous pouvez créer et gérer différents types de connexions de service. Vous pouvez effectuer les tâches suivantes :
- Créer un point de terminaison de service à l’aide d’un fichier de configuration
- Mettre à jour un point de terminaison de service
- Gérer les points de terminaison et les connexions de service GitHub
- Gérer les points de terminaison et les connexions du service Azure Resource Manager
- Répertorier les points de terminaison de service définis dans un projet
- Obtenir les détails d’un point de terminaison de service
Pour obtenir une syntaxe de commande détaillée, consultez az devops service-endpoint. Pour obtenir une syntaxe sur l’API REST pour les points de terminaison de service, consultez Points de terminaison.
Vous pouvez utiliser des commandes Azure CLI pour obtenir des détails, répertorier, supprimer et mettre à jour un point de terminaison de service. Consultez les points de terminaison de service ou les connexions de service.
Pour utiliser le portail web afin de créer et de modifier des connexions de service, consultez Gérer les connexions de service.
Conseil
Les exemples de cet article utilisent des entités de service au lieu de l'authentification de base comme méthode d'authentification plus sécurisée. Pour plus d’informations, veuillez consulter la section Utiliser des principaux de service & identités managées dans Azure DevOps.
Créer un point de terminaison de service à l’aide d’un fichier de configuration
Pour créer un point de terminaison de service à l’aide d’un fichier de configuration, définissez d’abord le fichier de configuration. Le contenu du fichier de configuration varie en fonction du type de connexion, tel qu’Azure Classic, Azure Data Explorer, Bitbucket Cloud ou Chef.
Format des fichiers de configuration
La syntaxe suivante montre le format JSON du fichier de configuration.
{
"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": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
"name": "TestProject"
},
"name": "MyNewServiceEndpoint"
}
]
}
La table ci-dessous décrit chaque paramètre. Le paramètre type prend en charge la création de n’importe quel type de point de terminaison de service.
| Paramètre | Type | Descriptif |
|---|---|---|
name |
ficelle | Définit le nom convivial du point de terminaison. |
type |
ficelle | Définit le type du point de terminaison. |
url |
ficelle | Définit l’URL du point de terminaison. |
authorization |
EndpointAuthorization | Définit les données d’autorisation afin de communiquer avec le point de terminaison. |
isShared |
boolean | Indique si le point de terminaison de service est partagé avec d’autres projets. |
isReady |
boolean | Indicateur d’état EndPoint. |
serviceEndpointProjectReferences |
Référence du projet | Définit la référence du projet pour le point de terminaison de service. |
Pour obtenir la liste des types pris en charge et leurs paramètres d’entrée requis, passez en revue l’entrée d’API REST suivante :
https://dev.azure.com/{organization}/_apis/serviceendpoint/types?api-version=6.0-preview.1
Pour obtenir une description des types et paramètres de connexion de service, consultez Types de connexion de service courants.
Exécutez la commande create.
Vous créez un point de terminaison de service avec la commande az devops service-endpoint create .
az devops service-endpoint create --service-endpoint-configuration
[--encoding {ascii, utf-16be, utf-16le, utf-8}]
[--organization]
[--project]
Parameters
- service-endpoint-configuration : Obligatoire. Nom du fichier de configuration
jsoncontenant la configuration du point de terminaison de service. - encodage : Facultatif. Encodage du fichier d’entrée. La valeur par défaut est
utf-8. Valeurs acceptées :ascii,utf-16be,utf-16le,utf-8. - organisation : URL de l’organisation Azure DevOps. Vous pouvez configurer l’organisation par défaut à l’aide de la commande
az devops configure --defaults organization=ORG_URL. Obligatoire s’il n’est pas configuré en tant que valeur par défaut. - project : nom ou ID du projet. Vous pouvez configurer le projet par défaut à l’aide de la commande
az devops configure --defaults project=NAME_OR_ID. Obligatoire s’il n’est pas configuré en tant que valeur par défaut.
Exemple
La commande suivante crée une connexion de service référençant le fichier ServiceConnectionGeneric.json .
az devops service-endpoint create --service-endpoint-configuration ./ServiceConnectionGeneric.json
Après la création, la commande affecte un Id au point de terminaison de service. Cet exemple retourne le résultat suivant.
{
"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"
}
Créer un point de terminaison de service GitHub
Pour créer un point de terminaison de service GitHub, utilisez la commande az devops service-endpoint github create :
az devops service-endpoint github create --github-url
--name
[--organization]
[--project]
En mode interactif, la az devops service-endpoint github create commande vous invite à saisir le jeton GitHub PAT. À des fins d’automatisation, définissez le jeton PAT GitHub à l’aide de la variable d’environnement AZURE_DEVOPS_EXT_GITHUB_PAT . Pour plus d’informations, consultez Se connecter avec un jeton d’accès personnel.
Créer un point de terminaison de service Azure Resource Manager
Pour créer un point de terminaison de service Azure Resource Manager, utilisez la commande 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]
[--organization]
[--project]
Utiliser un secret client
En mode interactif, la az devops service-endpoint azurerm create commande vous invite à fournir un secret lié au principal de service. À des fins d’automatisation, définissez le secret du principal de service à l’aide de la variable d’environnement 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>
Utilisez un certificat client
Si l’application Microsoft Entra utilise un certificat pour l’authentification, créez un fichier .pem pour le certificat. Transmettez le chemin d’accès au fichier .pem à l’aide de l’argument --azure-rm-service-principal-certificate-path .
Vous pouvez créer un fichier .pem à l’aide d’OpenSSL :
openssl pkcs12 -in file.pfx -out file.pem -nodes -secret pass:<secret_here>