Memvalidasi tujuan sertifikat

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.

Tujuan Penggunaan kunci

(wajib)

Penggunaan kunci yang diperpanjang

(opsional)

Sertifikat entitas server yang digunakan di keystore host virtual Apigee Edge
  • Tanda tangan digital
  • Penyandian kunci atau perjanjian kunci
Autentikasi server web TLS
Sertifikat entitas klien yang digunakan di truststore host virtual Apigee Edge
  • Tanda tangan digital atau perjanjian kunci
Autentikasi klien web TLS
Sertifikat entitas server yang digunakan di truststore server target Apigee Edge
  • Tanda tangan digital
  • Penyandian kunci atau perjanjian kunci
Autentikasi server web TLS
Sertifikat entitas klien yang digunakan di keystore server target Apigee Edge
  • Tanda tangan digital atau perjanjian kunci
Autentikasi klien web TLS
Sertifikat perantara dan root
  • Tanda tangan sertifikat
  • Tanda tangan daftar pencabutan sertifikat (CRL)

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.

  1. Login ke server tempat OpenSSL berada.
  2. 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
  3. 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
  4. 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