Halaman ini menampilkan cara menyelesaikan masalah pada Secure Source Manager.
Pesan error saat membuat repositori
Error berikut muncul saat Anda mencoba membuat repositori:
There was an error while loading /repo/create. Try refreshing the page.
Masalah ini terjadi jika:
- Secure Source Manager API tidak diaktifkan di project Anda.
- Anda tidak memiliki peran Admin Repo di project atau izin untuk membuat repositori di instance Secure Source Manager.
Untuk mengatasi masalah ini:
- Aktifkan Secure Source Manager API di project Anda.
- Minta administrator Anda untuk memberi Anda peran berikut:
- Peran Admin Repo (
roles/securesourcemanager.repoAdmin) di project Anda. - Instance Accessor (
roles/securesourcemanager.instanceAccessor) di instance Secure Source Manager. - Instance Repository Creator (
roles/securesourcemanager.instanceRepositoryCreator) di instance Secure Source Manager.
- Peran Admin Repo (
Lihat Kontrol akses dengan IAM untuk mengetahui detail selengkapnya.
Pesan error saat mengclone repositori di Mac
Error berikut muncul saat Anda mencoba mengclone repositori:
git: 'credential-gcloud.sh' is not a git command. See 'git --help'. fatal: Authentication failed for [repo-url]
Masalah ini terjadi jika:
- gcloud CLI diinstal menggunakan Homebrew atau penginstalan non-standar lainnya.
git-credential-gcloud.shtidak ditambahkan ke PATH Anda.
Untuk mengatasi masalah ini:
- Jalankan
source $HOMEBREW_PREFIX/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc Periksa apakah
git-credential-gcloud.shada di jalur Anda dengan menjalankan perintah berikut:which git-credential-gcloud.sh
Koneksi SSH gagal dengan error "no matching"
Saat mencoba operasi Git melalui SSH, Anda mungkin menerima salah satu pesan error berikut:
Unable to negotiate with <host> port <port>: no matching key exchange method found.Unable to negotiate with <host> port <port>: no matching cipher found.Unable to negotiate with <host> port <port>: no matching MAC found.
Masalah ini terjadi jika klien SSH Anda tidak mendukung algoritma kriptografi yang diperlukan oleh Secure Source Manager. Hal ini dapat terjadi jika Anda menggunakan klien SSH yang lebih lama atau jika klien Anda tidak dikonfigurasi untuk menggunakan algoritma yang didukung.
Secure Source Manager memerlukan salah satu algoritma berikut:
- Algoritma Pertukaran Kunci:
curve25519-sha256,diffie-hellman-group14-sha256 - Cipher:
chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com - MAC:
hmac-sha2-256-etm@openssh.com,hmac-sha2-256
Untuk mengatasi masalah ini, update klien SSH Anda ke versi terbaru yang mendukung algoritma ini.
Permintaan HTTPS Git gagal dengan error izin ditolak atau tidak sah
Saat perintah Git dicoba melalui HTTPS, pesan error izin ditolak atau tidak sah akan diberikan.
Masalah ini terjadi jika salah satu hal berikut terjadi:
- File konfigurasi Git global tidak memiliki helper autentikasi Secure Source Manager.
- Penyimpanan kredensial bawaan Git digunakan, bukan memanggil helper autentikasi Secure Source Manager untuk mendapatkan kredensial baru.
- Helper kredensial sistem digunakan, bukan memanggil helper autentikasi Secure Source Manager untuk mendapatkan kredensial baru.
- Google Cloud CLI versi lama digunakan saat berinteraksi dengan repositori Secure Source Manager menggunakan HTTPS. Secure Source Manager memerlukan Google Cloud CLI versi 395.0.0 atau yang lebih baru.
Untuk mengatasi masalah ini:
Jalankan perintah berikut untuk menentukan konten konfigurasi Git global Anda.
git config --list | grep credentialJika Anda melihat baris yang mirip dengan
*credential*.helper=storedi macOS, ataucredential.helper = managerdi Windows OS, hapus baris tersebut, lalu lakukan autentikasi ulang menggunakangcloud auth loginsebelum mencoba perintah Git lagi.Jika respons tidak menyertakan
credential.https://*.*.sourcemanager.dev.helper=gcloud.shdi macOS atau Linux, ataucredential.https://*.*.sourcemanager.dev.helper=gcloud.cmddi Windows, tambahkan helper autentikasi Secure Source Manager ke konfigurasi Git global Anda:Linux
Untuk menambahkan helper autentikasi Secure Source Manager ke konfigurasi Git global Anda, jalankan perintah berikut:
git config --global credential.'https://*.*.sourcemanager.dev'.helper gcloud.shPastikan baris helper autentikasi ditambahkan ke konfigurasi Git global Anda dengan menjalankan perintah berikut:
git config --list | grep credentialOutput harus menyertakan
credential.https://*.*.sourcemanager.dev.helper=gcloud.sh.Lakukan autentikasi dengan menjalankan
gcloud auth login.Jalankan perintah Git untuk menguji autentikasi.
Windows
- Periksa versi gcloud CLI Anda dengan mengikuti petunjuk Menginstal Git dan Google Cloud CLI.
Untuk menambahkan helper autentikasi Secure Source Manager ke konfigurasi Git global Anda, jalankan perintah berikut:
git config --global credential.https://*.*.sourcemanager.dev.helper gcloud.cmdPastikan baris helper autentikasi ditambahkan ke konfigurasi Git global Anda dengan menjalankan perintah berikut:
git config --list | grep credentialOutput harus menyertakan
credential.https://*.*.sourcemanager.dev.helper=gcloud.cmd.Lakukan autentikasi dengan menjalankan
gcloud auth login.Jalankan perintah Git untuk menguji autentikasi.
Jika sebelumnya Anda menetapkan kredensial untuk host Git Anda menjadi
gcloud.sh, tetapi mendapatkan error seperti'credential-gcloud.sh' is not a git command, hal ini menunjukkan bahwa Git tidak dapat menemukan sk2ripgit-credential-gcloud.shdiPATHuntuk mesin Anda. PerbaruiPATHatau gantigcloud.shdi file gitconfig Anda dengan jalur absolut.
Permintaan HTTPS Git gagal dengan token tidak valid
Token OAuth yang valid diperlukan sebagai sandi untuk operasi HTTPS Git. Hal ini biasanya ditangani oleh helper kredensial Git, tetapi juga dapat berfungsi dengan token OAuth yang dibuat menggunakan pendekatan lain (misalnya, kredensial default aplikasi).
Jika permintaan Git ditolak karena token tidak valid, biasanya berarti informasi pengguna tidak dapat diekstrak dari token masuk. Ada beberapa kemungkinan penyebab error ini:
Login gcloud CLI Anda mungkin telah berakhir masa berlakunya.
Login lagi menggunakan
gcloud auth login.Token Anda tidak memiliki cakupan yang memadai. Token OAuth diharapkan memiliki cakupan berikut:
https://www.googleapis.com/auth/cloud-platformhttps://www.googleapis.com/auth/userinfo.email
Anda dapat memeriksa cakupan token dengan memanggil
curl https://oauth2.googleapis.com/tokeninfo?access_token=${TOKEN}Anda menggunakan token yang dibuat dari identitas workload fleet GKE:
- Token mentah yang dibuat dari identitas workload fleet GKE tidak didukung. Untuk mengetahui informasi selengkapnya, lihat SSM menampilkan error saat menggunakan token KSA dengan identitas workload fleet GKE.
Anda memiliki kebijakan organisasi yang mencegah penggunaan token di luar perimeter tertentu, misalnya Akses Kontekstual.
Untuk mengatasi masalah ini, tetapkan properti konfigurasi gcloud CLI
git_helper_use_adcketruedan perbarui Kredensial Default Aplikasi (ADC):Tetapkan properti
git_helper_use_adc:gcloud config set auth/git_helper_use_adc truePerbarui ADC Anda:
gcloud auth login --update-adc
Permintaan HTTPS Git gagal di macOS dengan error 403 karena kredensial yang tidak berlaku
Saat melakukan operasi Git melalui HTTPS di macOS, Anda mungkin menerima error 403.
Masalah ini dapat terjadi di macOS jika Anda menggunakan iCloud Keychain, yang dapat mengganggu token autentikasi gcloud CLI dengan menyimpan dan menyinkronkan token yang tidak berlaku. Token yang tidak berlaku ini dapat menyebabkan autentikasi gagal dengan Secure Source Manager, bahkan setelah Anda melakukan autentikasi ulang menggunakan gcloud auth login.
Untuk mengatasi masalah ini, hapus kredensial yang tidak berlaku secara manual dari Keychain Access:
- Buka aplikasi Keychain Access di Mac Anda (terletak di
/Applications/Utilities/). - Telusuri
sourcemanager.dev. - Hapus entri jenis "internet password" yang cocok dengan
*.*.sourcemanager.devatau URL instance Secure Source Manager Anda dengan mengklik kanan entri dan memilih Delete. - Setelah menghapus entri, coba lagi operasi Git Anda. Anda mungkin akan diminta untuk melakukan autentikasi ulang dengan gcloud CLI. Jika operasi Git terus gagal, jalankan
gcloud auth loginsebelum mencoba lagi.
SSM menampilkan error saat menggunakan token Akun Layanan Kubernetes (KSA) dengan identitas workload fleet GKE
Saat menggunakan identitas workload fleet GKE, token KSA mentah tidak didukung oleh Secure Source Manager. Penggunaan token ini akan menghasilkan error.
Untuk mengatasi masalah ini, Anda harus meniru akun layanan dan mengikat workload ke akun layanan Google. Anda juga perlu menambahkan anotasi berikut ke konfigurasi KSA:
iam.gke.io/gcp-service-account: SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
Project tidak muncul di pemilih produk antarmuka web
Saat menggunakan pemilih produk antarmuka web Secure Source Manager, project Anda tidak muncul.
Masalah ini terjadi jika Anda memiliki beberapa kredensial login untuk Secure Source Manager.
Untuk mengatasi masalah ini:
Hapus cookie Anda dengan menambahkan hal berikut ke URL instance Secure Source Manager Anda:
/_oauth/consentMisalnya, jika URL instance Anda adalah
https://my-instance-098765432123.us-central1.sourcemanager.dev/, masukkanhttps://my-instance-098765432123.us-central1.sourcemanager.dev/_oauth/consentke kolom alamat browser Anda, lalu login dengan kredensial yang benar.
File pemicu tidak memicu build
Jika build tidak dipicu seperti yang diharapkan setelah mengirimkan file pemicu, Anda mungkin mengalami salah satu masalah berikut:
- File pemicu tidak ada di cabang default. Untuk mengatasinya, pindahkan file pemicu ke cabang default Anda.
- File pemicu memiliki format yang tidak valid. Error ini ditunjukkan oleh banner di halaman repositori yang bertuliskan
Build triggers configuration error: .... Untuk memperbaikinya, baca Skema file pemicu. Jika konfigurasi file pemicu sudah benar, banner di halaman repositori akan bertuliskanValid build triggers configuration.
Error konfigurasi pemicu build
Setelah mengirimkan file triggers.yaml ke repositori Secure Source Manager, Anda akan mendapatkan error berikut yang ditampilkan di banner:
Build cannot be created.
Masalah ini terjadi karena alasan berikut:
- File konfigurasi Cloud Build memiliki opsi atau format yang tidak valid.
- Agen Layanan Secure Source Manager tidak memiliki peran Service Account Token Creator di akun layanan yang dikelola pengguna repositori.
- Akun layanan yang dikelola pengguna tidak memiliki peran Service Account User di akun layanan Cloud Build.
- Akun layanan yang dikelola pengguna tidak memiliki peran Cloud Build Editor di project tempat build berjalan.
- Kebijakan organisasi
iam.disableCrossProjectServiceAccountUsagememblokir penggunaan akun layanan yang dikelola pengguna (jika akun layanan berada di project lain).
Untuk mengatasi masalah ini:
- Pastikan Anda mengikuti Skema file pemicu yang benar .
- Pastikan semua peran yang diperlukan diberikan. Lihat Peran akun layanan yang diperlukan.
- Jika menggunakan akun layanan yang dikelola pengguna di project lain, pastikan kebijakan organisasi
iam.disableCrossProjectServiceAccountUsagedinonaktifkan di project yang menghosting akun layanan.
Build gagal selama eksekusi
Jika build berhasil dipicu, tetapi gagal selama eksekusi, commit terkait akan memiliki status commit Kegagalan.
Untuk memecahkan masalah build yang gagal, di halaman repositori, di samping status commit yang gagal, klik Details.
Log eksekusi Cloud Build akan terbuka. Untuk mengetahui informasi selengkapnya tentang cara memecahkan masalah build di Cloud Build, lihat Memecahkan masalah error build.
Git push ditolak karena data sensitif terdeteksi
Saat mengirim commit ke repositori dengan pemindaian rahasia diaktifkan, pengiriman Anda akan gagal dengan pesan error yang mirip dengan berikut ini:
remote: Push rejected: Sensitive data detected.
Masalah ini terjadi jika pemindaian rahasia atau template pemeriksaan kustom mengidentifikasi informasi sensitif dalam histori commit Anda.
Untuk mengatasi masalah ini:
- Kembalikan commit yang bermasalah menggunakan
git reset --softdan hapus informasi sensitif sebelum melakukan commit lagi. Jika informasi yang terdeteksi dapat diterima dan Anda memiliki izin yang sesuai, lewati pemeriksaan menggunakan opsi push
-o dlpskip=true:git push -o dlpskip=true origin BRANCH_NAME
Kuota harian tidak direset setelah dibuat ulang
Setelah menghapus instance Secure Source Manager dan membuatnya ulang dengan ID instance yang sama pada hari yang sama, Anda mungkin menerima error kuota habis atau batas tercapai untuk pemindaian rahasia.
Masalah ini terjadi karena kuota pemindaian rahasia adalah kuota Tarif harian yang ditautkan ke ID instance. Jika Anda menghapus dan membuat ulang instance dengan ID yang sama pada hari yang sama, penggunaan kuota tidak akan direset.
Untuk mengatasi masalah ini, Anda dapat melakukan salah satu hal berikut:
- Tunggu hingga hari kedua agar penggunaan kuota harian otomatis direset ke 0.
- Buat ulang instance dengan menggunakan ID instance yang berbeda dan unik.
- Lewati pemindaian rahasia untuk sementara, atau minta penambahan kuota. Untuk mengetahui informasi selengkapnya, lihat Menambah kuota yang tersedia.
Error saat mengonfigurasi akun layanan repositori
Error berikut muncul saat Anda mencoba membuat atau mengupdate repositori dengan akun layanan yang dikelola pengguna:
Permission denied on resource ...
Masalah ini terjadi jika Anda tidak memiliki peran Service Account User (roles/iam.serviceAccountUser) di akun layanan yang Anda coba kaitkan dengan repositori. Secure Source Manager memverifikasi bahwa Anda memiliki izin untuk bertindak sebagai akun layanan sebelum mengizinkan Anda mengaitkannya dengan repositori.
Untuk mengatasi masalah ini, minta administrator Anda untuk memberi Anda peran Service Account User di akun layanan.