Menerbitkan sertifikat entitas akhir pribadi - AWS Private Certificate Authority

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menerbitkan sertifikat entitas akhir pribadi

Dengan adanya CA pribadi, Anda dapat meminta sertifikat entitas akhir pribadi dari AWS Certificate Manager (ACM) atau. AWS Private CA Kemampuan kedua layanan dibandingkan dalam tabel berikut.

Kemampuan

ACM

AWS Private CA

Menerbitkan sertifikat entitas akhir

✓ (menggunakan RequestCertificateatau konsol)

✓ (menggunakan IssueCertificate)

Asosiasi dengan penyeimbang beban dan layanan yang menghadap ke internet AWS

Tidak didukung

Perpanjangan sertifikat terkelola Didukung secara tidak langsung melalui ACM

Dukungan konsol

Tidak didukung

Dukungan API

Dukungan CLI

Saat AWS Private CA membuat sertifikat, ia mengikuti template yang menentukan jenis sertifikat dan panjang jalur. Jika tidak ada template ARN yang diberikan ke API atau pernyataan CLI yang membuat sertifikat, template EndEntityCertificate/V1 diterapkan secara default. Untuk informasi selengkapnya tentang templat sertifikat yang tersedia, lihat Memahami templat sertifikat.

Sementara sertifikat ACM dirancang di sekitar kepercayaan publik, AWS Private CA melayani kebutuhan PKI pribadi Anda. Akibatnya, Anda dapat mengonfigurasi sertifikat menggunakan AWS Private CA API dan CLI dengan cara yang tidak diizinkan oleh ACM. Sumber daya yang dimaksud meliputi:

Setelah membuat sertifikat TLS pribadi menggunakanAWS Private CA, Anda dapat mengimpornya ke ACM dan menggunakannya dengan layanan yang didukungAWS.

catatan

Sertifikat yang dibuat dengan prosedur di bawah ini, menggunakan issue-certificate perintah, atau dengan tindakan IssueCertificateAPI, tidak dapat langsung diekspor untuk digunakan di luarAWS. Namun, Anda dapat menggunakan CA pribadi Anda untuk menandatangani sertifikat yang dikeluarkan melalui ACM, dan sertifikat tersebut dapat diekspor bersama dengan kunci rahasianya. Untuk informasi selengkapnya, lihat Meminta sertifikat pribadi dan Mengekspor sertifikat pribadi di Panduan Pengguna ACM.

Menerbitkan sertifikat standar () AWS CLI

Anda dapat menggunakan sertifikat penerbitan perintah AWS Private CA CLI atau tindakan API IssueCertificateuntuk meminta sertifikat entitas akhir. Perintah ini memerlukan Amazon Resource Name (ARN) dari CA privat yang ingin Anda gunakan untuk menerbitkan sertifikat. Anda juga harus membuat permintaan penandatanganan sertifikat (CSR) menggunakan program seperti OpenSSL.

Jika Anda menggunakan AWS Private CA API atau AWS CLI menerbitkan sertifikat pribadi, sertifikat tidak dikelola, artinya Anda tidak dapat menggunakan konsol ACM, ACM CLI, atau ACM API untuk melihat atau mengekspornya, dan sertifikat tidak diperpanjang secara otomatis. Namun, Anda dapat menggunakan perintah get-certificate PCA untuk mengambil detail sertifikat, dan jika Anda memiliki CA, Anda dapat membuat laporan audit.

Pertimbangan saat membuat sertifikat

  • Sesuai dengan RFC 5280, panjang nama domain (secara teknis, Nama Umum) yang Anda berikan tidak boleh melebihi 64 oktet (karakter), termasuk periode. Untuk menambahkan nama domain yang lebih panjang, tentukan di bidang Nama Alternatif Subjek, yang mendukung panjang nama hingga 253 oktet.

  • Jika Anda menggunakan AWS CLI versi 1.6.3 atau yang lebih baru, gunakan awalan fileb:// saat menentukan file input yang disandikan base64 seperti CSR. Ini memastikan bahwa AWS Private CA mem-parsing data dengan benar.

Perintah OpenSSL berikut menghasilkan CSR dan kunci pribadi untuk sertifikat:

$ openssl req -out csr.pem -new -newkey rsa:2048 -nodes -keyout private-key.pem

Anda dapat memeriksa isi CSR sebagai berikut:

$ openssl req -in csr.pem -text -noout

Output yang dihasilkan harus menyerupai contoh singkat berikut:

Certificate Request: Data: Version: 0 (0x0) Subject: C=US, O=Big Org, CN=example.com Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: 00:ca:85:f4:3a:b7:5f:e2:66:be:fc:d8:97:65:3d: a4:3d:30:c6:02:0a:9e:1c:ca:bb:15:63:ca:22:81: 00:e1:a9:c0:69:64:75:57:56:53:a1:99:ee:e1:cd: ... aa:38:73:ff:3d:b7:00:74:82:8e:4a:5d:da:5f:79: 5a:89:52:e7:de:68:95:e0:16:9b:47:2d:57:49:2d: 9b:41:53:e2:7f:e1:bd:95:bf:eb:b3:a3:72:d6:a4: d3:63 Exponent: 65537 (0x10001) Attributes: a0:00 Signature Algorithm: sha256WithRSAEncryption 74:18:26:72:33:be:ef:ae:1d:1e:ff:15:e5:28:db:c1:e0:80: 42:2c:82:5a:34:aa:1a:70:df:fa:4f:19:e2:5a:0e:33:38:af: 21:aa:14:b4:85:35:9c:dd:73:98:1c:b7:ce:f3:ff:43:aa:11: .... 3c:b2:62:94:ad:94:11:55:c2:43:e0:5f:3b:39:d3:a6:4b:47: 09:6b:9d:6b:9b:95:15:10:25:be:8b:5c:cc:f1:ff:7b:26:6b: fa:81:df:e4:92:e5:3c:e5:7f:0e:d8:d9:6f:c5:a6:67:fb:2b: 0b:53:e5:22

Perintah berikut membuat sertifikat. Karena tidak ada templat yang ditentukan, sertifikat entitas akhir dasar dikeluarkan secara default.

$ aws acm-pca issue-certificate \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/11223344-1234-1122-2233-112233445566 \ --csr fileb://csr.pem \ --signing-algorithm "SHA256WITHRSA" \ --validity Value=365,Type="DAYS"

ARN dari sertifikat yang diterbitkan dikembalikan:

{ "CertificateArn":"arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID" }
catatan

AWS Private CAsegera mengembalikan ARN dengan nomor seri ketika menerima perintah. issue-certificate Namun, pemrosesan sertifikat terjadi secara asinkron dan masih bisa gagal. Jika ini terjadi, get-certificate perintah yang menggunakan ARN baru juga akan gagal.

Menerbitkan sertifikat dengan nama subjek kustom menggunakan template ApiPassThrough

Dalam contoh ini, sertifikat dikeluarkan yang berisi elemen nama subjek yang disesuaikan. Selain memasok CSR seperti yang ada diMenerbitkan sertifikat standar () AWS CLI, Anda meneruskan dua argumen tambahan ke issue-certificate perintah: ARN dari template APIPassThrough, dan file konfigurasi JSON yang menentukan atribut kustom dan pengidentifikasi objek (OID) mereka. Anda tidak dapat menggunakan StandardAttributes bersama denganCustomAttributes. Namun, Anda dapat melewati OID standar sebagai bagian dari. CustomAttributes Nama subjek default OID tercantum dalam tabel berikut (informasi dari RFC 4519 dan database referensi Global OID):

Nama subjek

Singkatan

ID Objek

Nama negara

c

2.5.4.6

commonName

cn

2.5.4.3

DNQualifier [kualifikasi nama terhormat]

2.5.4.46

GenerationQualifier

2.5.4.44

givenName

2.5.4.42

inisial

2.5.4.43

lokalitas

l

2.5.4.7

Nama Organisasi

o

2.5.4.10

organizationalUnitName

ou

2.5.4.11

nama samaran

2.5.4.65

SerialNumber

2.5.4.5

st [negara]

2.5.4.8

nama keluarga

sn

2.5.4.4

title

2.5.4.12

DomainComponent

dc

0.9.2342.19200300.100.1.25

userid

0.9.2342.19200300.100.1.1

File konfigurasi sampel api_passthrough_config.txt berisi kode berikut:

{ "Subject": { "CustomAttributes": [ { "ObjectIdentifier": "2.5.4.6", "Value": "US" }, { "ObjectIdentifier": "1.3.6.1.4.1.37244.1.1", "Value": "BCDABCDA12341234" }, { "ObjectIdentifier": "1.3.6.1.4.1.37244.1.5", "Value": "CDABCDAB12341234" } ] } }

Gunakan perintah berikut untuk mengeluarkan sertifikat:

$ aws acm-pca issue-certificate \ --validity Type=DAYS,Value=10 --signing-algorithm "SHA256WITHRSA" \ --csr fileb://csr.pem \ --api-passthrough file://api_passthrough_config.txt \ --template-arn arn:aws:acm-pca:::template/BlankEndEntityCertificate_APIPassthrough/V1 \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/11223344-1234-1122-2233-112233445566

ARN dari sertifikat yang diterbitkan dikembalikan:

{ "CertificateArn":"arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID" }

Ambil sertifikat secara lokal sebagai berikut:

$ aws acm-pca get-certificate \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/11223344-1234-1122-2233-112233445566 \ --certificate-arn arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID | \ jq -r .'Certificate' > cert.pem

Anda dapat memeriksa konten sertifikat menggunakan OpenSSL:

$ openssl x509 -in cert.pem -text -noout
catatan

Dimungkinkan juga untuk membuat CA pribadi yang meneruskan atribut khusus ke setiap sertifikat yang dikeluarkannya.

Mengeluarkan sertifikat dengan ekstensi kustom menggunakan template ApiPassThrough

Dalam contoh ini, sertifikat dikeluarkan yang berisi ekstensi yang disesuaikan. Untuk ini, Anda perlu meneruskan tiga argumen ke issue-certificate perintah: ARN dari template ApiPassThrough, dan file konfigurasi JSON yang menentukan ekstensi kustom, dan CSR seperti yang ditunjukkan. Menerbitkan sertifikat standar () AWS CLI

File konfigurasi sampel api_passthrough_config.txt berisi kode berikut:

{ "Extensions": { "CustomExtensions": [ { "ObjectIdentifier": "2.5.29.30", "Value": "MBWgEzARgg8ucGVybWl0dGVkLnRlc3Q=", "Critical": true } ] } }

Sertifikat yang disesuaikan dikeluarkan sebagai berikut:

$ aws acm-pca issue-certificate \ --validity Type=DAYS,Value=10 --signing-algorithm "SHA256WITHRSA" \ --csr fileb://csr.pem \ --api-passthrough file://api_passthrough_config.txt \ --template-arn arn:aws:acm-pca:::template/EndEntityCertificate_APIPassthrough/V1 \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/11223344-1234-1122-2233-112233445566

ARN dari sertifikat yang diterbitkan dikembalikan:

{ "CertificateArn":"arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID" }

Ambil sertifikat secara lokal sebagai berikut:

$ aws acm-pca get-certificate \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/11223344-1234-1122-2233-112233445566 \ --certificate-arn arn:aws:acm-pca:region:account:certificate-authority/CA_ID/certificate/certificate_ID | \ jq -r .'Certificate' > cert.pem

Anda dapat memeriksa konten sertifikat menggunakan OpenSSL:

$ openssl x509 -in cert.pem -text -noout