2014-06-06 17 views
7

Tôi có sáu ứng dụng và tôi đang sử dụng Jasig CAS để xác thực chúng. Đăng nhập một lần của Jasig CAS đang hoạt động thực sự tốt cho tôi.Jasig CAS xác thực chuyển hướng vòng lặp

Mặt khác, Đăng nhập một lần không hoạt động đối với tôi. Khi tôi đăng xuất khỏi một trong các ứng dụng, tôi không thể truy cập vào các ứng dụng khác từ miền gốc của chúng nhưng tôi có thể truy cập chúng bằng cách sử dụng các dịch vụ con của chúng.

Ví dụ:

App1 = http://domain.com/app1

APP2 = http://domain.com/app2

Nếu tôi khỏi mạng từ App1, tôi không thể đạt đến http://domain.com/app2 NHƯNG tôi có thể đạt đến http://domain.com/app2/someservice

Thông tin :

Tôi đang sử dụng ProxyPass để chuyển các ứng dụng đến Jasig CAS.

Trong Apache CAS web.xml, tôi đã thêm:

<filter> 
    <filter-name>CAS Single Sign Out Filter</filter-name> 
    <filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class> 
</filter> 

<filter-mapping> 
    <filter-name>CAS Single Sign Out Filter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 

<listener> 
    <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class> 
</listener> 

Ứng dụng của tôi đều dựa trên JSP và Django.

CAS Version: 3.3.10

---- CẬP NHẬT ----

tôi quản lý để giải quyết 4 trong 6 ứng dụng bằng cách thay đổi "Đáp ứng" tham số cấu hình của các ứng dụng từ "bất kỳ" thành "tất cả".

2 trong số 6 ứng dụng được triển khai trên Tomcat và để chạy chúng trên apache, mod_jk được sử dụng. Khi tôi cố gắng nhập bất kỳ ứng dụng nào trong số đó, tôi nhận được lỗi vòng lặp chuyển hướng. Bởi vì

1-) Đơn yêu cầu vé vé tạo từ CAS

2-) CAS cung cấp vé tạo vé

3-) ứng dụng sẽ gửi lại vé tạo vé để có được vé

4) CAS chuyển hướng đến trang bắt đầu chính của ứng dụng

5-) Quay lại trạng thái 1

Khi nào Tôi nhìn vào tệp cas.log Tôi thấy

FormObjectClass chưa được đặt. Sử dụng lớp mặc định của org.jasig.cas.authentication.principal.UsernamePasswordCredentials với thông tin đăng nhập formObjectName và validator org.jasig.cas.validation.UsernamePasswordCredentialsValidator.

Lỗi

Mọi đề xuất?

+0

đoán đầu tiên của tôi là: http://domain.com/app2/someservice đang được lưu trữ . –

+0

Apache CAS là gì? Bạn có nghĩa là [Jasig CAS] (http://jasig.org/cas)? –

+0

Vâng tôi có nghĩa là, cảm ơn cho sự điều chỉnh. – Skr

Trả lời

0

Bạn có sử dụng "django-cas-client" làm phụ trợ xác thực không?

Tôi không chắc chắn liệu bạn có cần định cấu hình bất kỳ điều gì ở bên JaSig CAS cho lần đăng xuất một lần hay không. Đó là một cách để đăng xuất và bạn có thể sử dụng nó hay không.

Bạn có thể muốn nghiên cứu các bài viết (s):

+0

Tôi đang sử dụng proxypass để sử dụng CAS làm cổng vào tất cả các ứng dụng. Nó hoạt động ngoại trừ những người mà tôi đã sử dụng mod_jk để làm cho Tomcat và Apache nói chuyện. – Skr

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