Изменения документа G03.01. Общее описание настроек безопасности
Редактировал(а) Ирина Сафонова 22.03.2024, 15:16
От версии 80.1
отредактировано Ирина Сафонова
на 07.04.2023, 13:33
на 07.04.2023, 13:33
Изменить комментарий:
К данной версии нет комментариев
К версии 72.1
отредактировано Ирина Сафонова
на 07.04.2023, 12:25
на 07.04.2023, 12:25
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Название
-
... ... @@ -1,1 +1,1 @@ 1 -D 2. Общее описание настроек1 +D1. Общее описание настроек - Содержимое
-
... ... @@ -10,12 +10,6 @@ 10 10 11 11 Cloud BI поставляется с стандартным набором ролей, которые обрабатываются самим Cloud BI. 12 12 13 -(% data-xwiki-non-generated-content="java.util.List" %) 14 -((( 15 -" class="xwiki-metadata-container">**Не рекомендуется** изменять разрешения, связанные с каждой ролью (например, путем удаления или добавления разрешений для них), несмотря на такую возможность у [[администратора системы>>https://wiki.dfcloud.ru/bin/view/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/D.%20%D0%A0%D0%BE%D0%BB%D0%B8%20%D0%B8%20%D0%BF%D1%80%D0%B0%D0%B2%D0%B0%20%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0/%D0%9E%D0%B1%D1%89%D0%B5%D0%B5%20%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D0%B8/#H41043443C43843D43844144244043044243E44044143844144243543C44B]]. 16 -Разрешения, связанные с каждой ролью, будут повторно синхронизированы с исходными значениями при выполнении команды инициализации Cloud BI. 17 -))) 18 - 19 19 {{error}} 20 20 **Не рекомендуется** изменять разрешения, связанные с каждой ролью (например, путем удаления или добавления разрешений для них), несмотря на такую возможность у [[администратора системы>>https://wiki.dfcloud.ru/bin/view/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/D.%20%D0%A0%D0%BE%D0%BB%D0%B8%20%D0%B8%20%D0%BF%D1%80%D0%B0%D0%B2%D0%B0%20%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0/%D0%9E%D0%B1%D1%89%D0%B5%D0%B5%20%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D0%B8/#H41043443C43843D43844144244043044243E44044143844144243543C44B]]. 21 21 Разрешения, связанные с каждой ролью, будут повторно синхронизированы с исходными значениями при выполнении команды инициализации Cloud BI. ... ... @@ -77,15 +77,6 @@ 77 77 78 78 Добавление пользователей в группу описано [[здесь>>https://wiki.dfcloud.ru/bin/view/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/D.%20%D0%A0%D0%BE%D0%BB%D0%B8%20%D0%B8%20%D0%BF%D1%80%D0%B0%D0%B2%D0%B0%20%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0/%D0%9E%D0%B1%D1%89%D0%B5%D0%B5%20%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D0%B8/#H41443E43143043243B43543D43843543F43E43B44C43743E43243044243543B43543943243344044343F43F44343443E44144244343F430]]. 79 79 80 -== Создание новой роли == 81 - 82 -Для создания: 83 - 84 -1. Перейдите в **Настройки** -> **Список ролей**. 85 -1. Нажмите кнопку **Добавить новую запись**. 86 -1. В открывшейся экранной форме введите название роли и задайте ей права (доступен множественный выбор). 87 -1. При необходимости добавьте пользователей на вкладке **Список пользователей**. 88 - 89 89 == Добавление пользователей в группу доступа == 90 90 91 91 Для добавления: ... ... @@ -93,7 +93,7 @@ 93 93 1. Перейдите в **Настройки** -> **Список ролей**. 94 94 1. Найдите нужную роль и нажмите кнопку **Редактировать запись**. 95 95 1. Перейдите на вкладку **Список пользователей** и нажмите кнопку **Добавить запись**. 96 -1. В открывшейся экраннойформе добавьте [[пользователя>>https://wiki.dfcloud.ru/bin/view/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/F.%20%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9/F1.%20%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9/]] и нажмите кнопку **Сохранить**. В результате пользователь появится в списке.81 +1. В открывшейся форме добавьте [[пользователя>>https://wiki.dfcloud.ru/bin/view/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/F.%20%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9/F1.%20%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9/]] и нажмите кнопку **Сохранить**. В результате пользователь появится в списке. 97 97 98 98 == Настройка разрешений == 99 99 ... ... @@ -101,11 +101,6 @@ 101 101 102 102 Разрешения, предоставляемые FAB, качественно детализированы и обеспечивают высокий уровень настройки. FAB автоматически создает множество разрешений для каждой создаваемой модели (//can_add, can_delete, can_show, can_edit,// …), а также для каждого представления. Кроме того, Cloud BI может предоставлять более детальные разрешения, такие, как //all_datasource_access//. 103 103 104 -(% data-xwiki-non-generated-content="java.util.List" %) 105 -((( 106 -" class="xwiki-metadata-container">**Не рекомендуется **изменять базовые роли, поскольку существует набор допущений, на которых построен Cloud BI. Однако вы можете создавать свои собственные роли и объединять их с существующими. 107 -))) 108 - 109 109 {{error}} 110 110 **Не рекомендуется **изменять базовые роли, поскольку существует набор допущений, на которых построен Cloud BI. Однако вы можете создавать свои собственные роли и объединять их с существующими. 111 111 {{/error}} ... ... @@ -156,3 +156,59 @@ 156 156 3. Поле предложения, которое может содержать произвольный текст, добавить к предложению WHERE сгенерированного оператора SQL. Таким образом, вы даже можете настроить фильтр //За последние 30 дней// и применить его к определенной роли с таким предложением, как {{code language="none"}}date_field > DATE_SUB(NOW(), INTERVAL 30 DAY){{/code}}. Фильтр также может поддерживать несколько условий: {{code language="none"}}client_id = 6{{/code}} И {{code language="none"}}advertiser="foo"{{/code}} и так далее. 157 157 158 158 Все соответствующие фильтры безопасности на уровне строк будут объединены вместе (внутри различные предложения SQL объединяются с помощью операторов AND). Это означает, что можно создать ситуацию, когда две роли конфликтуют таким образом, что подмножество таблиц может быть пустым. Например, фильтры** **{{code language="none"}}client_id=4{{/code}} и {{code language="none"}}client_id=5{{/code}}, примененные к роли, приведут к тому, что пользователи этой роли будут иметь {{code language="none"}}client_id=4{{/code}} и {{code language="none"}}client_id=5{{/code}}, добавленные к их запросу, что никогда не может быть правдой. 139 + 140 +== Политика безопасности контента == 141 + 142 +**Политика безопасности контента** — это дополнительный уровень безопасности, который помогает обнаруживать и смягчать определенные типы атак, включая [[межсайтовые скриптинги>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%9C%D0%B5%D0%B6%D1%81%D0%B0%D0%B9%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%20%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%B8%D0%BD%D0%B3]] (XSS) и атаки с внедрением данных. 143 + 144 +Политика безопасности контента позволяет администраторам серверов уменьшить или устранить векторы, по которым может происходить XSS, указав домены, которые браузер должен рассматривать как допустимые источники исполняемых скриптов. В этом случае браузер, совместимый с политикой, будет выполнять только сценарии, загруженные в исходные файлы и полученные из этих разрешенных доменов, игнорируя все остальные сценарии (включая встроенные сценарии и HTML-атрибуты обработки событий). 145 + 146 +Политика описывается с помощью ряда директив, каждая из которых описывает политику для определенного типа ресурса или области политики. Описание директив доступно по ссылке. 147 + 148 +Важно коррректно настроить политику безопасности контента при развертывании Cloud BI, чтобы предотвратить многие типы атак. Cloud BI предоставляет две переменные в config.py для развертывания: 149 + 150 +* {{code language="none"}}TALISMAN_ENABLED{{/code}} по умолчанию имеет значение //False//. Установите для этого параметра значение //True// 151 +* {{code language="none"}}TALISMAN_CONFIG{{/code}} содержит фактическое определение политики 152 + 153 +При работе в продуктивном режиме Cloud BI при запуске проверяет наличие настройки политики. Если она не будет найдена, то система выдаст предупреждение, что есть угроза безопасности. Для сред, в которых политики безопасности определены вне Cloud BI с помощью другого программного обеспечения, администраторы могут отключить это предупреждение с помощью ключа {{code language="none"}}CONTENT_SECURITY_POLICY_WARNING{{/code}} в {{code language="none"}}config.py{{/code}}. 154 + 155 +=== Требования к политике безопасности контента === 156 + 157 +Требования следующие: 158 + 159 +* Укажите ключевые слова {{code language="none"}}'unsafe-eval'{{/code}} и {{code language="none"}}'unsafe-inline'{{/code}}: 160 + 161 +{{code language="none"}} 162 +default-src 'self' 'unsafe-eval' 'unsafe-inline' 163 +{{/code}} 164 + 165 +* Некоторые дашборды загружают изображения с использованием URI данных: 166 + 167 +{{code language="none"}} 168 +img-src 'self' data: 169 +{{/code}} 170 + 171 +* Диаграммы MapBox используют воркеры и должны подключаться к серверам MapBox: 172 + 173 +{{code language="none"}} 174 +worker-src 'self' blob: 175 +connect-src 'self' https://api.mapbox.com https://events.mapbox.com 176 +{{/code}} 177 + 178 +Ниже пример {{code language="none"}}TALISMAN_CONFIG{{/code}}, который реализует вышеуказанные требования, использует {{code language="none"}}'self'{{/code}} для ограничения содержимого тем же источником, что и сервер Cloud BI, и запрещает устаревшие элементы HTML, устанавливая для {{code language="none"}}object-src{{/code}} значение {{code language="none"}}'none'{{/code}}. 179 + 180 +{{code language="none"}} 181 +TALISMAN_CONFIG = { 182 + "content_security_policy": { 183 + "default-src": ["'self'", "'unsafe-inline'", "'unsafe-eval'"], 184 + "img-src": ["'self'", "data:"], 185 + "worker-src": ["'self'", "blob:"], 186 + "connect-src": ["'self'", "https://api.mapbox.com", "https://events.mapbox.com"], 187 + "object-src": "'none'", 188 + } 189 +} 190 +{{/code}} 191 + 192 +== Сообщение об уязвимостях == 193 + 194 +Если у вас есть опасения относительно безопасности Cloud BI или вы обнаружите уязвимость или потенциальную угрозу, свяжитесь с технической поддержкой Cloud BI. В письме настоятельно рекомендуется указать способ воспроизведения проблемы и показать пример. Техническая поддержка обязательно с вами свяжется после оценки и анализа результатов возникшей уязвимости.