Repository navigation
Change the key from a query paramter to a HEADER - #328
Conversation
I opened #330 because the API key may leak in publicly available CI's like Github Actions, etc. when logging exceptions. At least we should mitigate this even if there's a workaround. |
|
Would adding this behind a feature flag be an acceptable change? If you were to make it the default, I think a v3.0.0 of the library would make sense as it could be a breaking change for systems that do not pass the header. Though, we run redmine behind Apache and I have other webservices using the HEADER without having to do anything special to pass the header to the backend. |
|
I ended up using this workaround thanks to this PR: Our server is also behind Apache and no issues. |
|
Patch included in openSUSE's python3-redmine: |
https://build.opensuse.org/request/show/1114261 by user dirkmueller + anag+factory - Add 328.patch to workaround "API key leakage on exception" described in boo#1215722 maxtepkeev/python-redmine#330 maxtepkeev/python-redmine#328
|
After investigating this a bit more I found out that nginx (which I was worried about as Apache does the header forwarding by default) also has the header forwarding turned on by default for quite a while (proxy_pass_request_headers setting) so we should be pretty safe introducing this change as is without breaking backwards compatibility for most of the setups. Sorry about the delay. |
|
Thank you! Will you make a new release? |

Instead of having the Key being a query parameter in the url (which can shows up in webserver access logs), move it to the header.
https://www.redmine.org/projects/redmine/wiki/Rest_api#Authentication