Memvalidasi sertifikat klien

BERLAKU UNTUK: Semua tingkatAN API Management

Gunakan kebijakan validate-client-certificate untuk memberlakukan bahwa sertifikat yang disajikan oleh klien ke instans API Management cocok dengan aturan dan klaim validasi tertentu seperti subjek atau penerbit untuk satu atau beberapa identitas sertifikat.

Agar dianggap valid, sertifikat klien harus sesuai dengan semua aturan validasi yang ditentukan oleh atribut pada elemen tingkat atas dan mencocokkan semua klaim yang ditentukan untuk setidaknya salah satu identitas yang ditentukan.

Gunakan kebijakan ini untuk memeriksa properti sertifikat masuk terhadap properti yang diinginkan. Gunakan juga kebijakan ini untuk mengesampingkan validasi default sertifikat klien dalam kasus ini:

  • Jika Anda telah mengunggah sertifikat CA kustom untuk memvalidasi permintaan klien ke gateway terkelola
  • Jika Anda mengonfigurasi otoritas sertifikat kustom untuk memvalidasi permintaan klien ke gateway yang dikelola sendiri

Untuk informasi selengkapnya tentang sertifikat CA kustom dan otoritas sertifikat, lihat Cara menambahkan sertifikat CA kustom di Azure API Management.

Catatan

Tetapkan elemen kebijakan dan elemen turunan dalam urutan yang disediakan dalam pernyataan kebijakan. Pelajari lebih lanjut cara mengatur atau mengedit kebijakan API Management.

Pernyataan kebijakan

<validate-client-certificate 
    validate-revocation="true | false"
    validate-trust="true | false" 
    validate-not-before="true | false" 
    validate-not-after="true | false" 
    ignore-error="true | false">
    <identities>
        <identity
            thumbprint="certificate thumbprint"
            serial-number="certificate serial number"
            common-name="certificate common name"
            subject="certificate subject string"
            dns-name="certificate DNS name"
            issuer-subject="certificate issuer"
            issuer-thumbprint="certificate issuer thumbprint"
            issuer-certificate-id="certificate identifier"/>
    </identities>
</validate-client-certificate> 

Atribut

Nama Deskripsi Wajib diisi Default
validasi-pencabutan Boolean. Menentukan apakah sertifikat divalidasi terhadap daftar pencabutan online. Ekspresi kebijakan tidak diizinkan.  No true
validasi-kepercayaan Boolean. Menentukan apakah validasi harus gagal dalam rantai kasus tidak dapat berhasil dibangun ke CA tepercaya. Ekspresi kebijakan tidak diizinkan. No true
validate-not-before Boolean. Memvalidasi nilai terhadap waktu saat ini. Ekspresi kebijakan tidak diizinkan. Tanpa true
validasi-tidak-setelah Boolean. Memvalidasi nilai terhadap waktu saat ini. Ekspresi kebijakan tidak diizinkan. Tanpa true
ignore-error Boolean. Menentukan apakah kebijakan harus dilanjutkan ke penanganan berikutnya atau melompat ke kesalahan setelah validasi gagal. Ekspresi kebijakan tidak diizinkan. No false

Elemen

Elemen Deskripsi Wajib diisi
identitas Tambahkan elemen ini untuk menentukan satu atau beberapa identity elemen dengan klaim yang ditentukan pada sertifikat klien. No

atribut identitas

Nama Deskripsi Wajib diisi Default
thumbprint Thumbprint sertifikat. No T/A
serial-number Nomor seri sertifikat. No T/A
common-name Nama umum sertifikat (bagian dari string Subjek). No T/A
subjek String subjek. Harus mengikuti format Nama Khusus. No T/A
dns-name Nilai entri dnsName di dalam klaim Nama Alternatif Subjek. No T/A
issuer-subject Subjek pengeluar sertifikat. Harus mengikuti format Nama Khusus. No T/A
issuer-thumbprint Thumbprint penerbit. No T/A
issuer-certificate-id Pengidentifikasi entitas sertifikat yang ada dan mewakili kunci umum pengeluar sertifikat. Saling eksklusif dengan atribut pengeluar sertifikat lainnya. No T/A

Penggunaan

Contoh

Contoh berikut memvalidasi sertifikat klien agar sesuai dengan aturan validasi default kebijakan dan memeriksa apakah nama subjek dan pengeluar sertifikat cocok dengan nilai yang ditentukan.

<validate-client-certificate 
    validate-revocation="true" 
    validate-trust="true" 
    validate-not-before="true" 
    validate-not-after="true" 
    ignore-error="false">
    <identities>
        <identity
            subject="C=US, ST=Illinois, L=Chicago, O=Contoso Corp., CN=*.contoso.com"
            issuer-subject="C=BE, O=FabrikamSign nv-sa, OU=Root CA, CN=FabrikamSign Root CA" />
    </identities>
</validate-client-certificate> 

Untuk informasi selengkapnya tentang bekerja dengan kebijakan, lihat: