django-pyroven

Software screenshot:
django-pyroven
Rincian Software:
Versi: 0.9
Tanggal Upload: 20 Feb 15
Pengembang: Andrew Ryrie
Lisensi: Gratis
Popularitas: 12

Rating: 5.0/5 (Total Votes: 2)

Django-pyroven adalah aplikasi Django yang menyediakan otentikasi backend Django yang dapat ditambahkan ke AUTHENTICATION_BACKENDS dalam pengaturan modul Django:
AUTHENTICATION_BACKENDS = (
& Nbsp; 'pyroven.pyroven_django.RavenAuthBackend',
& Nbsp; 'django.contrib.auth.backends.ModelBackend'
)
Hal ini memungkinkan kedua Django login normal dan Raven login.
Apa pun menggunakan pyroven harus memastikan bahwa konfigurasi dimuat; hal ini dilakukan dengan menetapkan variabel config di Raven kelas tunggal:
dari pyroven impor RavenConfig
dari pyroven.pyroven_django impor Raven
def mengkonfigurasi ():
& Nbsp; r = Raven ()
& Nbsp; jika r.config adalah None:
& Nbsp; r.config = RavenConfig ("raven.ini")
Halaman login harus mengarahkan pengguna ke Raven:
def raven_login (permintaan):
& Nbsp; # Pastikan kita dikonfigurasi dengan benar
& Nbsp; configure ()
& Nbsp; # Dapatkan objek Raven dan kembali redirect ke server Raven
& Nbsp; r = Raven ()
& Nbsp; kembali r.get_login_redirect ()
Ketika pengguna telah dikonfirmasi dengan Raven, server Raven akan mengarahkan mereka kembali ke situs Anda (yang tepat URL ditentukan dalam file .ini di atas). Halaman kembali harus memanggil Django otentikasi dan fungsi masuk dengan tanda yang diterima dari server Raven melalui HTTP GET:
dari django.contrib.auth impor mengotentikasi, login
def raven_return (permintaan):
& Nbsp; # Pastikan kita dikonfigurasi dengan benar
& Nbsp; configure ()
& Nbsp; # Dapatkan token yang server Raven mengirimkan - ini harus benar-benar
& Nbsp; # memiliki mencoba / kecuali di sekitarnya untuk menangkap KeyError
& Nbsp; tanda = request.GET ['WLS-Response']
& Nbsp; # Lihat apakah ini tanda yang valid
& Nbsp; user = authenticate (response_str = token)
& Nbsp; jika pengguna adalah None:
& Nbsp; # Semacam err
& Nbsp; lain:
& Nbsp; login (request, user)
& Nbsp; # Redirect suatu tempat masuk akal
& Nbsp; kembali HttpResponseRedirect ('/')
Berkas .ini yang pengaturan Raven dimuat dari memiliki format berikut:
[Gagak]
login_url = "http://raven.cam.ac.uk/auth/authenticate.html"
logout_url = "http://raven.cam.ac.uk/auth/logout.html"
return_url = "http://your.server.cam.ac.uk/ravenreturn/"
pubkeys = {'2': '/ path / ke / pubkey2.crt'}

Persyaratan :

  • Python
  • Django

Komentar untuk django-pyroven

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!