Anda 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 berlaku di lingkungan mana pun tempat OpenSSL tersedia.
Sertifikat TLS umumnya diterbitkan dengan satu atau beberapa tujuan penggunaan. Biasanya, hal ini dilakukan untuk membatasi jumlah operasi yang dapat menggunakan kunci publik yang terdapat dalam sertifikat. Tujuan sertifikat tersedia dalam ekstensi sertifikat berikut:
- Penggunaan kunci
- Penggunaan kunci yang diperpanjang
Penggunaan kunci
Ekstensi penggunaan kunci menentukan tujuan (misalnya, penyandian, tanda tangan, atau penandatanganan sertifikat) 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
- Perjanjian kunci
- Penandatanganan sertifikat
- Penandatanganan CRL
- Khusus penyandi
- Khusus dekripsi
Untuk mengetahui informasi selengkapnya tentang ekstensi penggunaan kunci ini, lihat RFC5280, Penggunaan Kunci.
Penggunaan kunci yang diperpanjang
Ekstensi ini menunjukkan satu atau beberapa tujuan penggunaan kunci publik bersertifikat, selain atau sebagai pengganti tujuan dasar yang ditunjukkan dalam ekstensi penggunaan kunci. Secara umum, ekstensi ini hanya akan muncul dalam sertifikat entitas akhir.
Beberapa ekstensi penggunaan kunci yang diperpanjang adalah sebagai berikut:
-
TLS Web server authentication -
TLS Web client authentication -
anyExtendedKeyUsage
Kunci yang diperpanjang dapat berupa kritis atau non-kritis.
- Jika ekstensi bersifat kritis, sertifikat hanya boleh digunakan untuk tujuan yang ditunjukkan Jika sertifikat digunakan untuk tujuan lain, sertifikat tersebut melanggar kebijakan CA.
- Jika ekstensi bersifat non-kritis, ekstensi tersebut menunjukkan tujuan kunci yang dimaksudkan bersifat informatif dan tidak menyiratkan bahwa CA membatasi penggunaan kunci untuk tujuan yang ditunjukkan. Namun, aplikasi yang menggunakan sertifikat mungkin mengharuskan tujuan tertentu ditunjukkan agar sertifikat dapat diterima.
Jika sertifikat berisi kolom penggunaan kunci dan kolom penggunaan kunci yang diperpanjang sebagai kolom kritis, kedua kolom 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 membeli sertifikat, pastikan sertifikat tersebut memiliki penggunaan kunci yang tepat yang ditentukan untuk memenuhi persyaratan sertifikat klien atau server yang tanpa sertifikat tersebut handshake TLS akan gagal.
Penggunaan kunci dan penggunaan kunci yang diperpanjang yang direkomendasikan untuk sertifikat yang digunakan di Apigee Edge
| Tujuan |
Penggunaan kunci
(wajib) |
Penggunaan kunci yang diperpanjang
(opsional) |
| Sertifikat entitas server yang digunakan di keystore host virtual Apigee Edge |
|
Autentikasi server web TLS |
| Sertifikat entitas klien yang digunakan di truststore host virtual Apigee Edge |
|
Autentikasi klien web TLS |
| Sertifikat entitas server yang digunakan di truststore server target Apigee Edge |
|
Autentikasi server web TLS |
| Sertifikat entitas klien yang digunakan di keystore server target Apigee Edge |
|
Autentikasi klien web TLS |
| Sertifikat perantara dan root |
|
Sebelum memulai
Sebelum menggunakan langkah-langkah dalam dokumen ini, pastikan Anda memahami topik berikut:
- Jika Anda belum memahami rantai sertifikat, baca Rantai kepercayaan.
- Jika Anda belum memahami 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. Jika tidak, konversi sertifikat ke format PEM.
Memvalidasi tujuan sertifikat
Bagian ini menjelaskan langkah-langkah yang digunakan untuk memvalidasi tujuan sertifikat.
- Login 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, penggunaan kunci akan ditentukan sebagai kritis sebagai berikut:
openssl x509 -noout -ext keyUsage < intermediate.pem X509v3 Key Usage: critical Certificate Sign, CRL Sign -
Jalankan perintah berikut untuk mendapatkan penggunaan kunci yang diperpanjang untuk sertifikat.
Jika penggunaan kunci yang diperpanjang tidak ditentukan sebagai kritis, penggunaan kunci tersebut 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