Scaricare i pacchetti Java utilizzando l'accesso diretto al repository

Dopo aver integrato Assured OSS con Security Command Center, i pacchetti Assured Open Source Software vengono ospitati in un repository Artifact Registry creato in un progetto che controlli.

Questa pagina spiega come connettersi al repository Artifact Registry per Assured OSS per accedere direttamente ai pacchetti Java e scaricarli.

Questo documento si applica solo al livello premium di Assured OSS. Per il livello gratuito, consulta Scaricare pacchetti Java utilizzando l'accesso diretto al repository per il livello gratuito.

Prima di iniziare

  1. Integra Assured OSS con Security Command Center.

  2. Convalida la connettività ad Assured OSS per i service account richiesti.

  3. Installa l'ultima versione di Google Cloud CLI.

  4. Se hai già installato Google Cloud CLI, assicurati di avere l'ultima versione eseguendo il comando:

    gcloud components update
    

Configura l'autenticazione

Artifact Registry supporta i seguenti metodi di autenticazione:

  • Autenticazione con un helper delle credenziali
  • Autenticazione con password

Le sezioni seguenti descrivono come configurare questi metodi di autenticazione.

Autenticarsi con un helper delle credenziali

Artifact Registry fornisce un wagon Maven e un plug-in Gradle da utilizzare come helper delle credenziali. Questa opzione offre la massima flessibilità.

Per configurare le credenziali predefinite dell'applicazione, consulta la sezione Configurare l'autenticazione.

Configurare gli helper delle credenziali

Se utilizzi un helper delle credenziali per configurare l'autenticazione, apporta le seguenti modifiche in base allo strumento di build.

Maven

<project>
  <build>
    <extensions>
      <extension>
        <groupId>com.google.cloud.artifactregistry</groupId>
        <artifactId>artifactregistry-maven-wagon</artifactId>
        <version>2.2.0</version>
      </extension>
    </extensions>
  </build>
</project>

Gradle

plugins {
  id "com.google.cloud.artifactregistry.gradle-plugin" version "2.2.0"
}

Esegui l'autenticazione usando la password

Autenticati utilizzando la password quando la tua applicazione Java richiede l'autenticazione con un nome utente e una password specifici. A seconda dello strumento di compilazione, modifica le impostazioni in base alle seguenti istruzioni:

Maven

Aggiungi le seguenti impostazioni di autenticazione nella sezione settings del file ~/.m2/settings.xml. Per ulteriori informazioni, consulta la guida di riferimento alle impostazioni di Maven. Se il file ~/.m2/settings.xml non esiste, creane uno nuovo.

<settings>
  <servers>
    <server>
      <id>artifact-registry</id>
      <configuration>
        <httpConfiguration>
          <get>
            <usePreemptive>true</usePreemptive>
          </get>
          <head>
            <usePreemptive>true</usePreemptive>
          </head>
          <put>
            <params>
              <property>
                <name>http.protocol.expect-continue</name>
                <value>false</value>
              </property>
            </params>
          </put>
        </httpConfiguration>
      </configuration>
      <username>_json_key_base64</username>
      <password>KEY</password>
    </server>
  </servers>
</settings>

Sostituisci KEY con la codifica Base64 dell'intero file JSON della chiave dell'account di servizio. Per farlo, esegui questo comando:

cat KEY_FILE_LOCATION  | base64

Sostituisci KEY_FILE_LOCATION con la posizione del file JSON della chiave dell'account di servizio.

Gradle

Aggiungi la seguente riga al file ~/.gradle/gradle.properties in modo che la chiave non sia visibile nelle build o nel repository di controllo del codice sorgente.

artifactRegistryMavenSecret = KEY

Sostituisci KEY con la chiave privata del file JSON della chiave del account di servizio. Per json_key_base64, artifactRegistryMavenSecret contiene la password criptata in base64. Ad esempio: base64 -w 0 KEY.

Nel file build.gradle, specifica le impostazioni del repository utilizzando il seguente esempio:

repositories {
  maven {
    url "artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java"
    credentials {
      username = "_json_key_base64"
      password = "$artifactRegistryMavenSecret"
    }
    authentication {
      basic(BasicAuthentication)
    }
  }
}

Sostituisci PROJECT_ID con l'ID del progetto che hai selezionato quando hai configurato Assured Open Source Software.

Aggiorna il file di configurazione del progetto in modo che punti al repository

Maven

Aggiungi le seguenti impostazioni alla sezione appropriata del file pom.xml per il tuo progetto Maven. Non sostituire le impostazioni di autenticazione.

<project>
  <repositories>
    <repository>
      <id>artifact-registry</id>
      <url>artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
  </repositories>
</project>

Sostituisci PROJECT_ID con l'ID del progetto che hai selezionato quando hai configurato Assured Open Source Software.

Per maggiori dettagli sulla struttura del file, consulta il riferimento POM di Maven.

Gradle

Specifica le seguenti impostazioni del repository nel file build.gradle. Non sostituire le impostazioni di autenticazione.

repositories {
  maven {
  url "artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java"
  }
}

Sostituisci PROJECT_ID con l'ID del progetto che hai selezionato quando hai configurato Assured Open Source Software.

Aggiorna il file di configurazione del progetto per aggiungere dipendenze

Per scaricare un artefatto come parte della build, l'artefatto deve essere dichiarato come dipendenza.

Maven

Dichiara i pacchetti che vuoi scaricare nel file pom.xml per il tuo progetto Maven.

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.17.1</version>
</dependency>

Gradle

Dichiara i pacchetti che vuoi scaricare nel file build.gradle.

dependencies {
    compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.17.1'
}

Elenca tutti i pacchetti Java disponibili in Assured OSS

Per utilizzare un'API per ottenere un elenco di tutti i pacchetti Java disponibili nel repository Artifact Registry, consulta Elencare tutti i pacchetti Java disponibili in Security Command Center.

Passaggi successivi