Pemecahan masalah kesalahan autentikasi timbal balik di Application Gateway (Pratinjau)

Pelajari cara memecahkan masalah dengan autentikasi timbal balik saat menggunakan Application Gateway.

Gambaran Umum

Setelah mengonfigurasi autentikasi timbal balik pada Application Gateway, ada sejumlah kesalahan yang muncul saat mencoba menggunakan autentikasi timbal balik. Beberapa penyebab umum kesalahan meliputi:

  • Mengunggah sertifikat atau rantai sertifikat tanpa sertifikat OS root
  • Mengunggah rantai sertifikat dengan beberapa sertifikat OS root
  • Mengunggah rantai sertifikat yang hanya berisi sertifikat lembaran tanpa sertifikat OS
  • Kesalahan validasi karena DN pengeluar sertifikat tidak cocok

KIta akan melalui berbagai skenario yang mungkin Anda hadapi dan cara memecahkan masalah skenario tersebut. Kita kemudian akan mengatasi kode galat dan menjelaskan kemungkinan penyebab kode kesalahan tertentu yang mungkin Anda temui pada autentikasi timbal balik.

Pemecahan masalah skenario - masalah konfigurasi

Ada beberapa skenario yang mungkin Anda hadapi saat mencoba mengonfigurasi autentikasi timbal balik. Kita akan menelusuri cara memecahkan masalah beberapa jebakan yang paling umum.

Sertifikat yang ditandatangani sendiri

Masalah

Sertifikat klien yang Anda unggah adalah sertifikat yang ditandatangani sendiri dan menghasilkan kode galat ApplicationGatewayTrustedClientCertificateDoesNotContainAnyCACertificate.

Solusi

Periksa kembali apakah sertifikat yang ditandatangani sendiri yang Anda gunakan memiliki ekstensi BasicConstraintsOid = "2.5.29.19" yang menunjukkan subjek dapat bertindak sebagai OS. Hal ini akan memastikan bahwa sertifikat yang digunakan adalah sertifikat OS. Untuk informasi selengkapnya tentang cara membuat sertifikat klien yang ditandatangani sendiri, lihat sertifikat klien tepercaya.

Pemecahan masalah skenario - masalah konektivitas

Anda mungkin telah dapat mengonfigurasi autentikasi timbal balik tanpa masalah tetapi Anda mengalami masalah saat mengirim permintaan ke Application Gateway Anda. Kami menjelaskan beberapa masalah dan solusi umum di bagian berikut. Anda dapat menemukan properti sslClientVerify di log akses Application Gateway Anda.

SslClientVerify TIDAK ADA

Masalah

sslClientVerify properti muncul "TIDAK ADA" di akses log Anda.

Solusi

Hal ini terjadi saat klien tidak mengirim sertifikat klien ketika mengirim permintaan ke Application Gateway. Hal ini bisa terjadi jika klien yang mengirim permintaan ke Application Gateway tidak dikonfigurasi dengan benar untuk menggunakan sertifikat klien. Salah satu cara untuk memverifikasi bahwa pengaturan autentikasi klien pada Application Gateway berfungsi seperti yang diharapkan adalah melalui perintah OpenSSL berikut:

openssl s_client -connect <hostname:port> -cert <path-to-certificate> -key <client-private-key-file> 

Bendera -cert adalah sertifikat daun, -key bendera adalah file kunci pribadi klien.

Informasi selengkapnya tentang cara menggunakan perintah s_clientOpenSSL, lihat halaman manual mereka.

SslClientVerify GAGAL

Masalah

sslClientVerify properti muncul "GAGAL" di akses log Anda.

Solusi

Ada sejumlah potensi penyebab kegagalan dalam log akses. Di bawah ini adalah daftar penyebab umum kegagalan:

  • Tidak bisa mendapatkan sertifikat pengeluar sertifikat: Sertifikat pengeluar sertifikat dari sertifikat klien tidak bisa ditemukan. Hal ini biasanya berarti bahwa rantai sertifikat OS klien tepercaya tidak lengkap di Application Gateway. Validasi bahwa rantai sertifikat OS klien yang diunggah di Application Gateway sudah lengkap.
  • Tidak bisa mendapatkan sertifikat pengeluar sertifikat lokal: Mirip dengan tidak bisa mendapatkan sertifikat pengeluar sertifikat, sertifikat pengeluar sertifikat dari sertifikat klien tidak dapat ditemukan. Hal ini biasanya berarti bahwa rantai sertifikat OS klien tepercaya tidak lengkap di Application Gateway. Validasi bahwa rantai sertifikat OS klien yang diunggah di Application Gateway sudah lengkap.
  • Tidak bisa memverifikasi sertifikat pertama: Tidak bisa memverifikasi sertifikat klien. Kesalahan ini terjadi secara spesifik ketika klien hanya memberikan sertifikat daun, yang pengeluar sertifikatnya tidak tepercaya. Validasi bahwa rantai sertifikat OS klien yang diunggah di Application Gateway sudah lengkap.
  • Tidak bisa memverifikasi sertifikat pengeluar sertifikat klien: Kesalahan ini terjadi ketika konfigurasi VerifyClientCertIssuerDN diatur ke true. Hal ini biasanya terjadi ketika DN sertifikat pengeluar sertifikat klien tidak cocok dengan ClientCertificateIssuerDN yang diekstrak dari rantai sertifikat OS klien tepercaya yang diunggah oleh pelanggan. Informasi selengkapnya tentang cara Application Gateway mengekstrak ClientCertificateIssuerDN, lihat Application Gateway mengekstraksi DN pengeluar sertifikat. Sebaiknya, pastikan Anda mengunggah satu rantai sertifikat per file ke Application Gateway.

Untuk informasi selengkapnya tentang cara mengekstrak seluruh rantai sertifikat OS klien tepercaya untuk diunggah ke Application Gateway, lihat cara mengekstrak rantai sertifikat OS klien tepercaya.

Pemecahan masalah kode galat

Jika Anda melihat salah satu kode galat berikut, kami memiliki beberapa rekomendasi solusi untuk membantu mengatasi masalah yang mungkin Anda hadapi.

Kode galat: ApplicationGatewayTrustedClientCertificateMustSpecifyData

Penyebab

Ada data sertifikat yang hilang. Sertifikat yang diunggah bisa saja menjadi file kosong tanpa data sertifikat.

Solusi

Validasi bahwa file sertifikat yang diunggah tidak memiliki data yang hilang.

Kode galat: ApplicationGatewayTrustedClientCertificateMustNotHavePrivateKey

Penyebab

Ada kunci privat dalam rantai sertifikat. Seharusnya tidak ada kunci privat dalam rantai sertifikat.

Solusi

Periksa kembali rantai sertifikat yang diunggah dan hapus kunci privat yang merupakan bagian dari rantai. Unggah ulang rantai tanpa kunci privat.

Kode galat: ApplicationGatewayTrustedClientCertificateInvalidData

Penyebab

Ada dua kemungkinan penyebab di balik kode galat ini.

  1. Pemilahan gagal karena rantai tidak disajikan dalam format yang tepat. Application Gateway mengharapkan rantai sertifikat berada dalam format PEM dan juga mengharapkan data sertifikat individu dipisahkan.
  2. Pemilah tidak menemukan apa-apa untuk dipilah. File yang diunggah berpotensi hanya memiliki pemisah tetapi tidak ada data sertifikat.

Solusi

Tergantung pada penyebab kesalahan ini, ada dua solusi potensial.

  • Validasi bahwa rantai sertifikat yang diunggah berada dalam format yang tepat (PEM) dan bahwa data sertifikat dipisah dengan benar.
  • Periksa apakah file sertifikat yang diunggah berisi data sertifikat selain pemisah.

Kode galat: ApplicationGatewayTrustedClientCertificateDoesNotContainAnyCACertificate

Penyebab

Sertifikat yang diunggah hanya berisi sertifikat daun tanpa sertifikat OS. Mengunggah rantai sertifikat dengan sertifikat OS dan sertifikat daun dapat diterima karena sertifikat daun akan diabaikan, tetapi sertifikat harus memiliki OS.

Solusi

Periksa kembali apakah rantai sertifikat yang diunggah berisi lebih dari sekadar sertifikat daun. Ekstensi BasicConstraintsOid = "2.5.29.19" harus ada dan mengindikasikan bahwa subyek dapat bertindak sebagai OS.

Kode galat: ApplicationGatewayOnlyOneRootCAAllowedInTrustedClientCertificate

Penyebab

Rantai sertifikat berisi beberapa sertifikat OS akar atau tidak berisi sertifikat SO.

Solusi

Sertifikat yang diunggah harus berisi tepat satu sertifikat OS root (dan sertifikat OS menengah sebanyak yang dibutuhkan).