Descarga paquetes de Java con acceso directo al repositorio para el nivel gratuito

En el nivel gratuito, los paquetes de Assured Open Source Software se alojan en un repositorio de Artifact Registry administrado por Google.

En esta página, se explica cómo puedes conectarte al repositorio de Artifact Registry para Assured OSS y acceder directamente a los paquetes de Java y descargarlos.

Este documento solo se aplica al nivel gratuito. En el caso del nivel Premium, consulta Descarga paquetes de Java con acceso directo al repositorio.

Antes de comenzar

  1. Solicita a tu administrador que te otorgue el rol de IAM de Administrador de claves de cuentas de servicio (roles/iam.serviceAccountKeyAdmin) en tu organización. Necesitas este permiso para obtener la cadena codificada en Base64 de la clave de la cuenta de servicio. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

  2. Configura Assured OSS. Para el nivel gratuito, envía el formulario de habilitación del cliente para habilitar el acceso a Assured OSS.

  3. Valida la conectividad a Assured OSS para las cuentas de servicio solicitadas.

  4. Habilita la API de Artifact Registry para el proyecto Google Cloud principal de las cuentas de servicio que se usan para acceder a Assured OSS.

  5. Instala la versión más reciente de la Google Cloud CLI. Si ya instalaste la Google Cloud CLI, ejecuta este comando para asegurarte de tener la versión más reciente:

    gcloud components update
    

Configura la autenticación

Artifact Registry admite los siguientes métodos de autenticación:

  • Autenticación con un auxiliar de credenciales
  • Autenticación con una contraseña

En las secciones siguientes, se describe cómo configurar estos métodos de autenticación.

Autentica con un auxiliar de credenciales

Artifact Registry proporciona un wagon de Maven y un complemento de Gradle para usar como asistentes de credenciales. Esta opción proporciona la mayor flexibilidad.

Para configurar las credenciales predeterminadas de la aplicación, consulta Configura la autenticación.

Configura tus asistentes de credenciales

Realiza los siguientes cambios según la herramienta de compilación para configurar la autenticación con un asistente de credenciales:

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"
}

Autenticación con una contraseña

Autentica con una contraseña cuando tu aplicación de Java requiera la autenticación con un nombre de usuario y una contraseña especificados. Cambia la configuración según tu herramienta de compilación:

Maven

Agrega los siguientes parámetros de configuración para la autenticación en la sección settings del archivo ~/.m2/settings.xml. Si el archivo aún no existe, créalo. Para obtener más información, consulta la referencia de los parámetros de configuración de 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>

Reemplaza KEY por la codificación en Base64 de todo el archivo de claves JSON de la cuenta de servicio. Para ello, ejecuta el comando que se indica a continuación:

cat KEY_FILE_LOCATION  | base64

Donde KEY_FILE_LOCATION es la ubicación del archivo de claves JSON de la cuenta de servicio.

Gradle

Agrega esta línea a tu archivo ~/.gradle/gradle.properties para que la clave no sea visible en tus compilaciones ni en tu repositorio de control de origen.

artifactRegistryMavenSecret = KEY

Reemplaza KEY por la clave privada de tu archivo de claves JSON de la cuenta de servicio. Para json_key_base64, el artifactRegistryMavenSecret contiene la contraseña encriptada en Base64. Por ejemplo, base64 -w 0 KEY.

En el archivo build.gradle, especifica los parámetros de configuración del repositorio con el ejemplo siguiente:

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

Actualiza el archivo de configuración del proyecto para que apunte al repositorio

Maven

Agrega los siguientes parámetros de configuración a la sección correspondiente del archivo pom.xml de tu proyecto de Maven. No reemplaces los parámetros de configuración de la autenticación.

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

Consulta la referencia del POM de Maven para obtener detalles sobre la estructura del archivo.

Gradle

Especifica los siguientes parámetros de configuración del repositorio en el archivo build.gradle. No reemplaces los parámetros de configuración de la autenticación.

repositories {
  maven {
  url "artifactregistry://us-maven.pkg.dev/cloud-aoss/cloud-aoss-java"
  }
}

Actualiza el archivo de configuración del proyecto para agregar dependencias

Para descargar un artefacto como parte de tu compilación, este debe declararse como una dependencia.

Maven

Declara los paquetes que quieras descargar en el archivo pom.xml de tu proyecto de Maven.

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

Gradle

Declara los paquetes que quieras descargar en el archivo build.gradle.

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

Accede a paquetes de Java que no están disponibles en Assured OSS

Puedes acceder a paquetes que no están disponibles en el repositorio de Artifact Registry para Assured OSS.

Assured OSS está preconfigurado con Assured OSS como repositorio preferido y con repositorios públicos canónicos, como Maven Central o PyPI, como repositorios secundarios. Para usar la función (Preview), apunta a la siguiente URL:

https://us-maven.pkg.dev/cloud-aoss/java

Enumera todos los paquetes de Java disponibles en Assured OSS

Para usar una API con el objetivo de obtener una lista de todos los paquetes de Java disponibles en el repositorio de Artifact Registry, consulta Enumera todos los paquetes de Java disponibles en Assured OSS.

¿Qué sigue?