2016-05-13 24 views
8

Tôi muốn tạo ứng dụng web dựa trên lối vào góc cạnh và ASP.NET Web API. Tôi cần tạo api an toàn nhưng tôi không thể sử dụng xác thực dựa trên mã thông báo trên máy chủ của công ty, nơi sẽ được triển khai ứng dụng web này.Có thể sử dụng xác thực dựa trên cookie với ASP.NET Web API và SPA không?

Có thể sử dụng xác thực dựa trên cookie cho SPA và ASP.NET Web API không?

Làm cách nào tôi có thể định cấu hình xác thực dựa trên cookie trên dự án ASP.NET cho trường hợp này nơi tôi có SPA và API Web?

+0

Ngay cả mã thông báo được lưu trữ trong cookie, đây là cách phổ biến nhất để duy trì phiên. – Crowcoder

+6

@JahirulIslamBhuiyan Không phải là nó mỉa mai rằng câu hỏi này là kết quả # 1 google? Bình luận của bạn không giúp tôi chút nào. – Dan

Trả lời

6

Các TokenBased Xác thực hiện đang được sử dụng trong SPA dựa trên các ứng dụng phụ trợ API là để khắc phục những hạn chế xác thực cookiebased Nhưng kể từ khi bạn đã quyết định đi với nó sau đó bạn có thể sử dụng OWIN cookieAuthentication middleware mà sẽ làm cần thiết. Here's an article showing how to configure phần mềm trung gian xác thực cookie OWIN trong dự án Asp.net (Cho dù đó là ứng dụng WebApi hoặc MVC).

+1

Chúng ta có thể sử dụng xác thực dựa trên cookie nếu SPA và ASP.NET Web API là các dự án khác nhau và trên các tên miền khác nhau không? Tôi có nhiều khách hàng, Tôi có thể chỉ sử dụng mã thông báo mang trong trường hợp này không? –

+0

cảm ơn, tôi đã tìm kiếm cho rằng quá dài –

+0

quá tôi Token xác thực nhìn đầy đủ của giới hạn và độ cứng tàu: | cũng có vẻ lỗi và đòi hỏi rất nhiều nỗ lực mà tôi không biết ... – deadManN

-3

Theo mặc định khi ứng dụng Web API được tạo bằng Visual Studio, trước tiên bạn nên đăng ký người dùng và sau đó đăng nhập. Khi bạn đăng nhập vào /Token, máy chủ trả về mã thông báo xác thực cần được lưu trữ trong cookie của trình duyệt.

Khi bạn muốn truy cập tuyến đường được ủy quyền, bạn nên gửi mã thông báo trong tiêu đề.

Format dụ:

"Authorization": "Bearer 353A405CF2A34542A2D544E68E2C9265"

hành động Tuyến đường của bạn hoặc bộ điều khiển nên có [Authorize] thuộc tính.

+7

Điều này thậm chí không cố gắng trả lời câu hỏi từ xa. – Dan

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