Django web uygulamasını diğer web tabanlı ürünlerle (büyük olasılıkla üçüncü taraf django olmayan uygulamalar) entegre etmek istiyorum. Diğer sitelerin kullanıcılarına sitemde tek bir oturum açarak nasıl oturum açmasına izin verebilirim? Kullanıcılarımı 3. bölüm sitelere imzalamak için sitemde 3. taraf sitelere ait kullanıcı adlarını ve şifreleri güvenli bir şekilde nasıl depolarım?Farklı siteler arasında güvenli bir Django tek oturum açma nasıl oluşturulur?
cevap
Bazı daha fazla fikir ... kurumsal olmayan uygulama için
OAuth
OAuth. Django projeleri: django-oauth ve django-oauth-consumer. Madde: bunun kendi kullanıcıları üzerinde "kurumsal" daha fazla denetim sağlar ve bu kullanıcıların hangi uygulamaya erişebilir çünkü oauth in Django
SAML
Güvenlik Onayı Biçimlendirme Dili (SAML) kurumsal uygulamalar için daha fazladır. Bu protokol çoğunlukla Google ve arkadaşları (örneğin salesforce.com) tarafından yürütülür.
Makaleler: SAML Single Sign-On (SSO) Service for Google Apps ve Demystifying SAML.
Python projeleri: PySAML ve
entegrasyon Django blog post: (. PySAML kullanır değil komple bir çözüm ... Sadece bir başlangıç noktası) SAML with Django
Bilgi Kartları
IIRC Information Cards vardır Microsoft evren SAML'ye eşdeğerdir. Python projeleri: Python Information Card Processing ve Information Cards for Python. Bildiğim kadarıyla Django için bir şey yok.
--Edit--
bulunmaktadır CASdjango-cas ile entegre edilebilir (User Manual). Ben yaklaşık unutmuştum
Ve iki tane daha SAML projeleri: gheimdall2 ve python-saml2Hiç kullanmadı, ancak Django-sso var.
diğer olasılık vardır, ama OpenID Çok fazla kişi tarafından kullanılan ve kendi türünün en büyük biridir çünkü onların üzerinde ter olmaz.
bu yanıtında bağlanmak Bilginize iki makale (code.google.com üzerinde bir ve oracle.com diğer) de ölü bağlantılar şimdi. Oracle'ın yeni URL'sini buldum ve düzeltdim. –
Bulduğum şeyin kırık code.google.com bağlantısıyla belirtilen makale olması gerektiğine inanıyorum ve bunu düzeltdim. – rory