Memecahkan masalah penyedia OIDC

Dokumen ini memberikan panduan pemecahan masalah untuk masalah penyedia identitas OIDC dan AzureAD di GKE Identity Service.

Format sertifikat salah

Masalah ini terjadi saat nilai sertifikat mengalami error format. Masalah pemformatan dapat berkaitan dengan nilai sertifikat yang tidak dienkode base64 dan nilai yang dienkode base64 tetapi salah. Masalah ini juga dapat muncul jika sertifikat tidak ditandatangani oleh root certificate authority atau rantai kepercayaan yang diformat dengan benar tidak diberikan.

Pesan error

Contoh berikut adalah pesan error untuk skenario jika format sertifikat salah:

  • Sertifikat yang tidak dienkode base64: Failed creating HTTP client to fetch the Discovery URI "<Discovery-document URI>" with error: Unable to decode data field, the value should be Base64 encoded

  • Sertifikat yang tidak diformat dengan benar atau dienkode base64 tetapi salah: Unable to connect to 'https://example.com', encountered the following error: Problem with the SSL CA cert (path? access rights?). Details: error setting certificate verify locations: CAfile: /tmp/example.pem CApath: none (The certificate could not be read, this is most likely because it's empty or contains a formatting error. Please check your configuration.)

  • Sertifikat yang tidak diformat dengan benar atau dienkode base64 tetapi salah: Failed fetching the Discovery URI "<Discovery-document URI>" with error: Unable to load TLS certificates.

Solusi

Anda dapat menyelesaikan masalah ini dengan salah satu cara berikut:

  • Nilai sertifikat yang Anda berikan di ClientConfig harus berupa string berenkode base64 dan string berformat PEM. Untuk informasi selengkapnya, lihat Mengenkode sertifikat CA.
  • Jika penyedia Anda tidak menggunakan sertifikat yang ditandatangani oleh root certificate authority, Anda perlu mengonfigurasi GKE Identity Service dengan rantai kepercayaan sertifikat. Untuk mengetahui informasi selengkapnya, lihat Intermediate certificate.

Nilai sertifikat salah

Masalah ini terjadi saat sertifikat memiliki nilai yang tidak cocok. Dalam hal ini, format sertifikat sudah benar, tetapi tidak sesuai dengan server. Ini juga dapat menunjukkan bahwa tidak ada sertifikat dalam konfigurasi.

Nilai sertifikat dapat dianggap salah dalam salah satu skenario berikut:

  • Nilai sertifikat yang salah dibagikan di ClientConfig. Nilai sertifikat salah jika issuer sertifikat server tidak cocok dengan subject sertifikat yang dikonfigurasi.
  • Sertifikat di ClientConfig bukan string berenkode base64.
  • Rantai sertifikat tidak disediakan saat sertifikat perantara digunakan untuk menerbitkan sertifikat server.

Pesan error

Contoh berikut adalah pesan error untuk skenario saat ada ketidakcocokan dalam nilai sertifikat:

  • Rantai sertifikat tidak lengkap atau tidak cocok dengan server: SSL peer certificate was not OK. Details: SSL certificate problem: unable to get local issuer certificate

  • Rantai sertifikat tidak lengkap (sesuai dengan rantai parsial yang tidak valid yang tidak dimulai dari root atau tidak berdekatan): Failed fetching the Discovery URI "<Discovery-document URI>" with error: The server's TLS certificate did not match expectations.

  • Rantai sertifikat valid, tetapi tidak cocok dengan server OIDC: AIS was expecting the server to have a different certificate

  • Rantai sertifikat valid, tetapi tidak cocok dengan server OIDC: Failed fetching the Discovery URI "<Discovery-document URI>" with error: The server's TLS certificate did not match expectations.

Solusi

Nilai sertifikat yang Anda berikan di ClientConfig harus menyertakan rantai sertifikat yang diformat dengan benar dan sesuai dengan penyedia identitas. Untuk informasi selengkapnya tentang cara memformat dan mengenkode sertifikat, lihat Mengenkode sertifikat CA.