Partager via


Se connecter à un flux Azure Artifacts (NuGet.exe)

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

Azure Artifacts permet aux développeurs de télécharger des packages NuGet à partir de différentes sources telles que des flux privés et des registres publics. Vous pouvez publier des packages sur des flux privés et contrôler l’accès, ou créer des flux publics pour les partager publiquement. Cet article vous guide tout au long de l’authentification auprès de 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 fournisseur d'identifiants Azure Artifacts .
- Installez la dernière version de NuGet.

Configuration du projet

  1. Connectez-vous à votre organisation Azure DevOps, puis accédez à votre projet.

  2. Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.

  3. Sélectionnez Se connecter au flux, puis sélectionnez NuGet.exe à partir de gauche.

  4. Ajoutez un fichier nuget.config à votre projet, placez-le dans le même dossier que votre fichier csproj ou sln , puis collez l’extrait de code fourni dans celui-ci. 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="<SOURCE_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="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
  1. Connectez-vous à votre collection Azure DevOps, puis accédez à votre projet.

  2. Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.

  3. Sélectionnez Se connecter au flux, puis sélectionnez NuGet.exe dans le volet de navigation gauche.

  4. Ajoutez un fichier nuget.config à votre projet, placez-le dans le même dossier que votre fichier csproj ou sln , puis collez l’extrait de code fourni dans la section d’installation du projet dans votre fichier.

Remarque

Le fournisseur de crédentiels Azure Artifacts nécessite la version 4.8.0.5385 de NuGet ou ultérieure. Pour des performances optimales, Azure Artifacts recommande d’utiliser la version de NuGet ou une version 5.5.x ultérieure, car il inclut des correctifs de bogues essentiels liés aux annulations et aux délais d’expiration.

Configuration du projet hérité

Si vous utilisez une version antérieure de NuGet, suivez les instructions ci-dessous pour vous connecter à votre flux :

  1. Connectez-vous à votre organisation Azure DevOps, puis accédez à votre projet.

  2. Sélectionnez Artefacts , puis sélectionnez votre flux dans le menu déroulant.

  3. Sélectionnez Se connecter au flux, puis sélectionnez NuGet.exe à partir de gauche.

  4. Copiez votre URL source à partir de la section Installation de Project , puis remplacez /v3/index.json par /v2. Votre URL source mise à jour doit ressembler à l’une des options suivantes :

    • Flux à l'échelle du projet :

      https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v2
      
    • Flux à l'échelle de l'organisation :

      https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v2
      
  5. Créez un jeton d’accès personnel, veillez à l’étendre à l’organisation appropriée à laquelle vous souhaitez accéder, puis sélectionnez l’une des étendues suivantes en fonction de vos besoins : Empaquetage (lecture etécriture) ou Empaquetage (lecture, écriture et gestion) .

  6. Exécutez la commande suivante dans une fenêtre d’invite de commandes pour ajouter votre source de flux à votre fichier nuget.config :

    nuget sources add -name <FEED_NAME> -source <SOURCE_URL> -username <ANY_STRING_BUT_NOT_NULL> -password <YOUR_PERSONAL_ACCESS_TOKEN>
    
  7. Si votre organisation est connectée à l’ID Microsoft Entra, vous devez d’abord vous authentifier avec vos informations d’identification AD, puis ajouter votre jeton d’accès personnel à l’aide de la commande setapikey :

    nuget sources add -name <FEED_NAME> -source <SOURCE_URL> -username <AZURE_ACTIVE_DIRECTORY_USERNAME> -password <AZURE_ACTIVE_DIRECTORY_PASSWORD>
    
    nuget setapikey <YOUR_PERSONAL_ACCESS_TOKEN> -source <SOURCE_URL> 
    

S’authentifier avec des principaux de service

Pour vous authentifier auprès d’un flux Azure Artifacts à l’aide d’un principal de service, définissez la variable d’environnement ARTIFACTS_CREDENTIALPROVIDER_FEED_ENDPOINTS comme indiqué ci-dessous.

Cela spécifie votre URL de flux, l’ID d’application (client) du principal de service, ainsi que le nom du sujet ou le chemin d’accès au fichier du certificat du principal de service (un seul de ces deux éléments est requis).

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