

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

# Gunakan kartu pintar untuk otentikasi di Pribadi WorkSpaces
<a name="smart-cards"></a>

Windows dan Linux WorkSpaces pada bundel DCV memungkinkan penggunaan kartu pintar [Common Access Card (CAC)](https://www.cac.mil/Common-Access-Card) dan [Personal Identity Verification (PIV)](https://www.idmanagement.gov/university/piv/) untuk otentikasi.

Amazon WorkSpaces mendukung penggunaan kartu pintar untuk otentikasi *pra-sesi dan otentikasi* *dalam* sesi. Otentikasi pra-sesi mengacu pada otentikasi kartu pintar yang dilakukan saat pengguna masuk ke kartu mereka. WorkSpaces Autentikasi dalam sesi mengacu pada autentikasi yang dilakukan setelah masuk.

Misalnya, pengguna dapat menggunakan kartu pintar untuk autentikasi dalam sesi saat bekerja dengan web peramban dan aplikasi. Mereka juga dapat menggunakan kartu pintar untuk tindakan yang memerlukan izin administratif. Misalnya, jika pengguna memiliki izin administratif di Linux mereka WorkSpace, mereka dapat menggunakan kartu pintar untuk mengautentikasi diri mereka sendiri saat menjalankan `sudo` dan `sudo -i` perintah. 

**Topics**
+ [Persyaratan](#smart-cards-requirements)
+ [Batasan](#smart-cards-limitations)
+ [Konfigurasi Direktori](#smart-cards-directory-config)
+ [Aktifkan kartu pintar untuk Windows WorkSpaces](#smart-cards-windows-workspaces)
+ [Aktifkan kartu pintar untuk Ubuntu, Rocky Linux, dan Red Hat Enterprise Linux WorkSpaces](#smart-cards-linux-workspaces)
+ [Aktifkan kartu pintar untuk Amazon Linux 2 WorkSpaces](#smart-cards-amazon-linux-workspaces)

## Persyaratan
<a name="smart-cards-requirements"></a>
+ Direktori Konektor Direktori Aktif (AD Connector) diperlukan untuk autentikasi pra-sesi. AD Connector menggunakan autentikasi Keamanan Lapisan Pengangkutan berbasis sertifikat (mutual TLS) untuk mengautentikasi pengguna ke Direktori Aktif menggunakan sertifikat kartu pintar berbasis perangkat keras atau perangkat lunak. Untuk informasi selengkapnya tentang cara mengonfigurasi AD Connector dan direktori on-premise Anda, lihat [Konfigurasi Direktori](#smart-cards-directory-config).
+ Untuk menggunakan kartu pintar dengan Windows atau Linux WorkSpace, pengguna harus menggunakan klien Amazon WorkSpaces Windows versi 3.1.1 atau yang lebih baru, klien WorkSpaces macOS versi 3.1.5 atau yang lebih baru, atau klien Ubuntu 22.04 versi 2024.1 WorkSpaces atau yang lebih baru (otentikasi kartu pintar tidak didukung dengan klien Ubuntu 20.04). WorkSpaces Untuk informasi selengkapnya tentang penggunaan kartu pintar dengan klien Windows dan macOS, lihat [Dukungan Kartu Cerdas](https://docs.aws.amazon.com/workspaces/latest/userguide/smart_card_support.html) di * WorkSpaces Panduan Pengguna Amazon*. 
+ CA root dan sertifikat kartu pintar harus memenuhi persyaratan tertentu. Untuk informasi selengkapnya, lihat [Mengaktifkan autentikasi mTLS di AD Connector untuk digunakan dengan kartu pintar](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_connector_clientauth.html) di *Panduan AWS Directory Service Administrasi* dan [Persyaratan Sertifikat](https://docs.microsoft.com/en-us/windows/security/identity-protection/smart-cards/smart-card-certificate-requirements-and-enumeration#certificate-requirements) dalam dokumentasi Microsoft. 

  Selain persyaratan tersebut, sertifikat pengguna yang digunakan untuk otentikasi kartu pintar ke Amazon WorkSpaces harus menyertakan atribut berikut:
  + Pengguna AD userPrincipalName (UPN) di bidang subjectAltName (SAN) sertifikat. Kami merekomendasikan penerbitan sertifikat kartu pintar untuk UPN default pengguna.
**catatan**  
Amazon Linux 2 WorkSpaces mengandalkan UPN untuk certificate-to-user pemetaan. Linux yang lebih baru WorkSpaces, seperti Ubuntu, Rocky Linux, dan Red Hat Enterprise Linux WorkSpaces, mendukung metode [pemetaan](https://www.idmanagement.gov/implement/scl-windows/#step-4---account-linking) yang lebih aman.
  + Autentikasi klien (1.3.6.1.5.5.7.3.2) atribut Atribut Extended Key Usage (EKU).
  + Logon Kartu Pintar (1.3.6.1.4.1.311.20.2.2) atribut EKU.
+ Untuk autentikasi pra-sesi, Online Certificate Status Protocol (OCSP) diperlukan untuk memeriksa sertifikat pencabutan. Untuk autentikasi dalam sesi, OCSP direkomendasikan, tetapi tidak diperlukan.
**catatan**  
Ubuntu WorkSpaces, Rocky Linux WorkSpaces, dan Red Hat Enterprise Linux WorkSpaces memerlukan OCSP untuk otentikasi dalam sesi secara default, dan verifikasi OCSP dalam sistem ini mengharuskan responder OCSP untuk mengaktifkan ekstensi NONCE untuk mencegah serangan replay. Untuk menonaktifkan ekstensi NONCE, verifikasi OCSP dalam sesi harus dinonaktifkan sama sekali. Untuk menonaktifkan verifikasi OCSP di Ubuntu, Rocky Linux, dan Red Hat Enterprise Linux WorkSpaces, buat file baru `/etc/sssd/conf.d/disable-ocsp.conf` dengan konten berikut:   

  ```
  [sssd]
  certificate_verification = no_ocsp
  ```

## Batasan
<a name="smart-cards-limitations"></a>
+ Hanya aplikasi klien WorkSpaces Windows versi 3.1.1 atau yang lebih baru, aplikasi klien WorkSpaces macOS versi 3.1.5 atau yang lebih baru, WorkSpaces dan aplikasi klien Ubuntu 22.04 versi 2024.1 atau yang lebih baru saat ini didukung untuk otentikasi kartu pintar. WorkSpaces Ubuntu 20.04 atau aplikasi klien sebelumnya tidak didukung untuk otentikasi kartu pintar.
+ Aplikasi klien WorkSpaces Windows 3.1.1 atau yang lebih baru mendukung kartu pintar hanya ketika klien berjalan pada versi Windows 64-bit.
+ Hanya direktori AD Connector yang saat ini didukung untuk autentikasi kartu pintar.
+ Otentikasi dalam sesi tersedia di semua Wilayah di mana DCV didukung. Autentikasi pra-sesi tersedia di Wilayah berikut:
  + Wilayah Asia Pasifik (Sydney)
  + Wilayah Asia Pacific (Tokyo)
  + Wilayah Eropa (Irlandia)
  + AWS GovCloud Wilayah (AS-Timur)
  + AWS GovCloud Wilayah (AS-Barat)
  + Wilayah AS Timur (Virginia Utara)
  + Wilayah AS Barat (Oregon)
+ Untuk otentikasi dalam sesi dan otentikasi pra-sesi di Linux atau Windows WorkSpaces, hanya satu kartu pintar yang saat ini diizinkan pada satu waktu. Penggunaan beberapa kartu secara simultan dapat berfungsi, tetapi tidak didukung.
+ Untuk otentikasi pra-sesi, mengaktifkan otentikasi kartu pintar dan otentikasi masuk pada direktori yang sama saat ini tidak didukung.
+ Hanya kartu CAC dan PIV yang didukung saat ini. Jenis lain dari perangkat keras atau kartu pintar berbasis perangkat lunak mungkin juga berfungsi, tetapi belum sepenuhnya diuji untuk digunakan dengan DCV.

## Konfigurasi Direktori
<a name="smart-cards-directory-config"></a>

Untuk mengaktifkan autentikasi kartu pintar, Anda harus mengonfigurasi direktori AD Connector dan direktori on-premise Anda dengan cara berikut.

**Konfigurasi direktori AD Connector**  
Sebelum memulai, pastikan direktori AD Connector Anda telah disiapkan seperti yang dijelaskan di [ Prasyarat AD Connector](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/prereq_connector.html) di *Panduan Administrasi AWS Directory Service *. Secara khusus, pastikan bahwa Anda telah membuka port yang diperlukan di firewall Anda. 

*Untuk menyelesaikan konfigurasi direktori AD Connector, ikuti petunjuk di [Aktifkan autentikasi mTLS di AD Connector untuk digunakan dengan kartu pintar di Panduan Administrasi](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_connector_clientauth.html)AWS Directory Service .*

**catatan**  
Otentikasi kartu pintar membutuhkan Kerberos Constrained Delegation (KCD) agar berfungsi dengan baik. KCD memerlukan bagian nama pengguna dari akun layanan AD Connector agar sesuai dengan AMAccount Nama s pengguna yang sama. AMAccountNama A tidak boleh melebihi 20 karakter.

**Konfigurasi direktori on-premise**  
Selain mengonfigurasi direktori AD Connector Anda:
+ Pastikan sertifikat yang dikeluarkan untuk pengontrol domain untuk direktori lokal Anda memiliki set penggunaan kunci tambahan (EKU) “Otentikasi KDC”. Untuk melakukannya, gunakan templat sertifikat Autentikasi Kerberos default Layanan Domain Direktori Aktif (AD DS). Jangan menggunakan templat sertifikat pengendali Domain atau templat sertifikat autentikasi pengendali Domain karena templat tersebut tidak berisi pengaturan yang diperlukan untuk autentikasi kartu pintar.
+ Untuk Linux WorkSpaces, pastikan bahwa responder OCSP untuk sertifikat kartu pintar yang mengeluarkan CA telah mengaktifkan ekstensi NONCE. Jika tidak dapat diaktifkan, verifikasi OCSP dalam sesi harus dinonaktifkan di Ubuntu, Rocky Linux, dan Red Hat Enterprise Linux. WorkSpaces Untuk menonaktifkan verifikasi OCSP, buat file baru `/etc/sssd/conf.d/disable-ocsp.conf` dengan konten berikut: 

  ```
  [sssd]
  certificate_verification = no_ocsp
  ```

## Aktifkan kartu pintar untuk Windows WorkSpaces
<a name="smart-cards-windows-workspaces"></a>

Untuk panduan umum tentang cara mengaktifkan autentikasi kartu pintar pada Windows, lihat [ Pedoman untuk mengaktifkan kartu pintar logon dengan otoritas sertifikasi (CA) pihak ketiga](https://docs.microsoft.com/troubleshoot/windows-server/windows-security/enabling-smart-card-logon-third-party-certification-authorities) dalam dokumentasi Microsoft.

**Untuk mendeteksi layar kunci Windows dan memutus sesi**  
Untuk memungkinkan pengguna membuka kunci Windows WorkSpaces yang diaktifkan untuk otentikasi pra-sesi kartu pintar saat layar terkunci, Anda dapat mengaktifkan deteksi layar kunci Windows di sesi pengguna. Ketika layar kunci Windows terdeteksi, WorkSpace sesi terputus, dan pengguna dapat menyambung kembali dari WorkSpaces klien dengan menggunakan kartu pintar mereka.

 Anda dapat mengaktifkan pemutusan sesi ketika layar kunci Windows terdeteksi dengan menggunakan pengaturan Kebijakan Grup. Untuk informasi selengkapnya, lihat [Konfigurasikan sesi pemutusan pada kunci layar untuk DCV](group_policy.md#gp_lock_screen_in_wsp).

**Untuk mengaktifkan autentikasi dalam sesi atau pra-sesi**  
Secara default, Windows tidak WorkSpaces diaktifkan untuk mendukung penggunaan kartu pintar untuk otentikasi pra-sesi atau dalam sesi. Jika diperlukan, Anda dapat mengaktifkan otentikasi dalam sesi dan pra-sesi untuk Windows WorkSpaces dengan menggunakan pengaturan Kebijakan Grup. Untuk informasi selengkapnya, lihat [Konfigurasikan pengalihan kartu pintar untuk DCV](group_policy.md#gp_smart_cards_in_wsp).

Untuk menggunakan autentikasi pra-sesi, selain memperbarui pengaturan Kebijakan Grup, Anda juga harus mengaktifkan otentikasi pra-sesi melalui pengaturan direktori AD Connector. Untuk informasi selengkapnya, ikuti petunjuk di [Aktifkan autentikasi mTLS di AD Connector untuk digunakan dalam kartu pintar](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_connector_clientauth.html) di Panduan *AWS Directory Service Administrasi*.

**Untuk mengaktifkan pengguna untuk menggunakan kartu pintar di peramban**  
Jika pengguna Anda menggunakan Chrome sebagai peramban mereka, tidak diperlukan konfigurasi khusus untuk menggunakan kartu pintar.

Jika pengguna Anda menggunakan Firefox sebagai peramban mereka, Anda dapat mengaktifkan pengguna Anda untuk menggunakan kartu pintar di Firefox melalui Kebijakan Grup. Anda dapat menggunakan [templat Kebijakan Grup Firefox](https://github.com/mozilla/policy-templates/tree/master/windows) ini di GitHub.

Misalnya, Anda dapat menginstal versi 64-bit [OpenSC](https://github.com/OpenSC/OpenSC/wiki) untuk Windows untuk mendukung PKCS \#11, lalu menggunakan pengaturan Kebijakan Grup berikut, saat `{{NAME_OF_DEVICE}}` adalah nilai apa pun yang ingin Anda gunakan untuk mengidentifikasi PKCS \#11, seperti `OpenSC`, dan saat `{{PATH_TO_LIBRARY_FOR_DEVICE}}` adalah jalur ke modul PKCS \#11. Jalur ini harus menuju ke pusataka dengan ekstensi .DLL, seperti `C:\Program Files\OpenSC Project\OpenSC\pkcs11\onepin-opensc-pkcs11.dll`.

```
Software\Policies\Mozilla\Firefox\SecurityDevices\{{NAME_OF_DEVICE}} = {{PATH_TO_LIBRARY_FOR_DEVICE}}
```

**Tip**  
Jika Anda menggunakan OpenSC, Anda juga dapat memuat modul `pkcs11` OpenSC ke Firefox dengan menjalankan program `pkcs11-register.exe`. Untuk menjalankan program ini, klik file dua kali pada `C:\Program Files\OpenSC Project\OpenSC\tools\pkcs11-register.exe`, atau buka jendela Command Prompt dan jalankan perintah berikut:  

```
"C:\Program Files\OpenSC Project\OpenSC\tools\pkcs11-register.exe"
```
Untuk memverifikasi bahwa modul `pkcs11` OpenSC telah dimuat ke Firefox, lakukan hal berikut:  
Jika Firefox sudah berjalan, tutup Firefox.
Buka Firefox. Pilih tombol menu ![Firefox menu button](http://docs.aws.amazon.com/id_id/workspaces/latest/adminguide/images/firefox-menu-button.png) Di pojok kanan atas, lalu pilih **Opsi**. 
Pada halaman **about:preferences**, di sebelah kiri panel navigasi, pilih **Privasi & Keamanan**.
Di bawah **Sertifikat**, pilih **Perangkat Keamanan**.
Di kotak dialog **Pengelola Perangkat**, Anda akan melihat **kerangka kerja kartu pintar OpenSC (0.21)** di navigasi kiri, dan harus memiliki nilai berikut ketika memilihnya:  
**Modul**: `OpenSC smartcard framework (0.21)`  
**Jalan**: `C:\Program Files\OpenSC Project\OpenSC\pkcs11\onepin-opensc-pkcs11.dll`

**Pemecahan masalah**  
Untuk informasi tentang pemecahan masalah kartu pintar, lihat [ Masalah sertifikat dan konfigurasi](https://docs.microsoft.com/troubleshoot/windows-server/windows-security/enabling-smart-card-logon-third-party-certification-authorities#certificate-and-configuration-problems) dalam dokumentasi Microsoft. 

Beberapa masalah umum yang dapat menyebabkan masalah:
+ Pemetaan yang salah dari slot ke sertifikat.
+ Memiliki beberapa sertifikat pada kartu pintar yang dapat dicocokkan dengan pengguna. Sertifikat dicocokkan menggunakan kriteria berikut:
  + CA root untuk sertifikat.
  + Bidang sertifikat `<KU>` dan `<EKU>`.
  + UPN dalam subjek sertifikat.
+ Memiliki beberapa sertifikat yang memiliki `<EKU>msScLogin` dalam penggunaan kunci mereka.

Secara umum, yang terbaik adalah hanya memiliki satu sertifikat untuk autentikasi kartu pintar yang dipetakan ke slot pertama dalam kartu pintar.

Alat untuk mengelola sertifikat dan kunci pada kartu pintar (seperti menghapus atau memetakan ulang sertifikat dan kunci) mungkin khusus produsen. Untuk informasi selengkapnya, lihat dokumentasi yang disediakan oleh produsen kartu cerdas Anda.

## Aktifkan kartu pintar untuk Ubuntu, Rocky Linux, dan Red Hat Enterprise Linux WorkSpaces
<a name="smart-cards-linux-workspaces"></a>

Untuk mengaktifkan penggunaan kartu pintar di Ubuntu, Rocky Linux, dan Red Hat Enterprise Linux WorkSpaces, Anda harus menyertakan root dan semua sertifikat CA perantara dalam WorkSpace gambar untuk semua kartu pintar yang CAs mengeluarkan, dan untuk semua sertifikat CAs pengontrol domain yang diterbitkan.

**Untuk mendapatkan sertifikat CA Anda:** Anda dapat memperoleh sertifikat CA Anda dengan beberapa cara:
+ Anda dapat menggunakan bundel sertifikat CA dari otoritas sertifikasi pihak ketiga. 
+ Anda dapat mengekspor sertifikat CA Anda sendiri dengan menggunakan situs Pendaftaran Web, yang merupakan salah satu `http://{{ip_address}}/certsrv` atau`http://{{fqdn}}/certsrv`, di mana `{{ip_address}}` dan `{{fqdn}}` merupakan alamat IP dan nama domain yang sepenuhnya memenuhi syarat (FQDN) dari server CA. Untuk informasi selengkapnya tentang penggunaan situs Web pendaftaran, lihat [ Cara mengekspor Sertifikat Otoritas Sertifikasi (CA) akar](https://docs.microsoft.com/troubleshoot/windows-server/identity/export-root-certification-authority-certificate) dalam dokumentasi Microsoft. 
+ Anda dapat menggunakan prosedur berikut untuk mengekspor sertifikat CA dari server CA yang menjalankan Active Directory Certificate Services (AD CS). Untuk informasi selengkapnya tentang menginstal AD CS, lihat [ Instal Otoritas Sertifikasi (CA)](https://docs.microsoft.com/windows-server/networking/core-network-guide/cncg/server-certs/install-the-certification-authority) dalam dokumentasi Microsoft. 

  1. Masuk ke server CA menggunakan akun administrator.

  1. Dari menu **start** Windows, buka jendela prompt perintah (**Mulai** > **Sistem Windows** > **Prompt Perintah**). 

  1. Gunakan perintah berikut untuk mengekspor sertifikat CA ke file baru, di mana `{{rootca}}.cer` nama file baru:

     ```
     certutil -ca.cert {{rootca}}.cer
     ```

     Untuk informasi selengkapnya tentang menjalankan certutil, lihat [ certutil](https://docs.microsoft.com/windows-server/administration/windows-commands/certutil) dalam dokumentasi Microsoft.

  1. Gunakan perintah OpenSSL berikut untuk mengonversi sertifikat CA yang diekspor dari format DER ke format PEM, {{rootca}} di mana nama sertifikat. Untuk informasi selengkapnya tentang OpenSSL, lihat [www.openssl.org](https://www.openssl.org/).

     ```
     openssl x509 -inform der -in {{rootca}}.cer -out /tmp/{{rootca}}.pem
     ```

**Untuk menambahkan sertifikat CA Anda ke Linux Anda WorkSpaces**

Untuk membantu Anda mengaktifkan kartu pintar, kami telah menambahkan `enable_smartcard` skrip ke bundel Linux WorkSpaces DCV kami. Skrip tersebut melakukan tugas-tugas berikut:
+ Mengimpor sertifikat CA Anda ke dalam bundel PEM pribadi yang mendefinisikan root kepercayaan untuk SSSD di Linux). WorkSpaces
+ Memperbarui konfigurasi SSSD, PAM, dan Kerberos, yang mencakup pengaktifan `PKINIT` (otentikasi Kerberos menggunakan sertifikat alih-alih kata sandi) selama penyediaan. WorkSpace

Prosedur berikut menjelaskan cara menggunakan `enable_smartcard` skrip untuk mengimpor sertifikat CA Anda dan untuk mengaktifkan otentikasi kartu pintar untuk Linux WorkSpaces Anda.

1. Buat Linux baru WorkSpace dengan protokol DCV diaktifkan. Saat meluncurkan WorkSpace di WorkSpaces konsol Amazon, pada halaman **Select Bundles**, pastikan untuk memilih **DCV** untuk protokol, lalu pilih salah satu bundel WorkSpaces publik Linux.

1. Pada yang baru dibuat WorkSpace, pastikan `/etc/skylight.conf` file memiliki `pam_smartcard = true` baris di `[features]` bagian: 

   ```
   [features]
   pam_smartcard = true
   ```
**catatan**  
Jika belum semua pengguna Anda dikonfigurasi untuk menggunakan pemetaan `altSecurityIdentities` sertifikat yang kuat, Anda juga dapat menambahkan `smartcard_weak_mapping = true` baris ke `[features]` bagian yang sama `/etc/skylight.conf` untuk mendukung metode pemetaan lama, tetapi sebaiknya migrasi pengguna tersebut untuk menggunakan metode pemetaan yang kuat sesegera mungkin. 

1. Pada WorkSpace, jalankan perintah berikut sebagai root, di mana`{{pem-path1}}`,`{{pem-path2}}`, dll., Adalah jalur ke file, masing-masing berisi salah satu sertifikat CA dalam rantai kepercayaan untuk kartu pintar dan sertifikat pengontrol domain. Semua file ini harus dalam format PEM dan berisi satu sertifikat per file. Pola glob dapat digunakan (mis.,`*.pem`)

   ```
   /usr/lib/skylight/enable_smartcard --ca-cert {{pem-path1}} {{pem-path2}} {{pem-path3}} {{...}}
   ```
**catatan**  
Pastikan paket ketergantungan tambahan diinstal pada WorkSpace sebelum menjalankan perintah di atas, menggunakan perintah berikut sebagai root.  
Untuk Rocky Linux dan Red Hat Enterprise Linux WorkSpaces:   

   ```
   dnf install sssd-dbus libsss_simpleifp sssd-tools krb5-pkinit opensc
   ```
 Untuk Ubuntu WorkSpaces:   

   ```
   apt install krb5-pkinit opensc
   ```

1. Lakukan penyesuaian tambahan pada file. WorkSpace Misalnya, Anda mungkin ingin menambahkan kebijakan seluruh sistem ke [aktifkan pengguna untuk menggunakan kartu pintar di Firefox](#smart-cards-firefox-linux). (Pengguna Chrome harus mengaktifkan kartu pintar pada klien mereka sendiri. Untuk informasi selengkapnya, lihat [Dukungan Kartu Pintar](https://docs.aws.amazon.com/workspaces/latest/userguide/smart_card_support.html) di *Panduan WorkSpaces Pengguna Amazon*.) 

1. [Buat WorkSpace gambar khusus dan bundel](create-custom-bundle.md) dari file WorkSpace.

1. Gunakan bundel kustom baru untuk diluncurkan WorkSpaces bagi pengguna Anda.

Anda dapat mengaktifkan pengguna Anda untuk menggunakan kartu pintar di Firefox dengan menambahkan SecurityDevices kebijakan ke WorkSpace gambar Linux Anda. Untuk informasi selengkapnya tentang menambahkan kebijakan seluruh sistem ke Firefox, lihat templat [kebijakan Mozilla](https://github.com/mozilla/policy-templates/releases) di. GitHub

**Untuk mengaktifkan pengguna menggunakan kartu pintar di Firefox**

1. Pada WorkSpace yang Anda gunakan untuk membuat WorkSpace gambar Anda, buat file baru bernama`{{PREFIX}}/firefox/distribution/`, `policies.json` di mana `{{PREFIX}}` ada `/usr/lib64` pada sistem berbasis Fedora (Amazon Linux 2, Red Hat Enterprise Linux, dan Rocky Linux WorkSpaces), dan `/usr/lib` pada sistem berbasis Debian (Ubuntu). WorkSpaces

1. Dalam file JSON, tambahkan SecurityDevices kebijakan berikut, di mana nilai `{{NAME_OF_DEVICE}}` apa pun yang ingin Anda gunakan untuk mengidentifikasi `pkcs` modul. Misalnya, Anda mungkin ingin menggunakan nilai seperti `"OpenSC"`:

   ```
   {
       "policies": {
           "SecurityDevices": {
               "{{NAME_OF_DEVICE}}": "{{PREFIX}}/opensc-pkcs11.so"
           }
       }
   }
   ```

**Pemecahan masalah**  
Pemecahan masalah otentikasi kartu pintar lebih mudah ketika pra-sesi diatur untuk menggunakan otentikasi kata sandi - selama penyediaan sesi Linux WorkSpaces secara otomatis mengalihkan preferensi mode otentikasi on-host ke berbasis kata sandi atau berbasis kartu pintar tergantung pada metode otentikasi pra-sesi yang digunakan. Jika ada masalah dengan otentikasi kartu pintar, memutuskan sambungan dan menyambung kembali menggunakan otentikasi pra-sesi kata sandi akan mengatur ulang ruang kerja kembali ke otentikasi on-host kata sandi. Untuk secara manual mengalihkan WorkSpaces instance Linux ke otentikasi kartu pintar jalankan `/usr/lib/skylight/resume_smartcard` perintah sebagai root.

Linux WorkSpaces menggunakan perangkat lunak OpenSC untuk bekerja dengan kartu pintar. Perangkat lunak itu dilengkapi dengan alat seperti `pkcs11-tool` dan `pkcs15-tool` yang dapat berguna dalam memecahkan masalah dengan kartu pintar. Alat-alat ini dapat digunakan untuk memeriksa pembaca kartu pintar, token individu, dan slot PIV atau sertifikat pada setiap token kartu pintar.

Alat `openssl` baris perintah dapat membantu dalam memecahkan masalah dengan rantai kepercayaan, responden OCSP, atau tanda KUs/EKUs (penggunaan kunci usage/extended kunci) yang hilang, terutama dalam kombinasi dengan kemampuan untuk mengekstrak sertifikat publik `pkcs15-tool` dari kartu pintar.

Opsi pemecahan masalah umum:
+ Ekstrak sertifikat pertama (biasanya PIV slot 9A) dari kartu pintar dan simpan sebagai: `{{card-cert.pem}}` `pkcs15-tool --read-certificate 1 > {{card-cert.pem}}`
+ Validasi sertifikat yang diekstraksi terhadap database trust pada: WorkSpace `openssl verify -verbose -CAfile /etc/sssd/pki/sssd_auth_ca_db.pem -cert {{card-cert.pem}}`
+ Dapatkan URL OCSP dari sertifikat kartu pintar yang diekstrak: `openssl x509 -noout -ocsp_uri -in {{card-cert.pem}}`
+ Verifikasi bahwa respons OCSP menunjukkan sertifikat valid dan termasuk NONCE:`openssl ocsp -issuer /etc/sssd/pki/sssd_auth_ca_db.pem -CAfile /etc/sssd/pki/sssd_auth_ca_db.pem -cert {{card-cert.pem}} -text -url {{OCSP_URI}}`, di mana {{OCSP\_URI}} URL OCSP dari atas.
+ Periksa apakah sertifikat pengontrol domain dianggap tepercaya:`openssl s_client -connect {{DC_HOSTNAME}}:636 -showcerts | openssl verify -verbose -CAfile /etc/sssd/pki/sssd_auth_ca_db.pem`, di {{DC\_HOSTNAME}} mana nama host dari salah satu pengontrol domain di domain Active Directory Anda.
+ Konfirmasikan sertifikat pengontrol domain memiliki KDC Authentication EKU (penggunaan kunci diperpanjang) yang ditetapkan:. `openssl s_client -connect {{DC_HOSTNAME}}:636 -showcerts | openssl x509 -noout -text`
+ Coba PKINIT manual untuk melihat apakah ada kode kesalahan yang dapat digunakan untuk mempersempit masalah:`KRB5_TRACE=/dev/stdout kinit -X X509_user_identity=PKCS11:opensc-pkcs11.so:certid={{01}} -V`, di mana {{01}} jumlah salah satu dari empat slot PIV utama pada kartu - `01` untuk`9A`, `02` untuk`9C`, dll. Sebagian besar kartu akan memiliki sertifikat yang dimaksudkan untuk otentikasi pengguna di slot 9A.
+ Periksa apakah sistem dapat memetakan sertifikat kartu pintar ke pengguna AD (jalankan sebagai root):`dbus-send --print-reply --system --dest=org.freedesktop.sssd.infopipe /org/freedesktop/sssd/infopipe/Users org.freedesktop.sssd.infopipe.Users.FindByCertificate string:"$(<{{card-cert.pem}})"`. Ini dapat dikombinasikan dengan mengaktifkan logging debug untuk SSSD.

Masalah yang paling umum diketahui:
+ Rantai kepercayaan yang tidak lengkap untuk sertifikat kartu pintar - saat mengimpor sertifikat menggunakan `enable_smartcard` skrip, daftar lengkap semua sertifikat CA root dan perantara harus disediakan. `enable_smartcard`Alat ini akan menampilkan kesalahan jika tidak semua sertifikat yang diimpor dipercaya karena hilang dari sertifikat CA root daftar, tetapi tidak dapat mendeteksi ketika seluruh rantai kepercayaan atau sertifikat CA perantara terdalam di salah satu rantai kepercayaan hilang. Dalam situasi itu akan mengimpor sertifikat tanpa kesalahan, namun sertifikat kartu pintar atau sertifikat pengontrol domain masih dapat dianggap tidak tepercaya.
+ Rantai kepercayaan yang hilang untuk sertifikat pengontrol domain - jika sertifikat pengontrol domain dikeluarkan oleh CA yang berbeda dari kartu pintar (misalnya, dalam kasus [Common Access Card (CAC)](https://www.cac.mil/Common-Access-Card)), rantai kepercayaan CA tersebut perlu diimpor bersama dengan kartu pintar yang mengeluarkan sertifikat CA.
+ Kurangnya dukungan ekstensi NONCE di responder OCSP - Linux WorkSpaces mengharuskan responden OCSP dari penerbit kartu pintar mengaktifkan ekstensi NONCE. Jika tidak dapat diaktifkan, validasi OCSP harus dinonaktifkan sepenuhnya.
+ Sertifikat pengontrol domain tidak ada `KDC Authentication` EKU (OID 1.3.6.1.5.2.3.1) - untuk otentikasi kartu pintar agar berfungsi sertifikat pengontrol domain perlu diterbitkan ulang untuk menyertakan KDC Authentication EKU.
+ Sertifikat pengontrol domain kedaluwarsa - untuk otentikasi kartu pintar agar berfungsi, sertifikat pengontrol domain harus tetap ada. up-to-date
+ Sertifikat kartu pintar dipetakan ke pengguna di AD menggunakan metode pemetaan yang lemah - secara tradisional, bidang UPN dalam subjectAltName atribut digunakan untuk memetakan sertifikat ke pengguna di AD, yang diharapkan cocok dengan atribut. userPrincipalName Ini tidak lagi dianggap sebagai metode pemetaan aman dan tidak diizinkan secara default. Dimungkinkan untuk mengaktifkannya kembali dengan meneruskan `--allow-weak-mapping` argumen ke `enable_smartcard` perintah dan menambahkan `smartcard_weak_mapping = true` baris ke `[features]` bagian dalam `/etc/skylight.conf` file, tetapi solusi yang lebih baik adalah dengan menggunakan salah satu metode pemetaan yang kuat. Lihat dokumentasi [Penautan Akun](https://www.idmanagement.gov/implement/scl-windows/#step-4---account-linking) untuk detail selengkapnya.

Alat untuk mengelola sertifikat dan kunci pada kartu pintar (seperti menghapus atau memetakan ulang sertifikat dan kunci) mungkin khusus produsen. Alat tambahan yang dapat Anda gunakan untuk bekerja dengan kartu pintar adalah:
+ `opensc-explorer`
+ `opensc-tool`
+ `pkcs11_inspect`
+ `pkcs11_listcerts`
+ `pkcs15-tool`

**Untuk mengaktifkan debug pencatatan log**
+ Tambahkan `debug_level = {{LEVEL}}` baris `/etc/sssd/sssd.conf` untuk setiap bagian individu, di mana {{LEVEL}} tingkat verbositas yang diinginkan, dari 1 hingga 10. Log untuk setiap bagian yang sesuai kemudian dapat ditemukan di `/var/log/sssd/` direktori. Lihat dokumentasi SSSD [di sini dan di](https://docs.pagure.org/sssd.sssd/users/troubleshooting.html#sssd-debug-logs) [sini](https://sssd.io/troubleshooting/basics.html#sssd-debug-logs) untuk lebih jelasnya.

## Aktifkan kartu pintar untuk Amazon Linux 2 WorkSpaces
<a name="smart-cards-amazon-linux-workspaces"></a>

**catatan**  
Amazon Linux 2 WorkSpaces di DCV saat ini memiliki batasan berikut:  
Clipboard, audio-in, video-in, dan pengalihan zona waktu tidak didukung.
Beberapa monitor tidak didukung.

Untuk mengaktifkan penggunaan kartu pintar di Amazon Linux 2 WorkSpaces, Anda perlu menyertakan file sertifikat CA root dalam format PEM pada WorkSpace gambar.

**Untuk mendapatkan sertifikat CA root Anda:** Anda dapat memperoleh sertifikat CA root Anda dengan beberapa cara:
+ Anda dapat menggunakan sertifikat CA root yang dioperasikan oleh otoritas sertifikasi (CA) pihak ketiga. 
+ Anda dapat mengekspor sertifikat CA root Anda sendiri menggunakan situs Web pendaftaran, baik `http://{{ip_address}}/certsrv` atau `http://{{fqdn}}/certsrv`, saat `{{ip_address}}` dan `{{fqdn}}` adalah alamat IP dan nama domain yang memenuhi syarat (FQDN) dari server sertifikasi CA root. Untuk informasi selengkapnya tentang penggunaan situs Web pendaftaran, lihat [ Cara mengekspor Sertifikat Otoritas Sertifikasi (CA) akar](https://docs.microsoft.com/troubleshoot/windows-server/identity/export-root-certification-authority-certificate) dalam dokumentasi Microsoft. 
+ Anda dapat menggunakan prosedur berikut ini untuk mengekspor sertifikat CA root dari server sertifikasi CA root yang menjalankan Layanan Sertifikat Direktori Aktif (AD CS). Untuk informasi selengkapnya tentang menginstal AD CS, lihat [ Instal Otoritas Sertifikasi (CA)](https://docs.microsoft.com/windows-server/networking/core-network-guide/cncg/server-certs/install-the-certification-authority) dalam dokumentasi Microsoft. 

  1. Masuk ke server CA root menggunakan akun administrator.

  1. Dari menu **start** Windows, buka jendela prompt perintah (**Mulai** > **Sistem Windows** > **Prompt Perintah**). 

  1. Gunakan perintah berikut untuk mengekspor sertifikat CA root ke file baru, saat `{{rootca}}.cer` adalah nama file baru:

     ```
     certutil -ca.cert {{rootca}}.cer
     ```

     Untuk informasi selengkapnya tentang menjalankan certutil, lihat [ certutil](https://docs.microsoft.com/windows-server/administration/windows-commands/certutil) dalam dokumentasi Microsoft.

  1. Gunakan perintah OpenSSL berikut untuk mengonversi sertifikat CA root yang diekspor dari format DER ke format PEM, {{rootca}} di mana adalah nama sertifikat. Untuk informasi selengkapnya tentang OpenSSL, lihat [www.openssl.org](https://www.openssl.org/).

     ```
     openssl x509 -inform der -in {{rootca}}.cer -out /tmp/{{rootca}}.pem
     ```

**Untuk menambahkan sertifikat CA root Anda ke Amazon Linux 2 Anda WorkSpaces**

Untuk membantu Anda mengaktifkan kartu pintar, kami telah menambahkan `enable_smartcard` skrip ke bundel Amazon Linux DCV kami. Skrip tersebut melakukan tugas-tugas berikut:
+ Mengimpor sertifikat CA root Anda ke basis data [ Layanan Keamanan Jaringan (NSS)](https://developer.mozilla.org/docs/Mozilla/Projects/NSS). 
+ Menginstal modul `pam_pkcs11` untuk Modul Autentikasi Pluggable (PAM).
+ Melakukan konfigurasi default, yang mencakup pengaktifan `pkinit` selama WorkSpace penyediaan.

Prosedur berikut menjelaskan cara menggunakan `enable_smartcard` skrip untuk menambahkan sertifikat CA root Anda ke Amazon Linux 2 Anda WorkSpaces dan untuk mengaktifkan kartu pintar untuk Amazon Linux 2 Anda WorkSpaces.

1. Buat Amazon Linux 2 baru WorkSpace dengan protokol DCV diaktifkan. Saat meluncurkan WorkSpace di WorkSpaces konsol Amazon, pada halaman **Pilih Bundel**, pastikan untuk memilih **DCV** untuk protokol, lalu pilih salah satu bundel publik Amazon Linux 2.

1. Pada yang baru WorkSpace, jalankan perintah berikut sebagai root, di `{{pem-path}}` mana jalur ke file sertifikat CA root dalam format PEM.

   ```
   /usr/lib/skylight/enable_smartcard --ca-cert {{pem-path}}
   ```
**catatan**  
Amazon Linux 2 WorkSpaces berasumsi bahwa sertifikat pada kartu pintar dikeluarkan untuk nama utama pengguna default pengguna (UPN), seperti`{{sAMAccountName}}@{{domain}}`, di mana `{{domain}}` adalah nama domain yang sepenuhnya memenuhi syarat (FQDN).   
Untuk menggunakan alternatif sufiks UPN, `run /usr/lib/skylight/enable_smartcard --help` untuk informasi selengkapnya. Pemetaan alternatif untuk sufiks unik UPN untuk setiap pengguna. Oleh karena itu, pemetaan itu harus dilakukan secara individual pada setiap pengguna. WorkSpace

1. (Opsional) Secara default, semua layanan diaktifkan untuk menggunakan otentikasi kartu pintar di Amazon Linux 2 WorkSpaces. Untuk membatasi autentikasi kartu pintar hanya untuk layanan tertentu, Anda harus mengedit `/etc/pam.d/system-auth`. Batalkan komentar pada baris `auth` untuk `pam_succeed_if.so` dan edit daftar layanan sesuai kebutuhan.

   Setelah baris `auth` tidak berisi komentar, untuk mengizinkan layanan untuk menggunakan autentikasi kartu pintar, Anda harus menambahkannya ke daftar. Untuk membuat layanan hanya menggunakan autentikasi kata sandi, Anda harus menghapusnya dari daftar.

1. Lakukan penyesuaian tambahan apa pun ke. WorkSpace Misalnya, Anda mungkin ingin menambahkan kebijakan seluruh sistem ke [aktifkan pengguna untuk menggunakan kartu pintar di Firefox](#smart-cards-firefox-amazon-linux). (Pengguna Chrome harus mengaktifkan kartu pintar pada klien mereka sendiri. Untuk informasi selengkapnya, lihat [Dukungan Kartu Pintar](https://docs.aws.amazon.com/workspaces/latest/userguide/smart_card_support.html) di *Panduan WorkSpaces Pengguna Amazon*.) 

1. [Buat WorkSpace gambar khusus dan bundel](create-custom-bundle.md) dari file WorkSpace.

1. Gunakan bundel kustom baru untuk diluncurkan WorkSpaces bagi pengguna Anda.

Anda dapat mengaktifkan pengguna Anda untuk menggunakan kartu pintar di Firefox dengan menambahkan SecurityDevices kebijakan ke WorkSpace gambar Amazon Linux 2 Anda. Untuk informasi selengkapnya tentang menambahkan kebijakan seluruh sistem ke Firefox, lihat templat [kebijakan Mozilla](https://github.com/mozilla/policy-templates/releases) di. GitHub

**Untuk mengaktifkan pengguna menggunakan kartu pintar di Firefox**

1. Pada WorkSpace yang Anda gunakan untuk membuat WorkSpace gambar Anda, buat file baru bernama `policies.json``/usr/lib64/firefox/distribution/`.

1. Dalam file JSON, tambahkan SecurityDevices kebijakan berikut, di mana nilai `{{NAME_OF_DEVICE}}` apa pun yang ingin Anda gunakan untuk mengidentifikasi `pkcs` modul. Misalnya, Anda mungkin ingin menggunakan nilai seperti `"OpenSC"`:

   ```
   {
       "policies": {
           "SecurityDevices": {
               "{{NAME_OF_DEVICE}}": "/usr/lib64/opensc-pkcs11.so"
           }
       }
   }
   ```

**Pemecahan masalah:** Untuk pemecahan masalah, kami sarankan menambahkan utilitas. `pkcs11-tools` Utilitas ini mengizinkan Anda untuk melakukan tindakan berikut:
+ Mendaftarkan setiap kartu pintar.
+ Mendaftarkan slot pada setiap kartu pintar.
+ Mendaftarkan sertifikat pada setiap kartu pintar.

Beberapa masalah umum yang dapat menyebabkan masalah:
+ Pemetaan yang salah dari slot ke sertifikat.
+ Memiliki beberapa sertifikat pada kartu pintar yang dapat dicocokkan dengan pengguna. Sertifikat dicocokkan menggunakan kriteria berikut:
  + CA root untuk sertifikat.
  + Bidang sertifikat `<KU>` dan `<EKU>`.
  + UPN dalam subjek sertifikat.
+ Memiliki beberapa sertifikat yang memiliki `<EKU>msScLogin` dalam penggunaan kunci mereka.

Secara umum, yang terbaik adalah hanya memiliki satu sertifikat untuk autentikasi kartu pintar yang dipetakan ke slot pertama dalam kartu pintar.

Alat untuk mengelola sertifikat dan kunci pada kartu pintar (seperti menghapus atau memetakan ulang sertifikat dan kunci) mungkin khusus produsen. Alat tambahan yang dapat Anda gunakan untuk bekerja dengan kartu pintar adalah:
+ `opensc-explorer`
+ `opensc-tool`
+ `pkcs11_inspect`
+ `pkcs11_listcerts`
+ `pkcs15-tool`

**Untuk mengaktifkan debug pencatatan log**

Untuk memecahkan masalah konfigurasi `pam_pkcs11` dan `pam-krb5`, Anda dapat mengaktifkan debug pencatatan log.

1. Dalam file `/etc/pam.d/system-auth-ac`, edit tindakan `auth` dan mengubah parameter `nodebug` dari `pam_pksc11.so` menjadi `debug`. 

1. Di file `/etc/pam_pkcs11/pam_pkcs11.conf`, ubah `debug = false;` ke `debug = true;`. Opsi `debug` berlaku secara terpisah untuk setiap modul pemeta, sehingga Anda mungkin perlu untuk mengubah keduanya secara langsung di bawah bagian `pam_pkcs11` dan juga di bawah bagian pemetaan yang sesuai (secara default, adalah `mapper generic`).

1. Dalam file `/etc/pam.d/system-auth-ac`, edit tindakan `auth` dan tambahkan parameter `debug` atau `debug_sensitive` menjadi `pam_krb5.so`. 

Setelah Anda mengaktifkan debug pencatatan log, sistem akan mencetak pesan debug `pam_pkcs11` langsung di terminal aktif. Pesan dari `pam_krb5` telah masuk di `/var/log/secure`. 

Untuk memeriksa peta sertifikat nama pengguna kartu pintar, gunakan `pklogin_finder` perintah:

```
sudo pklogin_finder debug config_file=/etc/pam_pkcs11/pam_pkcs11.conf
```

Saat diminta, memasukkan PIN kartu pintar. output `pklogin_finder` pada nama pengguna `stdout` pada sertifikat kartu pintar dalam formulir `{{NETBIOS}}\{{username}}`. Nama pengguna ini harus sesuai dengan nama WorkSpace pengguna.

Dalam Layanan Domain Direktori Aktif (AD DS), nama domain NetBIOS adalah nama domain pra-Windows 2000. Biasanya (tetapi tidak selalu), nama domain NetBIOS adalah subdomain nama domain Sistem Nama Domain (DNS). Misalnya, jika nama domain DNS adalah `example.com`, nama domain NetBIOS biasanya `EXAMPLE`. Jika nama domain DNS adalah `corp.example.com`, nama domain NetBIOS biasanya `CORP`. 

Misalnya, untuk pengguna `mmajor` di domain `corp.example.com`, output dari `pklogin_finder` adalah `CORP\mmajor`.

**catatan**  
Jika Anda menerima pesan `"ERROR:pam_pkcs11.c:504: verify_certificate() failed"`, pesan ini menunjukkan bahwa `pam_pkcs11` telah menemukan sertifikat pada kartu pintar yang cocok dengan kriteria nama pengguna tetapi itu tidak mengikat sertifikat CA root yang diakui oleh mesin. Ketika itu terjadi, `pam_pkcs11` mengeluarkan pesan di atas lalu mencoba sertifikat berikutnya. Hal ini memungkinkan autentikasi hanya jika menemukan sertifikat yang keduanya cocok dengan nama pengguna dan mengikat hingga sertifikat CA akar diakui.

Untuk memecahkan masalah konfigurasi `pam_krb5`, Anda dapat secara manual memanggil `kinit` dalam mode debug dengan perintah berikut:

```
KRB5_TRACE=/dev/stdout kinit -V
```

Perintah ini harus berhasil mendapatkan Kerberos Ticket Granting Ticket (TGT). Jika gagal, coba tambahkan nama utama Kerberos yang benar secara eksplisit ke perintah. Misalnya, untuk pengguna `mmajor` di domain `corp.example.com`, gunakan perintah ini: 

```
KRB5_TRACE=/dev/stdout kinit -V mmajor
```

Jika perintah ini berhasil, masalahnya kemungkinan besar dalam pemetaan dari WorkSpace nama pengguna ke nama utama Kerberos. Periksa bagian `[appdefaults]/pam/mappings` dalam file `/etc/krb5.conf`. 

Jika perintah ini tidak berhasil, tetapi perintah `kinit` berbasis kata sandi berhasil, periksa konfigurasi terkait `pkinit_` dalam file `/etc/krb5.conf`. Misalnya, jika kartu pintar berisi lebih dari satu sertifikat, Anda mungkin perlu melakukan perubahan pada `pkinit_cert_match`.