2016-01-21 36 views
12

Właśnie się zastanawiałem, czy mógłbyś odpowiedzieć na pytanie dotyczące uwierzytelniania w intranecie przedsiębiorstwa. Obecnie tworzymy serwer do publikowania w intranecie, który oczywiście wymaga ochrony za pomocą jednokrotnego logowania w przedsiębiorstwie.ESO Authentication na IIS dla aplikacji PHP i .NET (Shibboleth/SAML/WiF ...)

Niestety utknęliśmy z serwerem IIS, ponieważ potrzebujemy uruchomić zarówno aplikacje PHP, jak i .NET. Główna aplikacja jest zaprogramowana w PHP, ale musimy dodać kilka widżetów dołączonych do jQuery, które polegają na modułach ASPX.

Firma oferuje wszystkie rodzaje uwierzytelniania. Udało nam się już ochronić serwer za pomocą Shibboleth (używając SAML 2.0). Pokazuje ekran ESO do zalogowania, a następnie przekierowuje na nasz serwer z zalogowaną sesją. Niestety, widżety odnoszące się do procedur obsługi ASPX nie są poprawnie uwierzytelniane.

Nigdy nie robiłem uwierzytelniania/SAML/wif/cokolwiek, więc proszę wybaczyć moje pytanie:

co byłoby najbardziej obiecującym sposobem uwierzytelniania z naszej konfiguracji (IIS featuren PHP i ASPX aplikacje)? Czy powinniśmy trzymać się SAML i Shibboleth, czy powinniśmy użyć WiF/WS Federation/Windows Authentication?

Czy możliwe jest wsparcie zarówno PHP, jak i ASPX za pomocą jednej metody uwierzytelniania?

Dzięki za odpowiedź! Nik

+0

nie Czy firma preferuje metodę uwierzytelniania? Może to zależeć od skali firmy, ale w każdym miejscu naprawdę oczekiwałbym jakiejś polityki na rzecz konsolidacji w jednej technologii, szczególnie w przypadku czegoś tak centralnego i krytycznego jak uwierzytelnianie korporacyjne. – Fasermaler

+0

Ponieważ firma działa globalnie, zależy od wielu różnych technik uwierzytelniania. Dla mnie było zaskakujące, że technika uwierzytelniania zależy od używanych języków programowania. Czy byłoby możliwe korzystanie z uwierzytelniania Windows/WiF razem z aplikacjami PHP? – wheelmaker24

+0

Jest to z pewnością możliwe, ja osobiście mam doskonałe doświadczenia z Windows Authentication dla aplikacji PHP. Używamy również php_ldap, aby uzyskać dane użytkownika i członkostwa grupy poza AD, więc integruje się całkiem bezproblemowo w mojej opinii. Uwierzytelnianie systemu Windows może nie pasować do sieci publicznych, ale jeśli sieć intranetowa jest ograniczona do sieci lokalnych/dostępna za pośrednictwem sieci VPN/RDP, może również dobrze działać w przypadku Twojego scenariusza. – Fasermaler

Odpowiedz

2

nie wiem zbyt wiele o pojedynczy znak w ale sprawdź The DOTNET class

Klasa DotNet pozwala wystąpienia klasy z zespołu Net i wywołać jego metody i uzyskać dostęp do jego właściwości.

$ obj = new DotNet ("Zgromadzenie", "classname")

dzięki czemu można zachować uwierzytelniania @ pojedynczej biblioteki Dot Net wspierać zarówno PHP i ASPX z jednej metody uwierzytelniania.

<?php 
$stack = new DOTNET("mscorlib", "System.Collections.Stack"); 
$stack->Push(".Net"); 
$stack->Push("Hello "); 
echo $stack->Pop() . $stack->Pop(); 
?> 

Zobacz także Best way to call .NET classes from PHP?