Otentifikasi pengguna di Django

Django datang dengan sistem otentifikasi pengguna. Dia menangani akun pengguna, kelompok, perizinan dan sesi pengguna berbasis-kue. Bagian ini dari dokumentasi menjelaskan bagaimana penerawan awal bekerja keluar dari kotak, sama halnya bagaimana extend and customize dia untuk mencocokkan kebutuhan proyek anda.

Ikhtisar

Sistem autentifikasi Django menangani kedua autentifikasi dan otentifikasi. Secara singkat, autentifikasi memeriksa seorang pengguna yang menjadi tuntutan mereka, dan otorisasi menentukan apa seorang pengguna diautentifikasi diizinkan melakukan. Disini istilah autentifikasi digunakan untuk mengacu kedua tugas.

Sistem autentifikasi terdiri dari:

  • Pengguna

  • Perizinan: Bendera biner (ya/tidak) menandakan apakah seorang pengguna mungkin melakukan tugas tertentu.

  • Kelompok: Sebuah cara umum dari memberlakukan label dan perizinan pada lebih dari satu pengguna.

  • Sistem mencampur sandi dikonfigurasi

  • Formulir dan alat-alat tampilan untuk pengguna masuk, atau membatasi isi

  • Sistem backend tertanam

Sistem autentifikasi di Django bertujuan untuk sangat umum dan tidak menyediakan beberapa fitur umumnya ditemukan di sistem autentifikasi jaringan. Pemecahan untuk beberapa dari masalah umum telah diterapkan di paket-paket pihak-ketiga:

  • Pemeriksaan kekuatan sandi

  • Mencengkik dari usaha masuk

  • Autentifikasi terhadap pihak-ketiga (OAuth, sebagai contoh)

  • Tingkat-obyek perizinan

Pemasangan

Dukungan autentifikasi digabung sebagai modul bantuan Django di django.contrib.auth. Secara awalan, konfigurasi yang dibutuhkan sudah termasuk di settings.py dibangkitkan oleh django-admin startproject, ini terdiri dari dua barang terdaftar di pengaturan INSTALLED_APPS anda:

  1. 'django.contrib.auth' mengandung inti dari kerangka kerja autentifikasi, dan model awalannya.

  2. 'django.contrib.contenttypes' adalah content type system Django, yang mengizinkan perizinan untuk digabungkan dengan model anda buat.

dan barang-barang ini di pengaturan MIDDLEWARE anda:

  1. SessionMiddleware mengelola sessions lintas permintaan.

  2. AuthenticationMiddleware menggabungkan pengguna dengan permintaan menggunakan sesi.

Dengan pengaturan ini di tempat, menjalankan perintah manage.py migrate membuat tabel-tabel basisdata yang dibutuhkan untuk autentifikasi model terkait dan perizinan untuk model apapun ditentukan di aplikasi terpasang anda.

Penggunaan

Using Django's default implementation

API reference for the default implementation

Customizing Users and authentication

Password management in Django

Back to Top