Tôi đã nhìn thấy một số kịch bản tương tự được giải thích ở đây nhưng không được mô tả cụ thể ở đây. Tôi tự hỏi liệu có ai đó có thể cho tôi biết hướng đi nào không?Ứng dụng MVC2 (và những người khác) chia sẻ các dịch vụ WCF và xác thực
Tôi đang phát triển hai (và nhiều hơn nữa) ứng dụng MVC2. Cũng sẽ có một khách hàng (dày hơn) sau này (WPF hoặc Silverlight, TBD). Tất cả những điều này cần phải chia sẻ cùng một xác thực. Đối với các ứng dụng MVC2 họ (tốt hơn) cần phải đăng nhập một lần - nghĩa là nếu người dùng đăng nhập vào một ứng dụng MVC2, họ phải được ủy quyền trên ứng dụng khác, miễn là cookie chưa hết thời gian chờ.
Xác thực mẫu sẽ được sử dụng.
Tất cả các ứng dụng cần sử dụng chức năng kinh doanh thông thường và thực hiện truy cập db thông qua một ứng dụng dịch vụ WCF chung. Nó sẽ được tốt đẹp (tôi nghĩ) nếu WCF là không thể truy cập công cộng (tức là bị chặn đằng sau FW). Khách hàng dày hơn có thể sử dụng một lớp dịch vụ bổ sung để truy cập Common WCF App.
Điều này sẽ giống như là:
MVCApp1 -> WCFAppCommon
MVCApp2 -> WCFAppCommon
ThickClient -> WCFApp2 -> WCFAppCommon
Có thể thực hiện tất cả các xác thực/ủy quyền trong WCFAppCommon? Nếu không, tôi nghĩ rằng tôi sẽ phải lặp lại tất cả các logic bảo mật trong MVCApps và WCFApp2, trong khi, với tôi, có vẻ như ngồi tự nhiên trong WCFAppCommon. Mặt khác, có vẻ như nếu tôi xác thực/ủy quyền trong WCFAppCommon, tôi sẽ không thể sử dụng Xác thực biểu mẫu.
Nơi tôi đã nhìn thấy các giải pháp khả thi (mà tôi chưa thử), chúng dường như phức tạp hơn nhiều so với Xác thực Mẫu và một DB.
Bất kỳ trợ giúp đánh giá cao,
Phil