Sekarang sementara kita telah mengembangkan modul ini dengan setiap tingkat keamanan yang ditingkatkan, saya telah melakukan kode untuk masing-masing tahap
ini sehingga nanti Anda akan dapat melihat komite yang ingin Anda tinjau dan periksa kode Anda dengan mudah
sehingga Anda dapat melihat bahwa kami memiliki level satu di mana kami hanya mendapatkan
nama pengguna dan kata sandi.
Dan kemudian Tingkat Dua.
Kami menambahkan enkripsi ke bidang kata sandi kami, tetapi akan ada sedikit celah keamanan
yang diperkenalkan dengan melakukan semua kode ini ke repositori get remote seperti GitHub karena jika saya teruskan dan
tarik halaman dapatkan hub untuk proyek khusus ini Anda bisa lihat semua yang telah saya komit termasuk semua kode yang
ada di dalam aplikasi saya dot Jesus yang seperti yang Anda ingat berisi beberapa rahasia di sana yaitu kunci
yang kami gunakan untuk mengenkripsi basis data kami.
Jadi ini sekarang di internet yang dirayapi oleh Google sepenuhnya dapat ditelusuri.
Siapa saja dapat melihat kunci enkripsi saya yang juga berarti bahwa siapa pun dapat mendekripsi database terenkripsi saya menggunakan kunci
aman ini.
Jadi itu tidak terlalu aman.
Pada dasarnya sangat mudah bagi orang untuk menjelajah mendapatkan hub mencari rahasia dan kunci API yang
dapat mereka manfaatkan.
Dan sangat sering di dunia pengembangan Anda mendengar cerita seperti ini di mana pengembang meletakkannya di atas U. S.
kunci mendapatkan hub kemudian hal-hal buruk terjadi dan itu karena saat ini kita berada dalam era kegilaan penambangan bitcoin.
Dan untuk menambang Bitcoin, Anda memerlukan banyak sumber daya komputasi dan sumber daya tersebut secara langsung berubah
menjadi uang yang memberikan insentif besar bagi orang-orang untuk mengikis Internet bagi pengembang yang secara tidak
sengaja menerbitkan kunci rahasia mereka.
Dan ini adalah cerita yang bagus juga yang memiliki tautan ke dalam sumber kursus di mana Luke secara tidak
sengaja menerbitkan kunci apinya ke hub.
Dan kemudian dia mengumpulkan tagihan NWS lebih dari 3000 dolar dalam waktu yang sangat singkat.
Sekarang saya pikir akhir dari cerita itu adalah yang bahagia dengan Amazon ATO U. S. sebenarnya mengembalikan uang kepadanya
tetapi saya tidak yakin semua orang seberuntung dia.
Jadi ini adalah beberapa kisah yang benar-benar peringatan tentang menjaga rahasia Anda dari api di Internet yang
dapat dicari secara publik di mana orang dapat mencuri.
Jadi itu semua sangat baik dan bagus tetapi bagaimana tepatnya kita melakukan itu.
Karena jelas agar aplikasi kita berfungsi, kita perlu rahasia-rahasia ini untuk dapat mengenkripsi basis data kita dan agar kita
dapat berkolaborasi dengan orang lain atau hanya menggunakan kontrol versi atau membackup proyek kita
untuk mendapatkan hub maka kita perlu menerbitkannya .
Kanan.
Jadi cara pengembang memecahkan teka-teki ini adalah dengan menggunakan sesuatu yang disebut variabel lingkungan
dan variabel lingkungan pada dasarnya adalah file yang sangat sederhana yang akan kita simpan variabel
sensitif tertentu seperti kunci enkripsi dan kunci API.
Jadi dalam pelajaran ini saya ingin menunjukkan kepada Anda bagaimana kita dapat melakukan ini menggunakan paket yang
sangat populer yang disebut Dot EMP dan Anda dapat melihat melalui jumlah
unduhan mingguan yang sangat tergantung pada modul untuk menjaga rahasia semua orang dari Internet aman dan aman.
Jadi mari kita mulai dengan menginstal hal ini yang disebut Dot EMP.
Jadi saya masih dalam repositori rahasia saya dan saya akan menginstal hal ini yang disebut Dot.
Dan sekarang sudah terinstal, hal selanjutnya yang harus dilihat adalah bagaimana kita menggunakannya.
Yah, dokumentasi memberi tahu kami bahwa sedini mungkin dalam aplikasi Anda memerlukan dan mengonfigurasi paket
ini.
Jadi saya hanya akan langsung menyalin baris kode ini dan menempelkannya tepat di paling atas aplikasi
saya bahwa Yesus di sini dan Anda dapat melihat dalam hal ini kita tidak benar-benar menetapkan konstanta untuk itu karena
semua yang kita butuhkan lakukan hanya memerlukannya dan kemudian memanggil config di atasnya dan kita tidak membutuhkannya lagi.
Ini akan aktif dan berjalan dan yang perlu kita lakukan sekarang adalah mendefinisikan variabel lingkungan kita.
Sekarang penting Anda meletakkannya tepat di atas karena jika Anda mencoba menggunakan variabel lingkungan
dan tidak dikonfigurasi maka Anda tidak akan dapat mengaksesnya.
Jadi apa sebenarnya variabel lingkungan.
Baiklah, mari kita buat dan buat mereka.
Sekarang kita harus terlebih dahulu membuat titik dan file di direktori root proyek Anda.
Jadi itu artinya dalam folder khusus ini di sini.
Jadi mari kita lanjutkan dan buat file baru dengan menekan tombol a.
Atau Anda bisa masuk ke hyper dan memastikan Anda berada di direktori root dan cukup menulis titik
sentuh.
Dan sekarang sangat penting bahwa ketika Anda memberi nama file ini dot env tidak dapat digunakan seperti ekstensi
file.
Ini tidak seperti dot MP 3 atau dot PMG.
Ini harus menjadi seluruh nama file dan sama seperti file lain seperti dot get, ini adalah file tersembunyi.
Jadi itu berarti ketika saya menekan enter dan membuat file itu dan saya melakukan Alice pada direktori saya saat ini,
saya tidak akan melihatnya dan itu hanya ketika saya melakukan Alice dash mengungkapkan semua file tersembunyi saya melihatnya melihatnya dibuat di sini
tetapi karena kami ada pada mereka kita juga bisa melihatnya di dalam atom di sini.
Jadi sekarang saya telah membuat file saya langkah selanjutnya adalah menambahkan variabel lingkungan saya ke file itu dan
format yang harus Anda ikuti adalah nama sama dengan nilai dan seharusnya tidak ada spasi di antaranya dan juga tidak
boleh ada tanda kutip .
Dan nama idealnya adalah case ular.
Jadi kata-kata dipisahkan oleh garis bawah dan semuanya harus ditulis dengan huruf besar.
Ini hanya konvensi.
Tapi saya sangat menyarankan Anda untuk mengikutinya.
Jadi mari kita lanjutkan dan tentukan variabel lingkungan yang ingin kita simpan.
Jadi pesaing utama tentu saja ini adalah kode rahasia konstan.
Jadi mari kita pergi dan hentikan itu dari apt J. kami S. dan rekatkan ke r dot dan file dan
mari kita format ulang ini sehingga sesuai dengan format yang mereka inginkan untuk kita miliki.
Jadi pertama mari kita hapus const.
Ini bukan file javascript yang tidak memerlukan const atau titik koma.
Jadi itu hilang maka kita akan mengubah nama variabel lingkungan untuk membuatnya menjadi kapital.
Jadi ini akan menjadi rahasia dan kemudian kita akan menyingkirkan ruang antara tanda
sama dengan itu dan kita juga akan menghapus tanda kutip kami.
Sekarang dalam kasus saya, penghentian penuh adalah bagian dari kunci enkripsi saya dan itu bukan hanya karena pengertian
tata bahasa karena semua kata sandi saya dienkripsi dengan kunci ini termasuk penghentian penuh.
Jadi saya harus menyimpannya di sana.
Namun jika kita mengatakan jika saya tidak tahu kunci API maka kita mungkin menulisnya seperti ini dan juga
tidak akan memiliki semacam tanda titik koma atau simbol lainnya di akhir.
Anda tidak perlu itu pada dasarnya adalah apa yang saya coba katakan.
Anda juga tidak perlu memisahkan baris dengan koma seperti yang biasa Anda lihat ketika kita sedang
menulis file kode karena ini hanya sepotong file teks biasa yang akan digunakan untuk dapat
membuat potongan kecil informasi rahasia.
Jadi mari kita tekan Simpan dan saya akan meninggalkan kunci API di sana juga supaya saya bisa menunjukkan kepada Anda bagaimana kami
bisa mengambilnya.
Jadi katakanlah kita menjalankan objek apt kita dan kita sudah diminta adalah dot sembarang paket dan kita sudah
mengkonfigurasinya untuk dapat mengakses variabel lingkungan kita lalu di mana saja setelah baris ini
kita harus mengetuk variabel-variabel tersebut dengan merujuk pada mereka.
Jadi mari kita lanjutkan dan katakan log adalah kunci API.
Kanan.
Dan untuk melakukan itu yang perlu kita tulis adalah proses Dot and Dot.
Kemudian muncul nama kunci yang akan menjadi kunci API.
Jadi sekarang jika saya menekan save dan saya menjalankan apt J. S. maka Anda dapat melihat dicetak di sini adalah isi
kunci api saya di sini.
Jadi sekarang kita telah melihat bagaimana kita dapat mengakses variabel lingkungan kita, mari kita lanjutkan dan perbaiki
kode kita karena seperti yang Anda lihat saat ini sedang rusak.
Dan itu karena kita tidak lagi memiliki rahasia yang ditentukan di dalam titik aplikasi kita.
Iya nih.
Jadi di sini kami menghapus rahasia kami dan kami memindahkannya ke file lingkungan kami.
Jadi coba dan jeda video dan ganti baris kode di sini sehingga aplikasi kami terus berfungsi seperti
dulu.
Tapi sekarang ia mengambil rahasia dari variabel lingkungan kita.
Jadi yang harus kita lakukan adalah persis sama dengan apa yang kita lakukan di sini alih-alih mencoba memasuki
variabel yang disebut rahasia di dalam objek apt kita yang sekarang tidak ada lagi.
Kita akan menggantinya dengan proses Dot dan Dot nama r rahasia yang hanya kata rahasia
di semua huruf besar.
Dan sekarang jika kita menekan simpan makan siang yang diketahui jalankan kembali server kita, Anda dapat melihat kami tidak lagi memiliki kesalahan.
Dan server kami sudah mulai pada port tiga ribu.
Jadi kita bisa melanjutkan dan mengkonfirmasi bahwa semuanya masih berfungsi sama dengan mencoba masuk ke
pengguna kami dengan kualitas kata sandi.
Jadi semuanya bekerja dengan baik.
Sekarang beberapa dari kalian mungkin telah melihat masalah berikutnya yang muncul.
Jika saya melanjutkan dan hanya melakukan proyek saya dengan semua perubahan karena untuk mendapatkan hub saya juga akan melakukan
file lingkungan saya yang mengalahkan seluruh tujuan membuat variabel lingkungan mengkonfigurasi dan mengubah kode kami
untuk menjaga semua rahasia rahasia itu .
Kanan.
Jadi apa yang bisa kita lakukan.
Nah jika Anda ingat sebelumnya pada modul get and get hub kami membahas sesuatu yang disebut Get abaikan.
Jadi itu file tersembunyi lain yang kami tambahkan ke proyek kami.
Itu memberitahu dapatkan file mana dan folder mana yang harus diabaikan ketika itu mengunggah file ke remote seperti
get hub.
Dan jika Anda mencari dapatkan hub dapatkan abaikan maka Anda akan melihat bahwa mereka telah membuat
kumpulan file templat yang sangat membantu untuk berbagai jenis proyek.
Jadi jika kita teruskan dan mencari simpul kita diabaikan maka Anda dapat melihat bahwa ini adalah file templat yang
dapat Anda buat karena Anda akan abaikan dan itu akan mengatur untuk mengabaikan sebagian besar file yang tidak
Anda inginkan untuk melakukan.
Jadi mari kita lihat apa yang termasuk di dalamnya.
Jadi salah satu hal paling umum yang tidak kita lakukan ketika kita membuat
proyek simpul adalah modul simpul karena Anda dapat melihat itu adalah daftar besar modul simpul dan itu adalah sejumlah besar kode dan
sejumlah besar dependensi.
Jadi itu secara besar-besaran meledakkan proyek kami ketika kami memindahkannya secara online dan offline.
Dan selama kita punya akses ke paket dot Jason maka siapa pun yang mendapatkan kloning proyek atau
unduhan kita akan dapat dengan mudah menjalankan instalasi npm dan secara otomatis akan menarik semua dependensi
di dalam modul yang diketahui.
Jadi itu praktik umum untuk mengabaikan folder modul simpul dalam proyek simpul kami.
Hal lain yang ada di dalam template get diabaikan ini tentu saja DOT dan file dan ini adalah file variabel
DOT dan lingkungan sehingga Anda dapat melihat ini sangat sangat umum dan itu sangat sangat
penting bahwa Anda menambahkan ini ke titik Anda dapatkan diabaikan file sehingga rahasia tidak bisa diungkapkan kepada publik
di Internet.
Jadi mari kita mulai.
Mari kita masuk ke hyper mari menghentikan server kami dan memastikan bahwa kami masih di dalam folder root proyek kami.
Kita akan membuat file get get art dan itu hanya get get diabaikan kita tekan enter dan sekarang kita harus memiliki file
get get Abaikan di sini.
Saya hanya akan menyalin dan menempelkan templat yang berasal dari get hub dan kami akan
menempelkannya di dalam sini lalu tekan save.
Jadi sekarang di dalam folder proyek kami, Anda dapat melihat bahwa kami memiliki titik kami, abaikan titik dan file kami dan Atom
sebenarnya cukup membantu untuk menunjukkan kepada Anda file yang akan diabaikan dengan menunjukkannya kepada Anda dalam
mode seperti ini.
Anda dapat melihat folder ini tidak akan dikomit, baik yang satu ini maupun file dan titik kami dan
yang lainnya muncul dalam warna yang sedikit berbeda tetapi mari kita konfirmasikan untuk diri kita sendiri
Saya akan teruskan dan menambahkan semua file saya di folder saya dan kemudian saya akan
menambahkan pesan commit yang hanya akan menjadi dan file lingkungan dan sekarang saya akan mendapatkan dorongan ke master asal saya yang sekarang akan dorong
semua hal yang telah saya komit secara lokal untuk mendapatkan hub.
Sekarang jika salah satu dari ini membingungkan, saya akan yakin bahwa Anda telah menyelesaikan get hub dan mendapatkan modul dan
Anda merasa nyaman dengannya.
Karena saya membahas lebih detail tentang ini dalam modul itu.
Jadi mari kita tekan enter.
Dan sekarang jika kita masuk ke folder proyek kita dan kita menyegarkan proyek kita maka Anda dapat melihat DOT kami
dan file tidak terlihat dalam daftar file kami.
Dan ketika kita masuk ke pembaruan kami J. S. Ini hanya mengacu pada proses kami Dot
dan Dot secret dan tidak ada cara bagi siapa pun online untuk dapat melihat apa kunci API kami atau apa rahasia kami kecuali
mereka memiliki akses yang membuat kami dan enkripsi kami aman.
Namun ingat bahwa get dan GitHub bekerja berdasarkan kontrol versi, jadi jika Anda mengeklik riwayat untuk
pembaruan kami J. S. maka Anda akan dapat melihat seluruh riwayat commit dan semua
versi sebelum versi saat ini.
Dan jika kita klik pada enkripsi tingkat dua, Anda dapat melihat bahwa salah satu perbedaan di sini adalah bahwa
kami dulu menyimpan rahasia di dalam apt J. S. dalam teks biasa tidak di dalam variabel lingkungan kita.
Jadi inilah mengapa sangat penting bahwa hal pertama yang Anda lakukan ketika Anda memulai proyek
baru adalah menggabungkan titik dan membuat titik dan file Anda dan saat Anda membuat apa pun yang aman untuk membuatnya di
dalam file itu.
Dan untuk menambahkan templat abaikan itu sebelum Anda mendorong untuk bangun.
Sekarang ketika kita siap untuk menyebarkan aplikasi kita ke Heroku mereka sebenarnya memiliki cara khusus untuk menangani VAR konfigurasi ini karena
jelas untuk aplikasi Anda untuk dapat menjalankannya membutuhkan akses ke rahasia itu dan ada panel khusus
yang akan dapat untuk melihat di dashboard Anda di mana Anda dapat mengatur konfigurasi VAR itu terutama
di dalam Heroku dan mereka akan menjaga mereka aman dan keluar dari Internet sehingga menjaga kunci API dan kunci enkripsi Anda
tetap aman.
Jadi ia mengikuti format yang persis sama dengan apa yang telah kita lihat di titik akhir dan Anda mengaksesnya dengan cara
yang sama dengan menggunakan proses titik akhir.
Sekarang dalam pelajaran berikutnya kita akan kembali ke otentikasi dan kita akan meningkatkan
keamanan untuk pengguna kita dengan beralih dari enkripsi ke hashing
Jadi untuk semua itu dan banyak lagi saya akan melihat pada pelajaran selanjutnya.