Mój scenariusz to aplikacja trójwarstwowa, w której warstwa danych jest bazą danych SQL Server, warstwa środkowa jest aplikacją WCF obsługiwaną w usłudze systemu Windows, a na końcu prezentacja jest aplikacją Asp.Net MVC .Uwierzytelnianie WCF/ASP.NET
Jak zwykle, warstwa środkowa jest tą, która wykonuje całą logikę biznesową. Dostęp do bazy danych, definiowanie reguł biznesowych .. itd.
Okay, jak na razie tak dobrze! ALE oto pytanie: Jak radzisz sobie z zabezpieczeniami w takim scenariuszu? Chodzi o to, że użytkownik musi zalogować się do aplikacji ASP.NET, ale chcę ją uwierzytelnić nie tylko w ASP, ale także w środkowej warstwie WCF, ponieważ usługa WCF ma być dostępna dla większej liczby aplikacji.
Chcę, aby użytkownik zalogował się w aplikacji Asp.Net i pozwolił WCF znać również poświadczenia. Czy jest jakiś rodzaj sesji w WCF, w której można określić zalogowanego użytkownika?
W jaki sposób profesjonaliści zajmują się bezpieczeństwem w tym przypadku? Wiem, że możesz zabezpieczyć usługi WCF za pomocą zabezpieczenia wiadomości, ale w jaki sposób synchronizacja Asp.Net i WCF dla jednego zalogowanego użytkownika? Chcę zabezpieczyć operacje WCF w zależności od użytkownika w celu uzyskania autoryzacji.
To jest zbyt duże pytanie do obsługi na SO - zajmuje 50 stron w zestawie treningowym WCF. Zasugeruj, aby zacząć od kilku badań, a następnie opublikować konkretne pytania - http://mscerts.net/programming/user-level%20security%20%20%20authorization%20and%20impersonation%20%28part%201%29%20 -% 20authorization.aspx –
Aplikacja N-Tier? Co to jest N? 2? 3? 20? –
Jest to sformułowane ogólnikowo, ale pytanie jest nadal aktualne. Chcę, aby użytkownik uwierzytelniony przez ASP.NET został przekazany do łańcucha do usługi WCF jako zalogowany użytkownik. Dlaczego to takie trudne? – DaveN59