Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Azure Artifacts consente agli sviluppatori di pubblicare facilmente i pacchetti nei feed e condividerli privatamente o pubblicamente, a seconda delle impostazioni di visibilità del feed. Questa guida illustra come configurare il progetto e autenticarsi con il feed di Azure Artifacts.
Prerequisiti
| Prodotto | Requisiti |
|---|---|
| Azure DevOps | - Un'organizzazione di Azure DevOps. - Un progetto Azure DevOps . - Un feed di Azure Artifacts . - Scaricare e installare .NET SDK versione 9.0.200 o versione successiva. |
Configurare il provider di credenziali Azure Artifacts
Per eseguire l'autenticazione con il feed, è prima necessario installare il provider di credenziali Azure. Usando il programma di installazione dello strumento incluso in dotnet, è possibile installare il provider di credenziali dall'interfaccia della riga di comando usando il comando seguente:
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool
Se il file nuget.config a livello di repository è configurato per usare solo le origini di Azure Artifacts, esegui il comando di installazione da fuori di tale directory oppure imposta esplicitamente nuget.org come origine:
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --source https://api.nuget.org/v3/index.json
Facoltativamente, aggiungere lo strumento a una versione principale(ad esempio, nelle immagini del contenitore in cui la riproducibilità è importante):
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --version 2.* --source https://api.nuget.org/v3/index.json
La prima volta che si esegue un'operazione che richiede l'autenticazione, è necessario eseguire l'autenticazione tramite:
- Esegui con
--interactivein modo che dotnet possa chiederti di autenticarti. - Fornire le credenziali tramite variabili di ambiente (ad esempio, in scenari non presidiati).
Se è disponibile l'autorizzazione interattiva, passare alla directory del progetto ed eseguire:
dotnet restore --interactive
Questo comando ti consente di accedere e di ottenere un token. Dopo aver effettuato l'accesso con successo, puoi eseguire comandi autenticati senza --interactive finché il token non scade. Per altri dettagli, vedere Session token cache locations.
Collegarsi a un feed
Selezionare Artefatti e quindi selezionare il feed dal menu a discesa.
Selezionare Connetti al feed, e quindi selezionare dotnet nella sezione NuGet.
Aggiungere un filenuget.config al progetto. Posizionarlo nella stessa cartella del file con estensione csproj o .sln e incollarvi il frammento fornito nella sezione Installazione progetto . Il filenuget.config dovrebbe essere simile al seguente:
feed con ambito progetto:
<?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>feed a livello di organizzazione:
<?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>
Accedi alla tua raccolta di Azure DevOps, e quindi passa al tuo progetto.
Selezionare Artifactse quindi selezionare il tuo feed dal menu a discesa.
Selezionare Connetti al feed e quindi selezionare dotnet a sinistra.
Aggiungere un filenuget.config al progetto. Posizionarlo nella stessa cartella del file con estensione csproj o .sln e incollarvi il frammento fornito nella sezione Installazione progetto .
Autenticarsi utilizzando i principali del servizio
È possibile usare un principale del servizio per eseguire l'autenticazione con il feed di Azure Artifacts. A tale scopo, impostare la variabile di ambiente ARTIFACTS_CREDENTIALPROVIDER_FEED_ENDPOINTS come illustrato di seguito.
Questa variabile deve definire l'URL del feed, l'ID applicazione (client) dell'entità servizio e il nome soggetto del certificato o il percorso del file del certificato (è necessario solo uno di questi due).
- Windows
- Linux/macOS
$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>"
}
]
}
'@