Yasso oluşturmak için bir sistem bir web-tabanlı tek oturum açma OAuth2 & nbsp kullanarak hizmet;. Bu OAuth2 şartname taslağı 25 uyumlu olması amaçlanmıştır.
Başlarken
Bir demo yapılandırması başlamanıza yardımcı dahildir. Yükleme ve böyle demo yapılandırmasını çalıştırın:
& Nbsp; git clone git: //github.com/hathawsh/yasso.git
& Nbsp; cd Yasso
& Nbsp; virtualenv --no-sitesi-paketler.
& Nbsp; bin / install pip -U zc.buildout
& Nbsp; bin / buildout
& Nbsp; bin / pserve demo.ini
Demo Yasso Sunucu daha sonra http sunulacak: // localhost: 8510 /. Bunu göz atabilirsiniz, ama çok daha görmezsiniz.
Başka bir kabukta, yüklemek ve oauth2sample istemci çalıştırın:
& Nbsp; git clone git: //github.com/hathawsh/oauth2sample.git
& Nbsp; cd oauth2sample
virtualenv --no-sitesi-paketler.
& Nbsp; bin / install pip -U zc.buildout
& Nbsp; bin / buildout
& Nbsp; bin / pserve Yasso-demo.ini
örnek istemci sonra http sunulacak: // localhost: 8511 /. Orada göz atın. Sen bitiş noktası yetki Yasso yönlendirileceksiniz ve Yasso HTTP temel kimlik doğrulaması kullanarak oturum talep edecektir. Kullanıcı adınızı sample1, parola, parola ile oturum açın. Son olarak, geri numune OAuth2 müşteriye yönlendirilecek ve sample1 olarak girecektir. Demo sonu.
Her şey amele varsayarsak, bu demo nasıl olmalıdır, hangi kısa ve sessiz: Tek oturum açma kullanıcılara çoğunlukla görünmez olması gerekir.
HTTP temel kimlik doğrulaması muhtemelen değiştirmek isteyeceksiniz ilk şey. Bunu değiştirmek için repoze.who yapılandırma dosyasına işaret eden, kuruluşunuz için bir repoze.who yapılandırma uygun en oluşturmak ve (yerine demo.ini olan) kendi Piramit yapılandırma dosyasını kullanın.
Yapı
Yasso üç farklı Piramit uygulama oluşmaktadır. Her biri farklı güvenlik politikaları ve görünümleri vardır, ama hepsi aynı modeli nesneleri kullanın.
- Authorize uygulama son kullanıcılara görünür. Bir kullanıcı bir istemci web sitesinden oturum istediğinde, istemci Yasso kullanıcının tarayıcı kullanıcı oturum izin bitiş noktası (authorize uygulamasının bir parçası olan) yetki yönlendirir. Kullanıcı günlükleri sonra, Yasso tarayıcı yönlendirmeleri geri OAuth2 parametreleri ile müşteri web sitesine; Web sitesi yetkilendirme bitirmek için belirteç uç noktasını çağırır.
- Belirteç uç noktasını sağlayan belirteç uygulama, kullanıcılara görünür olması amaçlanmıştır değildir. Bir kullanıcı Yasso onaylanacak sonra, istemci web siteleri bir erişim belirteci oluşturmak için (REST çağrısı kullanarak) doğrudan belirteç son nokta diyoruz. Bir erişim belirteci istemci kaynak uygulamasını kullanmanızı sağlar.
- Kaynak uygulaması da kullanıcılara görünür olması amaçlanmamıştır. Kaynak uygulama Aramalar POST parametreleri veya HTTP başlıklarını geçerli bir erişim belirteci gerektirir. Varsayılan kaynak uygulaması sadece kullanıcı kimliği almak için istemci web sitesine izin verir, ancak müşteriler kullanıcı adına başka şeyler yapmak için izin kendi görüşlerini oluşturabilirsiniz.
Yasso birlikte üç uygulamaları harmanlayarak WSGI kompozit uygulama içerir. birleşik uygulama / kaynak uygulama kaynak URL belirteci uygulama / belirteci ile başlayan yolları ve authorize uygulama diğer tüm URL'ler ile başlayan URL yolları eşler.
Gereksinimleri :
- Python
Yorum Bulunamadı