将 Assured OSS 与 Security Command Center,有保障的开源软件包托管在 Artifact Registry 中 您在自己控制的项目中创建的代码库。
本页面介绍了如何连接到 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"
}
使用密码进行身份验证
使用 Google Cloud 控制台进行身份验证 密码时, Java 应用要求使用指定的用户名和密码进行身份验证。 根据构建工具,根据以下说明更改设置:
Maven
在settings
~/.m2/settings.xml
文件。如需了解详情,请参阅 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
文件中,以便
该密钥在您的 build 或源代码控制代码库中不可见。
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 软件包。