Mendownload paket Java menggunakan akses repositori langsung

Di paket premium, paket Assured OSS dihosting di repositori Artifact Registry yang dibuat dalam project yang Anda kontrol. Untuk mengakses dan mendownload paket Java secara langsung, Anda dapat terhubung ke repositori Artifact Registry untuk Assured OSS.

Dokumen ini hanya berlaku untuk paket premium Assured OSS. Untuk paket gratis, lihat Mendownload paket Java menggunakan akses repositori langsung untuk paket gratis.

Sebelum memulai

  1. Minta administrator untuk memberi Anda peran IAM Service Account Key Admin (roles/iam.serviceAccountKeyAdmin) di organisasi Anda. Anda memerlukan izin ini untuk mendapatkan string berenkode base64 dari kunci akun layanan. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

  2. Mengintegrasikan Assured OSS dengan Security Command Center.

  3. Validasi konektivitas ke Assured OSS untuk akun layanan yang diminta.

  4. Instal Google Cloud CLI versi terbaru. Jika Anda telah menginstal Google Cloud CLI sebelumnya, pastikan Anda memiliki versi terbaru dengan menjalankan perintah ini:

    gcloud components update
    

Menyiapkan autentikasi

Artifact Registry mendukung metode autentikasi berikut:

  • Autentikasi dengan bantuan kredensial
  • Autentikasi dengan sandi

Bagian berikut menjelaskan cara menyiapkan metode autentikasi ini.

Melakukan autentikasi dengan bantuan kredensial

Artifact Registry menyediakan Maven wagon dan plugin Gradle untuk digunakan sebagai helper kredensial. Opsi ini memberikan fleksibilitas paling tinggi.

Untuk menyiapkan Kredensial Default Aplikasi, lihat Menyiapkan autentikasi.

Menyiapkan helper kredensial Anda

Jika Anda menggunakan helper kredensial untuk menyiapkan autentikasi, buat perubahan berikut berdasarkan alat 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"
}

Melakukan autentikasi menggunakan sandi

Autentikasi menggunakan sandi saat aplikasi Java Anda memerlukan autentikasi dengan nama pengguna dan sandi yang ditentukan. Ubah setelan berdasarkan alat build Anda:

Maven

Tambahkan setelan autentikasi berikut di bagian settings pada file ~/.m2/settings.xml. Jika file belum ada, buat file tersebut. Untuk mengetahui informasi selengkapnya, lihat referensi Setelan 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>

Ganti KEY dengan encoding base64 dari seluruh file kunci JSON akun layanan. Untuk melakukannya, jalankan perintah berikut:

cat KEY_FILE_LOCATION  | base64

Ganti KEY_FILE_LOCATION dengan lokasi file kunci JSON akun layanan.

Gradle

Tambahkan baris berikut ke file ~/.gradle/gradle.properties Anda agar kunci tidak terlihat di build atau repositori kontrol sumber Anda.

artifactRegistryMavenSecret = KEY

Ganti KEY dengan kunci pribadi dari file kunci JSON akun layanan Anda. json_key_base64, artifactRegistryMavenSecret berisi sandi terenkripsi base64. Contoh, base64 -w 0 KEY.

Dalam file build.gradle, tentukan setelan repositori menggunakan contoh berikut:

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

Ganti kode berikut:

Memperbarui file konfigurasi project agar mengarah ke repositori

Maven

Tambahkan setelan berikut ke bagian yang sesuai dalam file pom.xml untuk project Maven Anda. Jangan ganti setelan autentikasi.

<project>
  <repositories>
    <repository>
      <id>artifact-registry</id>
      <url>artifactregistry://LOCATION-maven.pkg.dev/PROJECT_ID/assuredoss-java</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
  </repositories>
</project>

Ganti kode berikut:

Lihat referensi POM Maven untuk mengetahui detail tentang struktur file.

Gradle

Tentukan setelan repositori berikut dalam file build.gradle Anda. Jangan ganti setelan autentikasi.

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

Ganti kode berikut:

Mengupdate file konfigurasi project untuk menambahkan dependensi

Untuk mendownload artefak sebagai bagian dari build, artefak harus dideklarasikan sebagai dependensi.

Maven

Deklarasikan paket yang ingin Anda download di file pom.xml untuk project Maven Anda.

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

Gradle

Deklarasikan paket yang ingin Anda download dalam file build.gradle.

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

Mencantumkan semua paket Java yang tersedia di Assured OSS

Untuk menggunakan API guna mendapatkan daftar semua paket Java yang tersedia di repositori Artifact Registry, lihat Mencantumkan semua paket Java yang tersedia di Security Command Center.

Langkah berikutnya