Какова самая ограниченная Content-Security-Policy для включения подключения к Facebook - PullRequest
0 голосов
/ 02 февраля 2019

Я хотел бы использовать facebook connect с ionic / Cordova.это требует Content-Security-Policy.

Каковы наиболее ограниченные значения для следующих параметров, которые все еще позволяют использовать Facebook Connect.style-src script-src connect-src

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

Это минимальные требования, которые сработали для меня, чтобы использовать facebook connect от ionic / cordova.Большое спасибо за @luschn за руководство и помощника, чтобы правильно его отладить.

<meta http-equiv="Content-Security-Policy" 
content="style-src 'self' 'unsafe-inline';
         script-src 'self' 'unsafe-inline' 'unsafe-eval' 
                     http://localhost https://connect.facebook.net;
         connect-src 'self'
                        https://*.mydomain.com <!-- Replace with your own 
                                                    domain-->
                        https://*.facebook.net ws: wss:;
">
0 голосов
/ 02 февраля 2019

Убедитесь, что вы понимаете все эти значения.style-src необходимо при загрузке внешних стилей.script-src при загрузке внешних скриптов.connect-src когда вы, например, используете AJAX-вызов.connect-src понадобится для вызовов API Graph :: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/connect-src

Так что, если вы загрузите какой-нибудь JS SDK (например, FB JS SDK) и будете использовать его для выполнения API-вызовов, вам понадобится что-токак это: "script-src 'self' *.facebook.com; connect-src 'self' graph.facebook.com"

Не проверено, хотя.Но с Cordova, насколько я помню, вы можете легко отлаживать свое приложение с помощью Chrome Dev Tools, если подключите телефон.Ошибки консоли должны точно указывать, какое значение CSP отсутствует.

Еще один поток, который может вам помочь: Cordova: проблема CSP на Android при запросе данных по HTTPS

Вконец, просто ограничивай как можно больше в начале и позволяй вещам один за другим.Вы можете легко узнать, что вам нужно, и консоли браузера точно скажут, чего не хватает и почему.

...