Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Azure Artifacts ermöglicht es Entwicklern, Pakete nahtlos in Feeds zu veröffentlichen und sie privat oder öffentlich zu teilen, je nach den Einstellungen für die Sichtbarkeit des Feeds. Diese Anleitung führt Sie durch das Einrichten Ihres Projekts und die Authentifizierung mit Ihrem Azure Artifacts-Feed.
Voraussetzungen
| Produkt | Anforderungen |
|---|---|
| Azure DevOps | - Eine Azure DevOps Organisation. - Ein Azure DevOps Projekt. - Ein Azure Artifacts-Feed. – Laden Sie das .NET SDK Version 9.0.200 oder höher herunter, und installieren Sie es. |
Richten Sie den Anmeldeinformationsanbieter für Azure Artifacts ein
Zur Authentifizierung bei Ihrem Feed müssen Sie zuerst den Azure Credential Provider installieren. Mithilfe des in dotnet enthaltenen Toolinstallationsprogramms können Sie den Anmeldeinformationsanbieter über die CLI mit dem folgenden Befehl installieren:
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool
Wenn Ihre Repositoryebene nuget.config so konfiguriert ist, dass nur Azure Artifacts Quellen verwendet werden, führen Sie den Installationsbefehl außerhalb dieses Verzeichnisses aus, oder legen Sie explizit nuget.org als Quelle fest:
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --source https://api.nuget.org/v3/index.json
Optional können Sie das Tool auf eine Hauptversion festlegen (z. B. in Container-Images, bei denen die Reproduzierbarkeit wichtig ist):
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --version 2.* --source https://api.nuget.org/v3/index.json
Wenn Sie zum ersten Mal einen Vorgang ausführen, der eine Authentifizierung erfordert, sollten Sie sich durch eine der folgenden Aktionen authentifizieren:
- Ausführung mit
--interactive, damit dotnet Sie zur Authentifizierung auffordern kann. - Bereitstellen von Anmeldeinformationen über Umgebungsvariablen (z. B. in unbeaufsichtigten Szenarien).
Wenn die interaktive Autorisierung verfügbar ist, navigieren Sie zu Ihrem Projektverzeichnis, und führen Sie Folgendes aus:
dotnet restore --interactive
Dieser Befehl meldet Sie an und erwirbt ein Token. Nach erfolgreicher Anmeldung können Sie authentifizierte Befehle ohne --interactive ausführen, bis das Token abläuft. Weitere Informationen finden Sie unter Session-Tokencachespeicherorte.
Verbindung zu einem Feed herstellen
Wählen Sie Artefakte und dann Ihren Feed aus dem Dropdownmenü aus.
Wählen Sie Verbinden mit Feedund dann dotnet aus dem Abschnitt NuGet .
Fügen Sie eine nuget.config-Datei zu Ihrem Projekt hinzu. Legen Sie sie in denselben Ordner wie Ihre .csproj- oder .sln-Datei und fügen Sie das Snippet aus dem Abschnitt Projekteinrichtung darin ein. Ihre nuget.config-Datei sollte etwa so aussehen wie die folgende:
Projektbezogener Feed:
<?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>Organisationsspezifischer Feed:
<?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>
Melden Sie sich bei Ihrer Azure DevOps-Sammlung an, und navigieren Sie dann zu Ihrem Projekt.
Wählen Sie Artefakte und dann Ihren Feed im Dropdownmenü aus.
Wählen Sie Mit Feed verbinden und dann dotnet auf der linken Seite.
Fügen Sie eine nuget.config-Datei zu Ihrem Projekt hinzu. Legen Sie sie in denselben Ordner wie Ihre .csproj- oder .sln-Datei und fügen Sie das Snippet aus dem Abschnitt Projekteinrichtung darin ein.
Authentifizierung mit Dienstprinzipalen
Sie können ein Dienstprinzipal verwenden, um sich bei Ihrem Azure Artifacts Feed zu authentifizieren. Dazu legen Sie die ARTIFACTS_CREDENTIALPROVIDER_FEED_ENDPOINTS Umgebungsvariable wie unten gezeigt fest.
Diese Variable sollte die Feed-URL, die Anwendungs-(Client-)ID des Dienstprinzipals und entweder den Zertifikatssubjektnamen oder den Pfad zur Zertifikatsdatei enthalten (nur eines von beiden ist erforderlich).
$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>"
}
]
}
'@