将 Assured OSS 与 Security Command Center 集成后,Assured OSS 软件包会托管在您控制的项目中创建的工件注册库仓库中。
本页面介绍了如何连接到 Artifact Registry 代码库 Assured OSS,用于直接访问和下载 Java 软件包。
本文档仅适用于 Assured OSS 高级层级。对于 请参阅通过直接代码库访问来下载 Java 软件包 免费层级。
准备工作
验证连接 针对请求的服务账号向 Assured OSS 转移数据。
安装最新版本的 Google Cloud CLI。
如果您之前安装了 Google Cloud CLI,请确保您拥有 最新版本
gcloud components update
设置身份验证
Artifact Registry 支持以下身份验证方法:
- 使用凭据帮助程序进行身份验证
- 使用密码进行身份验证
以下部分介绍了如何设置这些身份验证方法。
使用凭据帮助程序进行身份验证
Artifact Registry 提供 Maven 货车 和 Gradle 插件 用作 凭据帮助程序。 此选项最为灵活。
设置凭据帮助程序
如果您使用凭据帮助程序设置身份验证,请根据构建工具进行以下更改。
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"
}
使用密码进行身份验证
如果 Java 应用需要使用指定的用户名和密码进行身份验证,请使用密码进行身份验证。根据构建工具,根据以下说明更改设置:
Maven
在 ~/.m2/settings.xml
文件的 settings
部分中添加以下身份验证设置。如需了解详情,请参阅 Maven 设置参考
信息。如果 ~/.m2/settings.xml
文件不存在,请创建一个新文件。
<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>
将 KEY
替换为整个服务的 base64 编码
账号 JSON 密钥文件。为此,请运行以下命令:
cat KEY_FILE_LOCATION | base64
将 KEY_FILE_LOCATION 替换为服务账号 JSON 密钥的位置 文件。
Gradle
将以下代码行添加到 ~/.gradle/gradle.properties
文件中,使密钥在构建或源代码控制代码库中不可见。
artifactRegistryMavenSecret = KEY
将 KEY
替换为服务账号 JSON 密钥文件中的私钥。对于 json_key_base64
,artifactRegistryMavenSecret
包含 base64 加密密码。例如 base64 -w 0 KEY
。
在 build.gradle
文件中,使用以下示例指定代码库设置:
repositories {
maven {
url "artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java"
credentials {
username = "_json_key_base64"
password = "$artifactRegistryMavenSecret"
}
authentication {
basic(BasicAuthentication)
}
}
}
将 PROJECT_ID
替换为您在设置有保障的开源软件时选择的项目的 ID。
更新项目配置文件以指向代码库
Maven
将以下设置添加到 pom.xml
文件中的相应部分,
创建项目请勿替换身份验证设置。
<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>
将 PROJECT_ID
替换为您在设置有保障的开源软件时选择的项目的 ID。
如需详细了解文件的结构,请参阅 Maven 的 POM 参考文档。
Gradle
在 build.gradle
文件中指定以下代码库设置。错误做法
替换身份验证设置。
repositories {
maven {
url "artifactregistry://us-maven.pkg.dev/PROJECT_ID/assuredoss-java"
}
}
将 PROJECT_ID
替换为您在设置有保障的开源软件时选择的项目的 ID。
更新项目配置文件以添加依赖项
如需将工件作为构建的一部分下载,必须声明该工件 作为依赖项
Maven
在应用的 pom.xml
文件中声明要下载的软件包
Maven 项目中。
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.17.1</version>
</dependency>
Gradle
在 build.gradle
文件中声明您要下载的软件包。
dependencies {
compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.17.1'
}
列出 Assured OSS 中提供的所有 Java 软件包
如需使用 API 获取 Artifact Registry 仓库中所有 Java 软件包的列表,请参阅列出 Security Command Center 中提供的所有 Java 软件包。