Fazer o download de pacotes Java usando o acesso direto ao repositório

Depois de integrar o Assured OSS ao Security Command Center, os pacotes de software de código aberto Assured são hospedados em um Artifact Registry repositório criado em um projeto controlado por você.

Nesta página, explicamos como se conectar ao repositório do Artifact Registry para Assured OSS para acessar e baixar diretamente os pacotes Java.

Este documento se aplica apenas ao nível Premium do Assured OSS. Para o nível gratuito, consulte Fazer o download de pacotes Java usando o acesso direto ao repositório no nível gratuito.

Antes de começar

  1. Integrar o Assured OSS ao Security Command Center.

  2. Valide a conectividade com o Assured OSS para as contas de serviço solicitadas.

  3. Instale a versão mais recente da Google Cloud CLI.

  4. Se você já instalou a Google Cloud CLI, verifique se tem a versão mais recente executando o comando:

    gcloud components update
    

Configurar a autenticação

O Artifact Registry é compatível com os seguintes métodos de autenticação:

  • Autenticação com um auxiliar de credenciais
  • Autenticação com uma senha

As seções a seguir descrevem como configurar esses métodos de autenticação.

Autenticar com um auxiliar de credenciais

O Artifact Registry oferece Maven wagon (em inglês) e um Plug-in do Gradle para usar como ajudantes de credenciais. Essa opção oferece o máximo de flexibilidade.

Para configurar o Application Default Credentials, consulte Configure a autenticação.

Configurar auxiliares de credenciais

Se você estiver usando um auxiliar de credenciais para configurar a autenticação, faça o seguinte: com base na ferramenta de 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"
}

Autenticar usando senha

Autenticar usando senha quando sua O aplicativo Java exige autenticação com um nome de usuário e senha especificados. Dependendo da sua ferramenta de build, altere as configurações de acordo com as seguintes instruções:

Maven

Adicione as seguintes configurações de autenticação na seção settings do arquivo ~/.m2/settings.xml. Consulte a referência Configurações do Maven para mais informações. Se o arquivo ~/.m2/settings.xml não existir, crie um novo arquivo.

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

Substitua KEY pela codificação base64 do arquivo de chave JSON da conta de serviço. Para isso, execute este comando:

cat KEY_FILE_LOCATION  | base64

Substitua KEY_FILE_LOCATION pelo local da chave JSON da conta de serviço. .

Gradle

Adicione a linha a seguir ao arquivo ~/.gradle/gradle.properties para que a chave não fique visível nos builds ou no repositório de controle de origem.

artifactRegistryMavenSecret = KEY

Substitua KEY pela chave privada do JSON da sua conta de serviço. arquivo de chave. Para json_key_base64, o artifactRegistryMavenSecret contém o senha criptografada em Base64. Por exemplo, base64 -w 0 KEY.

No arquivo build.gradle, especifique as configurações do repositório usando o seguinte exemplo:

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

Substitua PROJECT_ID pelo ID do projeto que você selecionou ao configurar o software de código aberto garantido.

Atualize o arquivo de configuração do projeto para apontar para o repositório

Maven

Adicione as seguintes configurações à seção apropriada no arquivo pom.xml do seu projeto do Maven. Não substitua as configurações de autenticação.

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

Substitua PROJECT_ID pelo ID do projeto que você selecionou ao configurar o software de código aberto Assured.

Consulte a referência do POM do Maven para saber mais sobre a estrutura do arquivo.

Gradle

Especifique as seguintes configurações do repositório no arquivo build.gradle. O que não fazer substituir as configurações de autenticação.

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

Substitua PROJECT_ID pelo ID do projeto que você selecionou ao configurar o software de código aberto Assured.

Atualizar o arquivo de configuração do projeto para adicionar dependências

Para fazer o download de um artefato como parte do build, ele precisa ser declarado como uma dependência.

Maven

Declare os pacotes que você quer fazer o download no arquivo pom.xml do projeto Maven.

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

Gradle

Declare os pacotes que você quer fazer o download no arquivo build.gradle.

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

Listar todos os pacotes Java disponíveis no Assured OSS

Para usar uma API e receber uma lista de todos os pacotes Java disponíveis no repositório do Artifact Registry, consulte Listar todos os pacotes Java disponíveis no Security Command Center.

A seguir