Open
Description
Hello,
I just figured out that using csp_update
can result in a problem: If you (for some reason) specified a hash in the global CSP-Configuration for script-src, the introduced 'unsafe-inline'
gets ignored. There are two possible options in my mind:
- use
csp_replace
instead ofcsp_update
to ignore the CSP-Header specified by the integrating project. Would be a quick fix, but does not feel too good imho. - replace the form-template to use a nonce - but the template is by default taken from
PySAML2
: https://github.com/IdentityPython/pysaml2/blob/7cb4f09dce87a7e8098b9c7552ebab8bc77bc896/src/saml2/pack.py#L38
Imho the best solution would be to include a default post_binding_form.html
which uses a nonce. This would also remove the required 'unsafe-inline'
from CSP-Settings. What are your feelings regarding this? And should this be a new PR or shall it be integrated to #401? My suggestion would be to include it in #401 iff option 1 would be selected, but a separate if option 2 would be selected.