Red Hat Bugzilla – Bug 1459153
Do not send Max-Age in ipa_session cookie to avoid breaking older clients
Last modified: 2017-08-01 05:51:24 EDT
Cloned from upstream: https://pagure.io/freeipa/issue/6774 and clone of bug 1434845 Affected clients/servers: - all RHEL 6.x IPA clients which uses IPA CLI tool `ipa` against 7.4 server. Functional impact: - minor performance regression (session re-negotiation). Command itself is executed as expected. Except following error/"gibberish" is shown to user of the `ipa` tool: """ ipa: ERROR: unable to parse cookie header 'ipa_session=MagBearerToken=MiIjMRJWMAl1%2bazkGlIRns2iysA7wxc%2bpSenQtZEMKXSsRAXEcnw2wHEyzOyh8RHgIm5K7YvX1k1tPotRM2ztegX4ODAmOe26%2fP4FLu68AupejDBNmNIENfasrNhUiPowugkkRXBOD%2b%2bsGFFMUZ%2bP7AYPHoW3bE3uN4ftRQwftE11EFTti4a9fVwB4SLKiuU&expiry=1489670819868611;Max-Age=1800;path=/ipa;httponly;secure;': unsupported operand type(s) for +: 'NoneType' and 'datetime.timedelta' """ It can negatively affect automation tools which uses the CLI. But mainly it will be UX and reputation issue. FreeIPA 4.5.0(1) server sends Set-Cookie header with Max-Age string, that is set by SessionMaxAge directive in httpd configuration. This is part of the header which older clients cannot parse. Older clients understand the cookie with expiration expressed this way: Expires=time_when_cookie_expires. In this format: Expires=Mon, 05 Jun 2017 17:10:07 GMT; This bug is a proposal to work around the issue and change server in a way that it won't send Max-Age string.
Upstream ticket: https://pagure.io/freeipa/issue/7001
Fixed upstream master: https://pagure.io/freeipa/c/77db574cca900eb03d8e0ab577568c2058ae4a86 https://pagure.io/freeipa/c/c52ca92cdabf07da5b3b27344b8eaa8b161ea49b ipa-4-5: https://pagure.io/freeipa/c/0def2ec653ac29210414aa09499b309dd1c3ac7d https://pagure.io/freeipa/c/728e2f681a938f25d091a8480ec6db3961ebfc98
Created attachment 1286963 [details] console logs
Verified using following builds. version: Server ipa-server-4.5.0-16.el7.x86_64 Client ipa-client-4.2.0-15.el7.x86_64
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2017:2304