Depois de integrar o Assured OSS ao Security Command Center, os pacotes de software de código aberto garantido são hospedados em um repositório do Artifact Registry criado em um projeto controlado por você.
Nesta página, explicamos como se conectar ao repositório do Artifact Registry para o Assured OSS para acessar e fazer o download dos pacotes Java diretamente.
Este documento se aplica apenas ao nível premium do Assured OSS. Para o nível sem custo financeiro, consulte Fazer o download de pacotes Java usando o acesso direto ao repositório para o nível sem custo financeiro.
Antes de começar
Peça ao administrador para conceder a você o papel do IAM de Administrador da chave da conta de serviço (
roles/iam.serviceAccountKeyAdmin) na sua organização. Você precisa dessa permissão para receber a string codificada em base64 da chave da conta de serviço. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Valide a conectividade ao Assured OSS para as contas de serviço solicitadas.
Instale a versão mais recente da Google Cloud CLI. Se você já instalou a Google Cloud CLI, verifique se tem a versão mais recente executando este 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 um Maven wagon e um plug-in do Gradle para usar como auxiliares de credenciais. Essa opção oferece mais flexibilidade.
Para configurar as Application Default Credentials, consulte Configurar a autenticação.
Configurar os auxiliares de credenciais
Se você estiver usando um auxiliar de credenciais para configurar a autenticação, faça as seguintes mudanças 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
Autentique usando uma senha quando o aplicativo Java exigir autenticação com um nome de usuário e uma senha especificados. Mude as configurações com base na ferramenta de build:
Maven
Adicione as seguintes configurações de autenticação na seção settings do arquivo
~/.m2/settings.xml. Se o arquivo ainda não existir, crie-o. Para mais informações, consulte a referência de configurações do 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>
Substitua KEY pela codificação em base64 de todo o 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 do arquivo de chave JSON da conta de serviço.
Gradle
Adicione esta linha ao arquivo ~/.gradle/gradle.properties para que a chave não fique visível nas versões ou no repositório de controle de origem.
artifactRegistryMavenSecret = KEY
Substitua KEY pela chave privada do arquivo de chave JSON da conta de serviço. Para json_key_base64, o artifactRegistryMavenSecret contém a senha criptografada em base64. Por exemplo, base64 -w 0 KEY.
No arquivo build.gradle, especifique as configurações do repositório usando o exemplo a seguir:
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 selecionado ao configurar o Assured Open Source Software.
Atualizar 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 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 selecionado ao configurar o Assured Open Source Software.
Consulte a referência do POM do Maven para ver detalhes sobre a estrutura do arquivo.
Gradle
Especifique as seguintes configurações de repositório no arquivo build.gradle. Não substitua 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 selecionado ao configurar o Assured Open Source Software.
Atualizar o arquivo de configuração do projeto para adicionar dependências
Para fazer o download de um artefato como parte da 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 do 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 para 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
- Fazer o download de pacotes Python usando o acesso direto ao repositório no nível premium
- Acessar metadados de segurança e verificar pacotes no nível premium