Flask Academy · Pelajaran

Token Penyegaran dan Masa Berlaku

Putar token akses tanpa harus masuk lagi.

Pelajaran 4 dari 413 langkah

Token Penyegaran dan Masa Berlaku adalah pelajaran Flask Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Flask Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Flask Academy mencakup 4 pelajaran total.

Mengapa Tanda Kedaluwarsa

Tanda yang dicuri hanya berbahaya selama masih berfungsi. Memberikan masa kedaluwarsa yang singkat pada setiap tanda akses memperkecil jendela risikonya. ⏳

Klaim exp

Masa kedaluwarsa tersimpan dalam klaim exp pada tanda, berupa stempel waktu. Setelah waktu melewatinya, tanda akan ditolak apa pun keadaannya.

Atur Masa Berlaku

Atur berapa lama tanda akses berlaku dengan JWT_ACCESS_TOKEN_EXPIRES. Jangka singkat seperti 15 menit merupakan bawaan yang masuk akal.

from datetime import timedelta
app.config["JWT_ACCESS_TOKEN_EXPIRES"] = timedelta(minutes=15)

Masalah Masuk Kembali

Masa kedaluwarsa yang singkat memang aman, tetapi mengganggu jika pengguna harus mengetikkan kata sandi setiap 15 menit. Tanda penyegaran menyelesaikan masalah ini.

Dua Tanda, Dua Tugas

Tanda akses yang berumur singkat memanggil API Anda; tanda penyegaran yang berumur panjang hanya digunakan untuk meminta tanda akses baru.

Terbitkan Keduanya Saat Masuk

Saat masuk, buat tanda akses dan tanda penyegaran secara bersamaan, lalu kembalikan keduanya kepada klien.

from flask_jwt_extended import create_refresh_token
rt = create_refresh_token(identity=user.id)

Titik Akhir Penyegaran

Tambahkan rute /refresh yang dilindungi oleh jwt_required(refresh=True) agar hanya tanda penyegaran yang valid yang dapat mengaksesnya.

@app.post("/refresh")
@jwt_required(refresh=True)
def refresh():
    ...

Kembalikan Tanda Akses Baru

Di dalam /refresh, baca identitas lalu buat tanda akses yang benar-benar baru. Pengguna dapat terus melanjutkan tanpa mengetik ulang kata sandi. 🔄

new = create_access_token(identity=get_jwt_identity())
return {"access_token": new}

Tanda Penyegaran Berumur Lebih Panjang

Atur JWT_REFRESH_TOKEN_EXPIRES ke hitungan hari atau minggu. Tanda ini lebih jarang terekspos, sehingga masa berlaku yang lebih panjang merupakan kompromi yang dapat diterima.

app.config["JWT_REFRESH_TOKEN_EXPIRES"] = timedelta(days=30)

Simpan Tanda Penyegaran dengan Aman

Karena memiliki kekuatan besar, simpan tanda penyegaran di penyimpanan aman, jangan pernah di ruang yang dapat dibaca JavaScript biasa, dan kirim hanya ke /refresh.

Mencabut Tanda

Untuk benar-benar mengeluarkan seseorang, tambahkan daftar blokir berisi id tanda yang ditolak server. Inilah sedikit keadaan yang terkadang dibutuhkan autentikasi tanpa keadaan.

Pemeriksaan Singkat

Ingat kembali tugas yang dilakukan setiap jenis tanda.

Ringkasan

Pertahankan tanda akses tetap singkat masa berlakunya dan pasangkan dengan tanda penyegaran berumur panjang yang dapat membeli tanda baru di /refresh. Tambahkan daftar blokir untuk mencabutnya. ✅

Gratis untuk memulai

Belajar Python dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
30
Pelajaran
120

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Token Penyegaran dan Masa Berlaku” gratis?

Ya — teks lengkap “Token Penyegaran dan Masa Berlaku” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Flask Academy, upgrade ke CoddyKit PRO. Kursus Flask Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Token Penyegaran dan Masa Berlaku”?

Putar token akses tanpa harus masuk lagi. Kamu berlatih Flask Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Flask Academy?

Tidak diperlukan pengalaman sebelumnya. Flask Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Token Penyegaran dan Masa Berlaku” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Flask Academy ini?

Ya. Setiap pelajaran Flask Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Sesi vs Token Tanpa Status
  2. Terbitkan Token Akses saat Login
  3. Lindungi Titik Akhir dengan jwt_required
  4. Token Penyegaran dan Masa Berlaku
← Kembali ke Flask Academy