5

Tôi đang tìm cách sử dụng SSO với api 2.2 web để sử dụng trong nhiều ứng dụng, bao gồm cả điện thoại di động và asp.net mvc 5.đăng nhập một lần với api web và asp.net mvc 5

Tôi đã có ý tưởng cơ bản tạo mã thông báo xác thực qua api web, nhưng tôi có một vài câu hỏi:

1- Có an toàn để lưu trữ mã thông báo xác thực trong cookie cùng với tên người dùng không?

2- Tôi có thể gắn xác thực đó với khung định danh trong mvc và có thể sử dụng vai trò không?

3 Làm cách nào để xác thực vai trò? Tôi có phải gửi yêu cầu tới api cho mỗi bộ điều khiển được đánh dấu là được ủy quyền với vai trò nhất định để đảm bảo đó là vai trò phù hợp cho người dùng không?

4- Nếu tôi đăng nhập từ ứng dụng web và nhận mã thông báo xác thực, sau đó thử đăng nhập từ thiết bị di động, nó sẽ gửi cùng một mã thông báo?

+0

bạn đã tìm thấy giải pháp cho điều này chưa? Cảm ơn – jay

+0

Hey, bạn có thể chia sẻ cách bạn đã làm kiến ​​trúc cho mvc 5 và api web riêng biệt cũng như nhận được nó kết nối. Tôi đang tìm kiếm chính xác cùng một kiến ​​trúc như tôi sẽ phải tích hợp phát triển di động sau này. Vì vậy, trang web của tôi sẽ được phục vụ từ asp.net mvc mà lần lượt sẽ kết nối với api web là lớp dịch vụ. – sam113

Trả lời

1

Ok vì vậy tôi sẽ trả lời câu hỏi này với những gì tôi đã làm.

Kiến trúc cơ bản sẽ được chia thành ba phần chính:

1- Máy chủ nhận dạng 4 (sử dụng lõi asp.net).

2- Web api (sử dụng lõi asp.net).

3- Phía máy khách (sử dụng góc 2), tuy nhiên bạn cũng có thể sử dụng bất kỳ khung bên ứng dụng khách nào hoặc lõi asp.net.

Máy chủ nhận dạng sẽ tạo mã thông báo, sẽ được gửi với mỗi yêu cầu đến api trên web và nó hỗ trợ danh tính và vai trò của asp.net. Bằng cách này, bạn có thể dễ dàng mở rộng nó cho điện thoại di động và gửi mã thông báo với mỗi yêu cầu.

liên kết đến máy chủ danh tính 4 tài liệu: http://docs.identityserver.io/en/release/quickstarts/6_aspnet_identity.html

liên kết đến github nơi bạn có thể tìm thêm ví dụ: https://github.com/IdentityServer/IdentityServer4

android làm việc với máy chủ bản sắc 4: https://github.com/leo9223/Android-Resource-Owner-Flow-client-for-IdentityServer4

Lưu ý: đối với asp .net mvc 5, bạn có thể sử dụng xác thực cookie (sẽ không hoạt động cho thiết bị di động) nhưng sẽ cung cấp SSO cho các ứng dụng riêng biệt.

Các vấn đề liên quan