I pacchetti NPM e NuGet del CAEP vengono caricati sull’azure DevOps registry privato di Code Architects.
Per poterli utilizzare, a ciascun cliente verrà fornita un’utenza con dominio @codearchitects.com e verrà abilitato a scaricare i pacchetti assegnadogli i permessi necessari.
NPM
Quando i pacchetti NPM vengono scaricati dal nostro NPM registry (generalmente tramite un npm install sul package.json del progetto), con il seguente comando sarà possibile verificare una serie di informazioni:
npm view @ca/cli@1.1.7
# OUTPUT:
...
dist
.tarball: https://devops.codearchitects.com:444/Code Architects/_packaging/ca-npm/npm/registry/@ca/cli/-/cli-1.1.7.tgz
.shasum: 2f61f3d7652fafbd3d9d019c03c05db12f954e2f
...
Sotto la voce dist avremo due campi:
tarball
: origine del pacchettoshasum
: hash generato sul .tgz
L’Azure DevOps Registry si occupa già di fare un controllo sull’hash, ma possiamo procedere con ulteriori verifiche manuali scaricando lo stesso pacchetto sotto forma di .tgz:
npm pack @ca/cli@1.1.7
e lanciare quindi il seguente comando sullo stesso:
sha1sum ./ca-cli-1.1.7.tgz
# OUTPUT:
\2f61f3d7652fafbd3d9d019c03c05db12f954e2f *.\\ca-cli-1.1.7.tgz
Possiamo notare come l’hash confrontato sia identico per la relativa versione del pacchetto preso in esame.
NuGet
Quando viene eseguito il restore dei pacchetti NuGet mediante una .sln o un .csproj, essi finiscono solitamente nella cache locale:
-
Se si utilizza Visual Studio, è possibile cliccare su
Open Folder in File Explorer
sulla dipendenza interessata ubicata nell’alberoDependencies
del Solution Explorer; -
altrimenti bisogna raggiungere il path della cache sotto
C:\Users\<nomeUtente>\.nuget\.packages\<nomePacchetto>\<versione>\<pacchetto>.nupkg
e lanciare il seguente comando per verificare l’autenticità del pacchetto:
dotnet nuget verify ./<nomePacchetto>.<verione>.nupkg
# OUTPUT:
Signature type: Author
Subject Name: CN=Code Architects SRL, O=Code Architects SRL, L=Santeramo in colle, S=Bari, C=IT
SHA256 hash: ...
Valid from: 8/6/2024 6:48:16 AM to 8/9/2024 6:48:16 AM