Esta pregunta parece estar relacionada con enlace , pero no estoy desarrollando una extensión de Chrome. Estoy desarrollando una aplicación web normal.
Estoy tratando de integrar el inicio de sesión de Facebook en mi sitio web, que tiene una política estricta de CSP. Estoy siguiendo las recomendaciones de enlace , donde se menciona que no se debe usar 'unsafe-eval'. Sin embargo, si pongo la siguiente política de CSP:
<add name="Content-Security-Policy" value="default-src 'self'; connect-src 'self'; script-src 'self' https://connect.facebook.net; img-src 'self' https://www.facebook.com; media-src 'self'; object-src 'self'; style-src 'self' 'unsafe-inline'; frame-src 'self' https://s-static.ak.facebook.com https://www.facebook.com https://www.youtube.com; "/>
entonces el inicio de sesión de Facebook no aparece, ya que la política de CSP restringe el código de evaluación no seguro. Si lo cambio a lo siguiente:
<add name="Content-Security-Policy" value="default-src 'self'; connect-src 'self'; script-src 'self' 'unsafe-eval' https://connect.facebook.net; img-src 'self' https://www.facebook.com; media-src 'self'; object-src 'self'; style-src 'self' 'unsafe-inline'; frame-src 'self' https://s-static.ak.facebook.com https://www.facebook.com https://www.youtube.com; "/>
entonces funciona. Observe el extra 'unsafe-eval' en la parte script-src del CSP. De todos modos, no quiero usar la condición 'unsafe-eval', ya que esto reduciría enormemente la seguridad de mi sitio web.
¿Hay alguna manera de que pueda usar el inicio de sesión de Facebook (SDK), sin tener que usar 'unsafe-eval' en mi política de CSP?