SECRET_KEY dan Kuki Bertandatangan
Cara Flask menandatangani data sesi dengan selamat.
SECRET_KEY dan Kuki Bertandatangan ialah pelajaran Flask Academy percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Flask Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Flask Academy merangkumi sejumlah 4 pelajaran.
Tempat Sesi Disimpan
Secara lalai, Flask menyimpan seluruh sesi dalam kuki pada pelayar pengguna, bukannya pada pelayan anda. Hal ini mempunyai implikasi besar.
Masalah Pengubahan
Jika data berada dalam pelayar, pengguna boleh mengubahnya. Flask menghalangnya dengan menandatangani kuki supaya perubahan dapat dikesan.
Kenali SECRET_KEY
Penandatanganan memerlukan rahsia. SECRET_KEY ialah nilai peribadi yang digunakan Flask untuk mengecap dan mengesahkan setiap kuki sesi. 🔑
app.config['SECRET_KEY'] = 'change-me'Tiada Kunci, Tiada Sesi
Gunakan sesi tanpa menetapkan SECRET_KEY dan Flask akan mencetuskan RuntimeError. Flask enggan menandatangani tanpa kunci.
Ditandatangani, Bukan Disulitkan
Penting: kuki sesi lalai adalah ditandatangani, bukan disulitkan. Sesiapa sahaja boleh membacanya, jadi jangan sekali-kali menyimpan rahsia sebenar di dalamnya.
Cara Penandatanganan Mengesahkan
Pada setiap permintaan, Flask mengira semula tandatangan daripada kuki dan kunci. Ketidakpadanan bermaksud pengubahan, jadi sesi ditolak.
Jadikan Ia Panjang dan Rawak
SECRET_KEY yang kukuh hendaklah panjang dan sukar dijangka. Jana satu dengan modul secrets dan bukannya menaip satu perkataan.
import secrets
key = secrets.token_hex(32)Jangan Pernah Tetapkan Secara Keras dalam Git
Jauhkan SECRET_KEY daripada kawalan sumber. Muatkannya daripada pemboleh ubah persekitaran supaya setiap penggunaan mempunyai nilainya sendiri.
import os
app.config['SECRET_KEY'] = os.environ['SECRET_KEY']Memutar Ganti Kunci
Tukar SECRET_KEY dan setiap tandatangan sesi sedia ada akan berhenti sepadan. Semua pengguna akan dilog keluar serentak.
Kunci yang Sama di Mana-mana
Menjalankan beberapa tika aplikasi di belakang pengimbang beban? Kesemuanya mesti berkongsi satu SECRET_KEY atau setiap satunya akan menolak kuki milik yang lain.
Alternatif pada Sisi Pelayan
Perlukan data sesi yang lebih besar atau tersembunyi? Sambungan seperti Flask-Session menyimpannya pada pelayan dan hanya menyimpan ID dalam kuki.
Semakan Pantas
Fikirkan perkara yang sebenarnya dilindungi oleh kuki sesi Flask lalai.
Ringkasan
Anda melihat bahawa SECRET_KEY menandatangani kuki sesi untuk mengesan pengubahan. Jadikan ia panjang, muatkannya daripada persekitaran dan jangan sekali-kali masukkannya ke dalam komit. 🔐
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “SECRET_KEY dan Kuki Bertandatangan” percuma?
Ya — teks penuh “SECRET_KEY dan Kuki Bertandatangan” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Flask Academy, tingkat taraf kepada CoddyKit PRO. Kursus Flask Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “SECRET_KEY dan Kuki Bertandatangan”?
Cara Flask menandatangani data sesi dengan selamat. Anda berlatih Flask Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Flask Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Flask Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “SECRET_KEY dan Kuki Bertandatangan” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Flask Academy ini?
Ya. Setiap pelajaran Flask Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Tetapkan dan Baca Kamus session
- SECRET_KEY dan Kuki Bertandatangan
- Tetapkan Kuki Tersuai pada Respons
- Mesej Kilat antara Permintaan