Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Dokumen ini menjelaskan cara memvalidasi tujuan sertifikat sebelum Anda mengupload sertifikat ke keystore atau truststore. Proses ini mengandalkan OpenSSL untuk validasi dan dapat diterapkan di lingkungan mana pun tempat OpenSSL tersedia.
Sertifikat TLS umumnya diterbitkan dengan satu atau beberapa tujuan yang dapat digunakan. Biasanya hal ini dilakukan untuk membatasi jumlah operasi yang dapat menggunakan kunci publik yang terdapat dalam sertifikat. Tujuan sertifikat ini tersedia dalam ekstensi sertifikat berikut:
- Penggunaan kunci
- Penggunaan kunci yang diperpanjang
Penggunaan kunci
Ekstensi penggunaan kunci menentukan tujuan (misalnya, enkripsi, tanda tangan, atau penandatanganan sertifikat) dari kunci yang terdapat dalam sertifikat. Jika kunci publik digunakan untuk autentikasi entitas, ekstensi sertifikat harus memiliki penggunaan kunci Tanda tangan digital.
Berbagai ekstensi penggunaan kunci yang tersedia untuk sertifikat TLS yang dibuat menggunakan proses Certificate Authority (CA) adalah sebagai berikut:
- Tanda tangan digital
- Anti penyangkalan
- Penyandian kunci
- Penyandian data
- Kesepakatan utama
- Penandatanganan sertifikat
- Penandatanganan CRL
- Khusus encoding
- Hanya uraikan
Untuk informasi lebih lanjut tentang ekstensi penggunaan kunci ini, lihat RFC5280, Penggunaan Kunci.
Penggunaan kunci yang diperpanjang
Ekstensi ini menunjukkan satu atau beberapa tujuan yang dapat menggunakan kunci publik tersertifikasi, selain atau sebagai pengganti tujuan dasar yang ditunjukkan dalam ekstensi penggunaan kunci. Secara umum, ekstensi ini hanya akan muncul di sertifikat entitas akhir.
Berikut ini beberapa ekstensi penggunaan kunci tambahan yang umum:
-
TLS Web server authentication
-
TLS Web client authentication
-
anyExtendedKeyUsage
Kunci yang diperluas dapat bersifat penting atau tidak penting.
- Jika ekstensi bersifat penting, sertifikat hanya boleh digunakan untuk keperluan yang ditunjukkan. Jika sertifikat digunakan untuk tujuan lain, berarti sertifikat tersebut melanggar kebijakan CA.
- Jika bersifat tidak penting, ekstensi menunjukkan tujuan atau keperluan kunci yang dimaksudkan sebagai informasi dan tidak menyiratkan bahwa CA membatasi penggunaan kunci untuk tujuan yang ditunjukkan. Namun, aplikasi yang menggunakan sertifikat mungkin memerlukan penetapan tujuan tertentu agar sertifikat dapat diterima.
Jika sertifikat berisi kolom penggunaan kunci dan kolom penggunaan kunci yang diperluas sebagai hal penting, kedua kolom tersebut harus diproses secara terpisah, dan sertifikat hanya dapat digunakan untuk tujuan yang memenuhi kedua nilai penggunaan kunci. Namun, jika tidak ada tujuan yang dapat memenuhi kedua nilai penggunaan kunci, sertifikat tersebut tidak boleh digunakan untuk tujuan apa pun.
Saat Anda mendapatkan sertifikat, pastikan sertifikat tersebut memiliki penggunaan kunci yang tepat dan telah ditentukan untuk memenuhi persyaratan sertifikat klien atau server, yang tanpanya handshake TLS akan gagal.
Penggunaan kunci yang direkomendasikan dan penggunaan kunci yang diperpanjang untuk sertifikat yang digunakan di Apigee Edge
Tujuan |
Penggunaan kunci
(wajib) |
Penggunaan kunci yang diperpanjang
(opsional) |
Sertifikat entitas server yang digunakan di keystore of virtual host Apigee Edge |
|
Autentikasi server web TLS |
Sertifikat entity klien yang digunakan di truststore of virtual host Apigee Edge |
|
Autentikasi klien Web TLS |
Sertifikat entity server yang digunakan di truststore server target Apigee Edge |
|
Autentikasi server web TLS |
Sertifikat entitas klien yang digunakan dalam keystore server target Apigee Edge |
|
Autentikasi klien Web TLS |
Intermediate dan root certificate |
|
Sebelum memulai
Sebelum menggunakan langkah-langkah dalam dokumen ini, pastikan Anda memahami topik berikut:
- Jika Anda tidak terbiasa dengan rantai sertifikat, baca Rantai kepercayaan.
- Jika Anda tidak terbiasa dengan library OpenSSL, baca OpenSSL
- Jika Anda ingin mempelajari lebih lanjut ekstensi penggunaan kunci dan penggunaan kunci yang diperpanjang, baca RFC5280.
- Jika Anda ingin menggunakan contoh command line dalam panduan ini, instal atau update klien OpenSSL ke versi terbaru
- Pastikan sertifikat dalam format PEM dan jika belum, konversikan sertifikat ke format PEM.
Memvalidasi tujuan sertifikat
Bagian ini menjelaskan langkah-langkah yang digunakan untuk memvalidasi tujuan sertifikat.
- Masuk ke server tempat OpenSSL berada.
-
Untuk mendapatkan penggunaan kunci sertifikat, jalankan perintah OpenSSL berikut:
openssl x509 -noout -ext keyUsage < certificate
Dengan certificate adalah nama sertifikat.
Contoh output
openssl x509 -noout -ext keyUsage < entity.pem X509v3 Key Usage: critical Digital Signature, Key Encipherment openssl x509 -noout -ext keyUsage < intermediate.pem X509v3 Key Usage: critical Certificate Sign, CRL Sign
-
Jika penggunaan kunci bersifat wajib, maka hal tersebut akan ditetapkan sebagai penting sebagai berikut:
openssl x509 -noout -ext keyUsage < intermediate.pem X509v3 Key Usage: critical Certificate Sign, CRL Sign
-
Jalankan perintah berikut untuk mendapatkan extended key usage untuk sertifikat.
Jika penggunaan kunci yang diperpanjang tidak ditetapkan sebagai penting, maka itu adalah rekomendasi, bukan mandat.
openssl x509 -noout -ext extendedKeyUsage < certificate
Dengan certificate adalah nama sertifikat.
Contoh output
openssl x509 -noout -ext extendedKeyUsage < entity.pem X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication openssl x509 -noout -ext extendedKeyUsage < intermediate.pem X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication