Po przeprowadzeniu badań i rozmowie z kilkoma administratorami systemu, którzy mieliby to zarządzać, zdecydowaliśmy się na dwie opcje, które powinny zadowolić większość ludzi. Opiszę je tutaj dla tych, którzy byli również zainteresowani wynikiem.
Authentication Service zainstalowana w origanisation za DMZ
Jeśli użytkownik chce korzystać z uwierzytelniania z aktywnym serwerem lokalem katalogu będą wymagane do zainstalowania agenta w ich DMZ i otwartego portu 443 do niego. Nasza usługa zostanie skonfigurowana tak, aby trafiała w tę usługę w celu przeprowadzenia uwierzytelniania.
Usługa ta będzie znajdować się w strefie DMZ i będzie otrzymywać żądania uwierzytelnienia z aplikacji SaaS. Usługa podejmie próbę powiązania z katalogiem aktywnym tymi poświadczeniami i zwróci status, aby wskazać powodzenie lub niepowodzenie.
W tym przypadku uwierzytelnianie formularzy w aplikacji nie zmieni się, a użytkownik nie będzie wiedział o uwierzytelnianiu za kulisami.
OpenId
Podobny do pierwszego podejścia, usługa zostanie zainstalowany w DMZ klienta, a port 443 zostanie otwarty. To będzie dostawca OpenID.
Aplikacja SaaS będzie konsumentem OpenID (już jest na Facebooku, Twitterze, Google itd. Zaloguj się).
Gdy użytkownik chce się zalogować, zostanie przedstawiony dostawca OpenId, prosząc go o podanie nazwy użytkownika i hasła. Ten ekran logowania będzie obsługiwany z DMZ klienta. Użytkownik nigdy nie wprowadzi swojej nazwy użytkownika ani hasła do aplikacji SaaS.
W tym przypadku istniejące uwierzytelnianie oparte na formularzach jest zastępowane uwierzytelnianiem OpenId z usługi w DNZ klienta.
Trzecią badaną przez nas usługą są usługi stowarzyszone Active Directory, ale jest to własność Active Directory. Pozostałe dwa rozwiązania obsługują uwierzytelnianie oparte na LDAP w Internecie.
Dobre pytanie. Chciałbym również wiedzieć, –
To pytanie jest bardzo podobne do http://stackoverflow.com/questions/8934753/how-to-authenticate-users-with-a-ustom-e-reote-active-directory-server i http://stackoverflow.com/questions/2567919/single-sign-on-for-a-web-app –