Character encoding problem after migration to CAS 7.0

48 views
Skip to first unread message

Krzysztof Wilkos

unread,
Jun 17, 2024, 1:27:55 PM (12 days ago) Jun 17
to CAS Community
Hi,

Recently we migrated to CAS 7.0 from 6.6. After migration some of users reported problems with authentication. Password change solved issue for most of them but not for all. At the same time user was able to log into non-CAS services with same credentials (ActiveDirectory account).

We discovered that authentication problems are caused by inproper encoding handling when password contains non-latin characters. Non-latin characters in password are valid for on premise Active Directory and CAS 6.6 works fine with such passwords.

After long hours spent on debugging I've found that filter chain has different order in version 7.0 than in 6.6. ClientInfoThreadLocalFilter is executed before CharacterEncodingFilter and that makes embedded tomcat to parse parameters with default encoding which is ISO_8859_1.


I've solved issue by registering CharacterEncodingFilter in my own config in war overlay with HIGHEST_PRECEDENCE.

Regards,
Krzysztof


Reply all
Reply to author
Forward
0 new messages