Scaricare i pacchetti Java utilizzando l'accesso diretto al repository

Nel livello Premium, i pacchetti Assured OSS sono ospitati in un repository Artifact Registry creato in un progetto che controlli. Per accedere e scaricare direttamente i pacchetti Java, puoi connetterti al repository Artifact Registry per Assured OSS.

Questo documento si applica solo al livello Premium di Assured OSS. Per il livello senza costi, consulta Scarica i pacchetti Java utilizzando l'accesso diretto al repository per il livello senza costi.

Prima di iniziare

  1. Chiedi all'amministratore di concederti il ruolo IAM Amministratore chiavi account di servizio (roles/iam.serviceAccountKeyAdmin) per la tua organizzazione. Questa autorizzazione è necessaria per ottenere la stringa con codifica Base64 della chiave del account di servizio. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

  2. Integra Assured OSS con Security Command Center.

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

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

    gcloud components update
    

Configura l'autenticazione

Artifact Registry supporta i seguenti metodi di autenticazione:

  • Autenticazione con un helper per le credenziali
  • Autenticazione con una password

Le sezioni seguenti descrivono come configurare questi metodi di autenticazione.

Autenticati con un helper per le credenziali

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

Per configurare le Credenziali predefinite dell'applicazione, consulta Configura l'autenticazione.

Configura gli helper per le credenziali

Se utilizzi un helper per le 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 specificati. Modifica le impostazioni in base allo strumento di build:

Maven

Aggiungi le seguenti impostazioni di autenticazione nella sezione settings del file ~/.m2/settings.xml. Se il file non esiste già, crealo. Per saperne di più, consulta la documentazione di riferimento sulle impostazioni di Maven.

<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 della chiave JSON del service account. Per farlo, esegui questo comando:

cat KEY_FILE_LOCATION  | base64

Sostituisci KEY_FILE_LOCATION con la posizione del file della chiave JSON del 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 della chiave JSON 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 l'esempio seguente:

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che hai selezionato durante la configurazione di Assured OSS.

  • LOCATION: una regione supportata.

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://LOCATION-maven.pkg.dev/PROJECT_ID/assuredoss-java</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
  </repositories>
</project>

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che hai selezionato durante la configurazione di Assured OSS.

  • LOCATION: una regione supportata.

Per informazioni dettagliate 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://LOCATION-maven.pkg.dev/PROJECT_ID/assuredoss-java"
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che hai selezionato durante la configurazione di Assured OSS.

  • LOCATION: una regione supportata.

Aggiorna il file di configurazione del progetto per aggiungere le dipendenze

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

Maven

Dichiara i pacchetti che vuoi scaricare nel file pom.xml del 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 Elenca tutti i pacchetti Java disponibili in Security Command Center.

Passaggi successivi