Çapraz Etki Tek Seçici Oturum

4 Cevap php

Ben arıyorum Onun açıkça çapraz değil etki oturumları, ama ben istiyorum ne olduğunu açıklamak için onun kolay yolu.

I have a system which creates websites. The websites are hosted across lots of different servers.

Users can create their account and then they can create lots of websites. They could create

www.mysite.com subdomain.mysite.com and create lots of different sites.

Bazı kere, siteler muhtemelen aynı site düşünülmesi gerektiğini, ancak bazı zamanlarda, siteler aslında çok yakından bağlantılı olacak, birbirinden tamamen farklı olacaktır.

For example: (Different domain entirely) mysite-news.com mysite-blog.com or (Same domain, different subdomain) news.mysite.com blog.mysite.com

Ne yapmam gerekiyor onlar çapraz site oturum açma izin istiyorum, bir onay kutusunu tıklatarak olanak tür bir federasyon oluşturmak için, onlar isteyen kullanıcılar için bir yoldur. Sitelerin 1000'ler etkilenecek çünkü, onun kalıcı bir değişiklik olmadıkça yapılandırmaları değiştiremezsiniz ve diğer siteleri etkilemez.

What do you think would be the best way to support this? OpenID, SSO?

Ben siteleri 'federasyon' yaratmak ve daha sonra oturum açmaları çapraz etki olmasını sağlamak için basit bir şey gerekiyor. Birisi katılmak istiyorsa o zaman olabilir.

4 Cevap

OpenID bazı güzel özellikleri sağlar, ama ne yazık ki, aradığınız çapraz etki alanı davranış standart bir OpenID uygulamasında bulabilirsiniz şey değildir. OpenID birincil tasarım ilkelerinden biri sağlayıcısı kendi açık rızası * olmadan kullanıcı hakkında herhangi bir bilgi ifşa değil, ve böylece herhangi bir saygın OpenID sağlayıcısı zaten sitem-bloga giriş yaptınız sitem-news.com söylemek asla olmasıdır kullanıcı onayı için sormadan. com.

[Teknik açıdan, ne oluyor burada sitem-news.com ve sitem-blog.com aynı güvenlik "alanında" in, kavramsal, olmasıdır, ama OpenID URL desenleri ile alemlere tanımlar ve farklı etki konum çünkü onlar eşleşmiyor.]

Ve bu size istediğiniz kullanıcı deneyimini vermez. Burada ihtiyacınız sisteminin tür özetleyen güzel bir iş yapmak önceki bazı cevaplar vardır:

Kısacası, sitem-news.com ve sitem-blog.com gelen soruları yanıtlamak için login.mysite.com üzerine auth hizmet çeşit ayar olacak. Bu içinde OpenID yararlanabilirsiniz birkaç yollar hala vardır.

  1. Redirect-to-giriş-ve-iade-a-imzalı-token akış OpenID yapar tam olarak ne olduğunu tarif. Yani hala imzalanmış belirteçleri ve tekrar koruma tüm bu yönetme yapmak için bir OpenID uygulamasını kullanabilirsiniz, istemci siteleri sadece OpenID ilk "keşif" kısmını atlayın ve her login.mysite.com sağlayıcıya kullanıcıları yönlendirmek için olsun. O zaman çalışır sitelerin kendi beyaz liste olabilir bir özel amaçlı sağlayıcı çünkü Ve login.mysite.com, "Ben sitem-blog.com güveniyorum" adımını atlamak için alır. OpenID burada tamamen arkası sahneleri olurdu, kullanıcıların OpenID şekilde dahil olduğunu asla bilemez.

  2. login.mysite.com, sırayla, (Google veya Yahoo veya myOpenID gibi bir uzman olsun) kendi OpenID sağlayıcısı karşı kimlik doğrulaması için kullanıcılara sormak OpenID kullanabilirsiniz. Oradan bir standart OpenID login gibi görünür ve tüm yararları elde ediyorum, dezavantaj giriş-yönlendirme zinciri biraz daha alır (ve buna yavaş) olmasıdır. Onları tatili var.

İyi şanslar. Bu oldukça sık sık gündeme gelen bir soru, ve ben insanları işaret edebilir gerçekten harika bir referans uygulama bulmak için henüz ettik, bu yüzden bulursan iyi bir şey geri gelip bize bildirin do.

Son olarak, obligatory link to Matasano Chargen's screenplay on the subject.

[*] Son Google Buzz fiyasko onların bilgi paylaşılıyor kimin hakkında kullanıcıları sürpriz ne olur iyi bir hatırlatmadır.

SSO sadece bir kavram / devlet ... Size ulaşmak için çalışıyoruz budur.

OpenID kimlik doğrulaması için iyi olduğunu ve birden sitelerden kimlik doğrulaması için iyidir. Bu başka bir siteden kimlik bilgilerini taşımaz.

Endüstri standardı SSO teknoloji gibi görünüyor ne IMO OAuth olduğunu. Bu Facebook, Twitter, Google tarafından kullanılan ..

Google, standart kimlik doğrulama yöntemi olarak itmek çalışıyorsunuz OpenID ve OAuth melez bir protokolü hayata geçirdi. Google neredeyse tam bahsettiğimiz gibi federe bir giriş çözüm sağlar.

Benim yorumundan ne söz vardı aklınızda bir kullanıcı sadece kendi hesabı desteklenmektedir her yerde oturum için kendi ayarlarında bir kutuyu bir çözüm olması gibi ... Bu OAuth ve OpenID hem de geride ilkelerine aykırı. Ben aslında bir şey değer bir geçerli çözüm bilmiyorum.

Temelde şimdi ne yapılır yerine OpenID tarafından sağlanan tek bir giriş ile ayrı ayrı her sitesine bağlanırken ... Sen OpenID hesabı ile bir siteye giriş, sen OAuth yetkilendirme isteği yönlendirilmiş olsun. Izin sürece bu OAuth hizmet ile OpenID hesabı ile doğrulanmış olarak iptal edilene kadar bu daha sonra gelecekte bu sitede sizi doğrulamak için OAuth sunucu izin verecektir.

Eğer anlaşılacağı gibi, OpenID veya GGG ya uygun olacaktır.

Yazımın bakın 29 Temmuz 2008, 12:50 http://groups.google.co.uk/group/comp.lang.php/browse_thread/thread/b682ed2a8b7fbb3f/f5f27f120e264fa0?hl=en&lnk=gst&q=single+sign+on+symcbean#f5f27f120e264fa0

SSO uygulamak için nasıl bir örnek.

C.

@ Keturn açıklandığı gibi, OpenID bu özel sorun için bunu tavsiye etmem neden olan, sistemin kandırma olmadan örtülü güven izin vermez. Tek-Sign-On dağıtılmış mimarisi için tasarlanmıştır - Bunun yerine, ben de Shibboleth bir göz olurdu.

En master.example.com master.example.com child.example.com için giriş işlevsellik sağlar child.example.com, böylece web sitesine bağlantılı web varsayalım. Kayıtlı bir oturum açma ile bir kullanıcı master.example.com şimdi üye sadece bir kaynak http://child.example.com/resource, erişmek istiyorum. Şimdi, Shiboleth devreye giriyor:

  1. Authentication: Does the user have a security token?
    1. Kullanıcı zaten master.example.com bir güvenlik belirteci varsa, geçerliliği için kontrol ve proses 2. adımda devam eder.
    2. Kullanıcının geçerli bir belirteci yoksa, o bir giriş sitesine, örneğin iletilir http://master.example.com/login. Oturum açtıktan sonra, kullanıcı adım 1'e iletilir.
  2. Yetkilendirme (isteğe bağlı): master.example.com izin verebilir veya child.example.com sadece erişilebilir hakkında ek bilgi (örneğin, belirli bir forum sağlayarak child.example.com belirli bir kaynağa erişim izin vermemek master.example.com prim üyeleri. kullanıcının üye statüsü bilgiler master.example.com yalnızca görünür, o) izin vermek veya erişimi reddetmek zorundadır.

Shibboleth uygulamaları apache2 veya php gibi uygulama düzeyinde gibi birçok hizmet mevcuttur (örneğin, SimpleSAML).