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 | Azure DevOps Server | Azure DevOps Server 2022
Azure Artifacts permet aux développeurs de publier de manière transparente des packages dans des flux et de les partager de manière privée ou publique, en fonction des paramètres de visibilité du flux. Ce guide vous aide à configurer votre projet et à vous authentifier avec votre flux Azure Artifacts.
Conditions préalables
| Produit | Exigences |
|---|---|
| Azure DevOps | - Une organisation Azure DevOps . - Un projet Azure DevOps . - Un flux Azure Artifacts. - Téléchargez et installez le SDK .NET version 9.0.200 ou ultérieure. |
Configurer le fournisseur d’informations d’identification Azure Artifacts
Pour vous authentifier auprès de votre flux, vous devez d’abord installer le fournisseur d’informations d’identification Azure. À l’aide du programme d’installation d’outils inclus avec dotnet, vous pouvez installer le fournisseur d’informations d’identification à partir de l’interface CLI à l’aide de la commande suivante :
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool
Si votre nuget.config au niveau du dépôt est configuré pour utiliser uniquement des sources Azure Artifacts, exécutez la commande d’installation en dehors de ce répertoire, ou définissez explicitement nuget.org comme source :
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --source https://api.nuget.org/v3/index.json
Si vous le souhaitez, verrouillez l’outil sur une version majeure (par exemple, dans les images de conteneur où la reproductibilité est importante) :
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --version 2.* --source https://api.nuget.org/v3/index.json
La première fois que vous effectuez une opération qui nécessite une authentification, vous devez vous authentifier par l’une ou l’autre des opérations suivantes :
- Exécutez avec
--interactivepour que dotnet puisse vous inviter à vous authentifier. - Fournir des informations d’identification via des variables environment (par exemple, dans des scénarios sans assistance).
Si l’autorisation interactive est disponible, accédez au répertoire de votre projet et exécutez :
dotnet restore --interactive
Cette commande vous connecte et acquiert un jeton. Une fois la connexion établie, vous pouvez exécuter des commandes nécessitant une authentification sans --interactive jusqu’à l’expiration du jeton. Pour plus d’informations, consultez Emplacements du cache des jetons de session.
Se connecter à un flux
Sélectionnez Artefacts , puis sélectionnez votre flux dans le menu déroulant.
Sélectionnez Connexion à un flux, puis dotnet dans la section NuGet.
Ajoutez un fichier nuget.config à votre projet. Placez-le dans le même dossier que votre fichier .csproj ou .sln, puis collez-y l’extrait de code fourni dans la section Configuration du projet. Votre fichier nuget.config doit ressembler à ce qui suit :
Flux à l'échelle du projet :
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>Flux à l'échelle de l'organisation :
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Connectez-vous à votre collection Azure DevOps, puis accédez à votre projet.
Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.
Sélectionnez Se connecter au flux, puis dotnet à gauche.
Ajoutez un fichier nuget.config à votre projet. Placez-le dans le même dossier que votre fichier .csproj ou .sln, puis collez-y l’extrait de code fourni dans la section Configuration du projet.
S’authentifier avec des principaux de service
Vous pouvez utiliser un principal de service pour vous authentifier auprès de votre flux Azure Artifacts. Pour ce faire, définissez la variable d’environnement ARTIFACTS_CREDENTIALPROVIDER_FEED_ENDPOINTS comme indiqué ci-dessous.
Cette variable doit définir l'URL du flux, l'ID de l'application (client) du principal du service et le nom du sujet du certificat ou le chemin d'accès au fichier du certificat (un seul de ces deux éléments est nécessaire).
$env:ARTIFACTS_CREDENTIALPROVIDER_FEED_ENDPOINTS = @'{
"endpointCredentials": [
{
"endpoint": "<FEED_URL>",
"clientId": "<SERVICE_PRINCIPAL_APPLICATION_(CLIENT)_ID>",
"clientCertificateSubjectName": "<SERVICE_PRINCIPAL_CERTIFICATE_NAME>",
"clientCertificateFilePath": "<SERVICE_PRINCIPAL_CERTIFICATE_PATH>"
}
]
}
'@