Menegakkan versi minimum TLS - AWS SDK for JavaScript

Kami mengumumkan yang akan datang end-of-support untuk AWS SDK for JavaScript v2. Kami menyarankan Anda bermigrasi ke AWS SDK for JavaScript v3. Untuk tanggal, detail tambahan, dan informasi tentang cara bermigrasi, silakan merujuk ke pengumuman tertaut.

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

Menegakkan versi minimum TLS

penting

AWS SDK for JavaScript V2 secara otomatis menegosiasikan versi TLS tingkat tertinggi yang didukung oleh titik akhir AWS Layanan tertentu. Anda dapat secara opsional menerapkan versi TLS minimum yang diperlukan oleh aplikasi Anda, seperti TLS 1.2 atau 1.3, tetapi harap dicatat bahwa TLS 1.3 tidak didukung oleh beberapa titik akhir AWS Layanan, sehingga beberapa panggilan mungkin gagal jika Anda menerapkan TLS 1.3.

Untuk menambahkan peningkatan keamanan saat berkomunikasi dengan AWS layanan, konfigurasikan AWS SDK for JavaScript untuk menggunakan TLS 1.2 atau yang lebih baru.

Transport Layer Security (TLS) adalah protokol yang digunakan oleh browser web dan aplikasi lain untuk memastikan privasi dan integritas data yang dipertukarkan melalui jaringan.

Verifikasi dan terapkan TLS di Node.js

Saat Anda menggunakan AWS SDK for JavaScript with Node.js, layer keamanan Node.js yang mendasarinya digunakan untuk mengatur versi TLS.

Node.js 12.0.0 dan yang lebih baru menggunakan versi minimum OpenSSL 1.1.1b, yang mendukung TLS 1.3. Default AWS SDK for JavaScript v3 menggunakan TLS 1.3 bila tersedia, tetapi default ke versi yang lebih rendah jika diperlukan.

Verifikasi versi OpenSSL dan TLS

Untuk mendapatkan versi OpenSSL yang digunakan oleh Node.js di komputer Anda, jalankan perintah berikut.

node -p process.versions

Versi OpenSSL dalam daftar adalah versi yang digunakan oleh Node.js, seperti yang ditunjukkan pada contoh berikut.

openssl: '1.1.1b'

Untuk mendapatkan versi TLS yang digunakan oleh Node.js di komputer Anda, jalankan shell Node dan jalankan perintah berikut, secara berurutan.

> var tls = require("tls"); > var tlsSocket = new tls.TLSSocket(); > tlsSocket.getProtocol();

Perintah terakhir menampilkan versi TLS, seperti yang ditunjukkan pada contoh berikut.

'TLSv1.3'

Node.js default untuk menggunakan versi TLS ini, dan mencoba menegosiasikan versi TLS lain jika panggilan tidak berhasil.

Menerapkan versi minimum TLS

Node.js menegosiasikan versi TLS saat panggilan gagal. Anda dapat menerapkan versi TLS minimum yang diizinkan selama negosiasi ini, baik saat menjalankan skrip dari baris perintah atau per permintaan dalam kode Anda. JavaScript

Untuk menentukan versi TLS minimum dari baris perintah, Anda harus menggunakan Node.js versi 11.0.0 atau yang lebih baru. Untuk menginstal versi Node.js tertentu, pertama instal Node Version Manager (nvm) menggunakan langkah-langkah yang ditemukan di Node Version Manager Installating and Update. Kemudian jalankan perintah berikut untuk menginstal dan menggunakan versi tertentu dari Node.js.

nvm install 11 nvm use 11
Enforcing TLS 1.2

Untuk menegakkan bahwa TLS 1.2 adalah versi minimum yang diizinkan, tentukan --tls-min-v1.2 argumen saat menjalankan skrip Anda, seperti yang ditunjukkan pada contoh berikut.

node --tls-min-v1.2 yourScript.js

Untuk menentukan versi TLS minimum yang diizinkan untuk permintaan tertentu dalam JavaScript kode Anda, gunakan httpOptions parameter untuk menentukan protokol, seperti yang ditunjukkan pada contoh berikut.

const https = require("https"); const {NodeHttpHandler} = require("@aws-sdk/node-http-handler"); const {DynamoDBClient} = require("@aws-sdk/client-dynamodb"); const client = new DynamoDBClient({ region: "us-west-2", requestHandler: new NodeHttpHandler({ httpsAgent: new https.Agent( { secureProtocol: 'TLSv1_2_method' } ) }) });
Enforcing TLS 1.3

Untuk menegakkan bahwa TLS 1.3 adalah versi minimum yang diizinkan, tentukan --tls-min-v1.3 argumen saat menjalankan skrip Anda, seperti yang ditunjukkan pada contoh berikut.

node --tls-min-v1.3 yourScript.js

Untuk menentukan versi TLS minimum yang diizinkan untuk permintaan tertentu dalam JavaScript kode Anda, gunakan httpOptions parameter untuk menentukan protokol, seperti yang ditunjukkan pada contoh berikut.

const https = require("https"); const {NodeHttpHandler} = require("@aws-sdk/node-http-handler"); const {DynamoDBClient} = require("@aws-sdk/client-dynamodb"); const client = new DynamoDBClient({ region: "us-west-2", requestHandler: new NodeHttpHandler({ httpsAgent: new https.Agent( { secureProtocol: 'TLSv1_3_method' } ) }) });

Verifikasi dan terapkan TLS dalam skrip browser

Saat Anda menggunakan SDK for JavaScript dalam skrip browser, pengaturan browser mengontrol versi TLS yang digunakan. Versi TLS yang digunakan oleh browser tidak dapat ditemukan atau diatur oleh skrip dan harus dikonfigurasi oleh pengguna. Untuk memverifikasi dan menerapkan versi TLS yang digunakan dalam skrip browser, lihat instruksi untuk browser spesifik Anda.

Microsoft Internet Explorer
  1. Buka Internet Explorer.

  2. Dari bilah menu, pilih Tools - Internet Options - Advanced tab.

  3. Gulir ke bawah ke kategori Keamanan, centang kotak opsi secara manual untuk Gunakan TLS 1.2.

  4. Klik OK.

  5. Tutup browser Anda dan mulai ulang Internet Explorer.

Microsoft Edge
  1. Di kotak pencarian menu Windows, ketik opsi Internet.

  2. Di bawah Best match, klik Internet Options.

  3. Di jendela Internet Properties, pada tab Advanced, gulir ke bawah ke bagian Keamanan.

  4. Centang kotak centang User TLS 1.2.

  5. Klik OK.

Google Chrome
  1. Buka Google Chrome.

  2. Klik Alt F dan pilih Pengaturan.

  3. Gulir ke bawah dan pilih Tampilkan pengaturan lanjutan... .

  4. Gulir ke bawah ke bagian Sistem dan klik Buka pengaturan proxy... .

  5. Pilih tab Advanced.

  6. Gulir ke bawah ke kategori Keamanan, centang kotak opsi secara manual untuk Gunakan TLS 1.2.

  7. Klik OK.

  8. Tutup browser Anda dan mulai ulang Google Chrome.

Mozilla Firefox
  1. Buka Firefox.

  2. Di bilah alamat, ketik about:config dan tekan Enter.

  3. Di bidang Pencarian, masukkan tls. Temukan dan klik dua kali entri untuk security.tls.version.min.

  4. Atur nilai integer ke 3 untuk memaksa protokol TLS 1.2 menjadi default.

  5. Klik OK.

  6. Tutup browser Anda dan mulai ulang Mozilla Firefox.

Apple Safari

Tidak ada opsi untuk mengaktifkan protokol SSL. Jika Anda menggunakan Safari versi 7 atau lebih tinggi, TLS 1.2 diaktifkan secara otomatis.