Depois de integrar o AOSS com o Security Command Center, os pacotes do Assured Open Source Software são alojados num repositório do Artifact Registry criado num projeto que controla.
Esta página explica como pode estabelecer ligação ao repositório do Artifact Registry para o Assured OSS para aceder e transferir diretamente os pacotes Java.
Este documento aplica-se apenas ao nível premium do Assured OSS. Para o nível gratuito, consulte o artigo Transfira pacotes Java através do acesso direto ao repositório para o nível gratuito.
Antes de começar
Valide a conetividade ao OSS garantido para as contas de serviço pedidas.
Instale a versão mais recente da CLI do Google Cloud.
Se instalou a CLI Google Cloud anteriormente, certifique-se de que tem a versão mais recente executando o comando:
gcloud components update
Configure a autenticação
O Artifact Registry suporta os seguintes métodos de autenticação:
- Autenticação com um auxiliar de credenciais
- Autenticação com uma palavra-passe
As secções seguintes descrevem como configurar estes métodos de autenticação.
Autentique com um auxiliar de credenciais
O Artifact Registry fornece um Maven wagon e um plug-in do Gradle para usar como auxiliares de credenciais. Esta opção oferece a maior flexibilidade.
Para configurar as Credenciais padrão da aplicação, consulte o artigo Configure a autenticação.
Configure os seus ajudantes de credenciais
Se estiver a usar um auxiliar de credenciais para configurar a autenticação, faça as seguintes alterações com base na ferramenta de compilação.
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"
}
Faça a autenticação com a palavra-passe
Autentique com uma palavra-passe quando a sua aplicação Java requer autenticação com um nome de utilizador e uma palavra-passe especificados. Consoante a ferramenta de compilação, altere as definições de acordo com as seguintes instruções:
Maven
Adicione as seguintes definições de autenticação na secção settings
do ficheiro ~/.m2/settings.xml
. Consulte a referência Definições do Maven para mais informações. Se o ficheiro ~/.m2/settings.xml
não existir, crie um novo ficheiro.
<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 de todo o ficheiro de chave JSON da conta de serviço. Para o fazer, execute o seguinte comando:
cat KEY_FILE_LOCATION | base64
Substitua KEY_FILE_LOCATION pela localização do ficheiro de chave JSON da conta de serviço.
Gradle
Adicione a seguinte linha ao ficheiro ~/.gradle/gradle.properties
para que
a chave não fique visível nas suas compilações nem no repositório de controlo de origem.
artifactRegistryMavenSecret = KEY
Substitua KEY
pela chave privada do ficheiro de chave JSON da sua conta de serviço. Para json_key_base64
, o artifactRegistryMavenSecret
contém a palavra-passe encriptada em base64. Por exemplo, base64 -w 0 KEY
.
No ficheiro build.gradle
, especifique as definições do repositório através do 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 selecionou quando configurou o software de código aberto garantido.
Atualize o ficheiro de configuração do projeto para apontar para o repositório
Maven
Adicione as seguintes definições à secção adequada no ficheiro pom.xml
do seu projeto Maven. Não substitua as definiçõ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 selecionou quando configurou o software de código aberto garantido.
Consulte a referência POM do Maven para ver detalhes sobre a estrutura do ficheiro.
Gradle
Especifique as seguintes definições do repositório no ficheiro build.gradle
. Não
substitua as definições de autenticação.
repositories {
maven {
url "artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java"
}
}
Substitua PROJECT_ID
pelo ID do projeto que selecionou quando configurou o software de código aberto garantido.
Atualize o ficheiro de configuração do projeto para adicionar dependências
Para transferir um artefacto como parte da sua compilação, o artefacto tem de ser declarado como uma dependência.
Maven
Declare os pacotes que quer transferir no ficheiro pom.xml
para o seu projeto Maven.
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.17.1</version>
</dependency>
Gradle
Declare os pacotes que quer transferir no ficheiro build.gradle
.
dependencies {
compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.17.1'
}
Liste todos os pacotes Java disponíveis no Assured OSS
Para usar uma API para obter uma lista de todos os pacotes Java disponíveis no repositório do Artifact Registry, consulte Liste todos os pacotes Java disponíveis no Security Command Center.
O que se segue?
- Transfira pacotes Python através do acesso direto ao repositório no nível premium
- Aceda aos metadados de segurança e valide pacotes no nível premium