Ứng dụng của tôi cần truy cập vào dịch vụ web RESTful đang chạy trên một máy chủ khác. Dịch vụ web này sử dụng xác thực CAS và khi tiêu thụ thông qua trình duyệt, dịch vụ này sẽ chuyển hướng đến đăng nhập CAS nếu người dùng chưa được xác thực. Không có phương pháp để thực sự đăng nhập thông qua CAS. Ứng dụng của tôi cũng sử dụng CAS để người dùng sẽ được xác thựcXác thực CAS của dịch vụ web RESTful
Tôi muốn truy cập nó thông qua JQuery/Ajax, nhưng máy chủ dường như không được định cấu hình cho JSONP mà tôi hiểu là cần thiết vì vấn đề giữa nhiều miền .
Bây giờ, tôi có thể thực hiện các yêu cầu Ajax qua máy chủ của tôi, điều này dẫn đến câu hỏi của tôi: không có phương thức đăng nhập CAS cho máy chủ của tôi, làm cách nào tôi có thể 'biết' dịch vụ web được người dùng xác thực? Vì vậy, tôi cho rằng trước hết tôi muốn hiểu rõ những gì đang diễn ra giữa trình duyệt, CAS và dịch vụ RESTful, và cách thức ủy quyền được xử lý mà không cần phải thông qua các thông tin xác thực. Thứ hai, tôi muốn xem làm thế nào/nếu tôi có thể sao chép khi gọi dịch vụ từ máy chủ của tôi - nó sẽ không phải là phiên tương tự như yêu cầu từ trình duyệt vì vậy sẽ không có mã thông báo ủy quyền CAS, nhưng tôi không xem làm thế nào để có được một hoặc cung cấp nó.
Khi bạn nói "... thực hiện các yêu cầu Ajax qua máy chủ của tôi ...", bạn có nghĩa là yêu cầu dịch vụ web qua yêu cầu HTTP không? Cũng có thể hữu ích khi biết ngôn ngữ ứng dụng máy chủ của bạn được viết bằng. –
Xin chào Paul- vâng, yêu cầu HTTP là ý của tôi và máy chủ là Java. – user814425
Vì vậy, bây giờ có vẻ như khung công tác CAS hỗ trợ sắp xếp xác thực phạm vi ứng dụng, điều tôi nghĩ có nghĩa là tôi có thể có servlet của tôi tạo HttpRequests và yêu cầu họ xác thực. Tuy nhiên, điều này không có tác dụng và tôi nghĩ rằng tôi cần phải làm điều gì đó với org.jasig.cas.client, nhưng tôi không thể thấy được điều này. Mọi đề xuất vẫn được đánh giá cao! – user814425