Después de integrar Assured OSS con Security Command Center, los paquetes de software de código abierto garantizado se alojan en un repositorio de Artifact Registry que se crea en un proyecto que controlas.
En esta página, se explica cómo puedes conectarte al repositorio de Artifact Registry para que Assured OSS acceda directamente a los paquetes de Java y los descargue.
Este documento se aplica solo al nivel pagado de Assured OSS. Para el nivel gratuito, consulta Descarga paquetes de Java mediante el acceso directo al repositorio para el nivel gratuito.
Antes de comenzar
Valida la conectividad a Assured OSS para las cuentas de servicio solicitadas.
Instala la versión más reciente de Google Cloud CLI.
Si instalaste Google Cloud CLI anteriormente, ejecuta el siguiente 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 siguientes secciones, se describe cómo configurar estos métodos de autenticación.
Autentica con un auxiliar de credenciales
Artifact Registry proporciona un vagón 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.
Cómo configurar auxiliares de credenciales
Si usas un auxiliar de credenciales para configurar la autenticación, realiza los siguientes cambios según la herramienta de compilación.
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"
}
Autentica con una contraseña
Autentícate con contraseña cuando tu aplicación de Java requiera autenticación con un nombre de usuario y una contraseña especificados. Según tu herramienta de compilación, cambia la configuración de acuerdo con las siguientes instrucciones:
Maven
Agrega la siguiente configuración de autenticación en la sección settings
del archivo ~/.m2/settings.xml
. Consulta la referencia Configuración de Maven para obtener más información. Si el archivo ~/.m2/settings.xml
no existe, crea uno nuevo.
<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 hacer esto, ejecuta el siguiente comando:
cat KEY_FILE_LOCATION | base64
Reemplaza KEY_FILE_LOCATION por la ubicación del archivo de claves JSON de la cuenta de servicio.
Gradle
Agrega la siguiente línea al archivo ~/.gradle/gradle.properties
para que la clave no sea visible en las compilaciones ni en el repositorio de control de código fuente.
artifactRegistryMavenSecret = KEY
Reemplaza KEY
por la clave privada del archivo de claves JSON de tu cuenta de servicio. Para json_key_base64
, artifactRegistryMavenSecret
contiene la contraseña encriptada en base64. Por ejemplo, base64 -w 0 KEY
.
En el archivo build.gradle
, especifica la configuración del repositorio con el siguiente ejemplo:
repositories {
maven {
url "artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java"
credentials {
username = "_json_key_base64"
password = "$artifactRegistryMavenSecret"
}
authentication {
basic(BasicAuthentication)
}
}
}
Reemplaza PROJECT_ID
por el ID del proyecto que seleccionaste cuando configuraste el Software de código abierto garantizado.
Actualiza el archivo de configuración del proyecto para que apunte al repositorio
Maven
Agrega la siguiente configuración a la sección correspondiente del archivo pom.xml
de tu proyecto de Maven. No reemplaces la configuración de autenticación.
<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>
Reemplaza PROJECT_ID
por el ID del proyecto que seleccionaste cuando configuraste el Software de código abierto garantizado.
Consulta la referencia de POM de Maven para obtener detalles sobre la estructura del archivo.
Gradle
Especifica la siguiente configuración de repositorio en tu archivo build.gradle
. No reemplaces la configuración de autenticación.
repositories {
maven {
url "artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java"
}
}
Reemplaza PROJECT_ID
por el ID del proyecto que seleccionaste cuando configuraste el Software de código abierto garantizado.
Actualiza el archivo de configuración del proyecto para agregar dependencias
Para descargar un artefacto como parte de tu compilación, debes declararlo como dependencia.
Maven
Declara los paquetes que deseas 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 deseas descargar en el archivo build.gradle
.
dependencies {
compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.17.1'
}
Obtén una lista de todos los paquetes de Java disponibles en Assured OSS
Si quieres usar una API para 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 Security Command Center.
¿Qué sigue?
- Descarga paquetes de Python mediante el acceso directo al repositorio en el nivel pagado
- Accede a los metadatos de seguridad y verifica los paquetes en el nivel pagado