Поделиться через


Рекомендации по безопасности для решений Office (система 2003)

Обновлен: Ноябрь 2007

Применение

Сведения в данном разделе относятся только к указанным проектам Visual Studio Tools for Office и версиям приложений Microsoft Office.

Тип проекта

  • Проекты уровня документа

  • Проекты уровня приложения

Версия Microsoft Office

  • Microsoft Office 2003

Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов.

При планировании политики безопасности для настроек на уровне документа и надстроек уровня приложения необходимо учитывать приведенные ниже факторы.

Добавление условий в политику безопасности

В платформе Microsoft .NET Framework имеется два приведенных ниже способа развертывания политики.

При использовании файла установщика Windows можно добиться более высокого уровня предсказуемости, поскольку на компьютер конечного пользователя копируется весь уровень политики (как правило уровень Enterprise или Machine); однако это может привести к конфликтам в том случае, когда различным группам в организации необходимо публиковать политику независимо друг от друга, либо когда отдельным пользователям необходимо внести изменения в политику.

При использовании для изменения политики средства Caspol.exe различные пользователи могут обновлять политику независимо друг от друга, однако при этом не гарантируется, что изменение политики приведет к желаемому эффекту, поскольку взаимодействия между различными группами кода неизвестны. Например, если один отдел вносит в политику изменения, предоставляя полное доверие определенному узлу в интрасети, предполагается, что весь код с данного узла является надежным. Однако если другой отдел разворачивает политику, в которой атрибут Exclusive запрещает доступ к этому узлу, код запускаться не будет. Дополнительные сведения об атрибуте Exclusive см. в разделах Администрирование с использованием атрибутов группы кода и Практическое руководство. Преобразование группы кода в монопольную группу или группу конечной.

При выборе способа обновления политики администраторам необходимо соблюдать баланс между предсказуемостью файлов установщика Windows и гибкостью средства Caspol.exe.

Обратите внимание, что хотя для непосредственного управления политикой через API-интерфейсы Microsoft .NET Framework можно написать управляемый код, таким способом крайне сложно создать правильную политику, поэтому использовать его крайне не рекомендуется.

Проверка текущей политики

Если сборка не выполняется, можно определить возможную причину сбоя, просмотрев назначенные этой сборке разрешения. В Microsoft .NET Framework имеется два приведенных ниже способа проверки текущей политики для сборки.

Эти средства позволяют просмотреть примененную к сборке политику безопасности, а также узнать о наличии в сборке сопоставлений этим правилам в среде CLR. Это позволяет узнать, правильно ли настроена политика, и сопоставлена ли сборка правильным группам кода. Этот способ позволяет выявить все основные проблемы, включая указанные ниже.

  • В зону MyComputer было добавлено сетевое правило (например предоставление полного доверия серверу http://имя_сервера/), предназначенное для зоны LocalIntranet, либо в зону LocalIntranet было добавлено сетевое правило, предназначенное для зоны TrustedSites.

  • Ошибка в имени файла или URL-адресе.

  • В пути к каталогу отсутствует звездочка (*), указывающая, что в политику необходимо включить все файлы и вложенные папки данного каталога.

Дополнительные сведения см. в разделе Устранение проблем политики безопасности с помощью Caspol.exe.

Настройка для предприятия политики по умолчанию

С помощью Visual Studio предприятия могут задать собственную политику по умолчанию. Как правило, при сбросе политики безопасности восстанавливаются значения по умолчанию, задаваемые при установке платформы .NET Framework. При использовании политики по умолчанию для конкретного предприятия в случае сброса восстанавливается базовая политика, заданная для этого предприятия. Например, администратор предприятия может добавить надежного издателя на уровень предприятия и заблокировать выполнение любого кода из зоны Интернета.

Дополнительные сведения о возврате к политике по умолчанию см. в разделах Практическое руководство. Возврат к параметрам политики безопасности по умолчанию с помощью Caspol.exe и Средство настройки .NET Framework (Mscorcfg.msc). Дополнительные сведения о политике безопасности по умолчанию см. в разделе Политика безопасности по умолчанию.

Основные рекомендации

Перед созданием политики для решений Office ознакомьтесь с приведенными ниже рекомендациями.

  • Всегда используйте именованные группы кода, а не их номера (например используйте вместо номера 1.1 зону MyComputer_Zone). Хотя теоретически пользователь может переименовать группу (например переименовать Internet в MyComputer), это менее вероятно, чем изменение номеров.

  • Применяйте к коду наиболее строгое из возможных правил. Никогда не добавляйте правила в группу All_Code на уровне Machine; всегда добавляйте правила в одну из зон или подгруппу зон. Не рекомендуется создавать правила для кода, который вы не ожидаете.

  • Создайте сначала наиболее широко применяемые правила, например для зоны, затем для узла и издателя; не рекомендуется сначала создавать правила для издателя, а затем для узла и зоны. Таким образом, правила для конкретной зоны будут применяться к конкретному коду и не будут применяться ко всему коду, полученному от издателя, прежде чем вам потребуется установить ограничения.

  • Если родительская группа, например группа LocalIntranet_Zone, более не существует, ее следует создать заново. Обратите внимание, что группу следует создать с набором разрешений Nothing. Набор разрешений Nothing не позволяет применить разрешения по умолчанию, отключенные администратором при удалении группы кода. Например, если администратор удалит зону LocalIntranet_Zone, перестанет запускаться весь код из локальной интрасети. При повторном создании группы кода с набором разрешений Nothing в эту группу не добавляются разрешения, отсутствовавшие в ней ранее.

  • Отключите предупреждения об изменении политики в пакетных файлах и не забудьте включить их после выполнения этих файлов (если эти предупреждения были включены ранее). Таким образом, пакетные файлы будут выполняться без остановки, не ожидая реакции пользователя. Действие этого параметра распространяется на всех пользователей, а не только на текущего. Дополнительные сведения см. в разделе Практическое руководство. Отключение предупреждений политики безопасности с помощью Caspol.exe.

  • При использовании средства Caspol.exe явным образом укажите изменяемый уровень политики (Enterprise, Machine или User); не полагайтесь на значение по умолчанию. Значение по умолчанию может оказаться неверным для изменяемой политики. Дополнительные сведения см. в разделе Уровни политики безопасности.

  • Не используйте атрибуты Exclusive и Level-Final, если это не является абсолютно необходимым, поскольку это может привести к непредсказуемому поведению при добавлении новой группы кода. Дополнительные сведения см. в разделе Атрибуты группы кода.

См. также

Основные понятия

Требования безопасности при выполнении решений Office (для системы 2003)

Рекомендации по обеспечению безопасности для решений Office

Другие ресурсы

Общее администрирование политики безопасности

Безопасность в решениях Office (система 2003)