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


Действие: оценка и утверждение шаблона формы

Содержание:

  • Об оценке шаблонов форм

  • Факторы, которые нужно учесть при оценке шаблона формы

В этой статье содержатся подробные сведения об оценке утвержденных администраторами шаблонов форм для утверждения, предназначенные для администраторов фермы Microsoft Office SharePoint Server 2007. Обратите внимание, что в статье нет полного списка всех возможных факторов, которые нужно учитывать. Возможно, в вашей среде есть что-то, о чем не говорится в статье.

Об оценке шаблонов форм

Лицам, ответственным за утверждение и загрузку шаблонов форм Office InfoPath 2007 в ферму, где используется InfoPath Forms Services, нужно уметь идентифицировать возможные проблемы с утверждаемыми шаблонами. Поскольку некоторые шаблоны форм содержат функции, использующие ресурсы сервера или устанавливающие соединения с источниками данных за пределами фермы (например, управляемый код, добавленный разработчиком формы), важно тщательно оценить возможное влияние шаблона на производительность и безопасность фермы.

Дизайн Office InfoPath 2007 предусматривает участие администратора в рабочем процессе утверждения шаблонов форм. Последствия невнимательного отношения администратора, ответственного за утверждение шаблонов форм, могут быть следующими:

  • Нарушение безопасности с последующим проникновением в сеть или потерей данных.

  • Снижение производительности фермы.

  • Сбой шаблона формы и потеря пользовательских данных.

  • Сбой всей фермы Office SharePoint Server.

По этой причине необходимо тщательно оценивать каждый утвержденный администратором шаблон формы для его загрузки в ферму. Обратите внимание, что для того, чтобы правильно оценить шаблон формы, нужно понимать его структуру и логику. Дополнительные сведения о шаблонах форм Office InfoPath 2007 см. в разделе InfoPath 2007 Help and How-to (https://go.microsoft.com/fwlink/?linkid=91423&clcid=0x419).

Факторы, которые нужно учесть при оценке шаблона формы

В частности, при оценке шаблона формы нужно учесть следующие важные факторы:

  • Управляемый код  Создайте соответствующие рекомендации и оптимальные методы написания кода шаблонов форм. У форм с управляемым кодом должен быть уровень безопасности "Домен" или "Полное доверие", поэтому они могут создать риск безопасности. Убедитесь, что код необходим для работы формы. Если желаемого эффекта можно достичь без использования кода, переработайте шаблон формы и установите самый ограниченный из возможных уровней безопасности. Обратите внимание, что для оценки шаблона формы могут потребоваться навыки разработчика.

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

    • Сборки .NET в шаблоне формы должны быть подписаны строгими именами, которые помогают предотвратить злонамеренное вмешательство в сборку. Дополнительные сведения см. в разделе How to: Sign an Assembly with a Strong Name (https://go.microsoft.com/fwlink/?linkid=91429&clcid=0x419).

    • Необходимо тщательно проверить обращения к внешним ресурсам, например, базам данных и веб-службам. Некоторые запросы к внешним ресурсам не работают, если в среде фермы не развернута проверка подлинности Kerberos. Кроме того, пользователи, у которых нет права просматривать данные с компьютера, расположенного в другом домене, могут их запросить и выложить в общий доступ.

    • Подумайте об автоматизации проверки политик кодов для сборок .NET с помощью FxCop. FxCop — это средство анализа кода от корпорации Майкрософт, проверяющее сборки управляемого кода .NET на соответствие рекомендациям по дизайну Microsoft .NET Framework. Дополнительные сведения см. в разделе FxCop Team Page (https://go.microsoft.com/fwlink/?linkid=91446&clcid=0x419).

  • **Планирование производительности и емкости   **Дизайн и использование шаблонов форм может существенно отразиться на производительности фермы. Для каждой рабочей среды его нужно спланировать. Если форма будет использоваться для отправки данных в ферму, проследите за тем, чтобы там было достаточно места для хранения данных, в противном случае пользовательские данные могут быть потеряны. Дополнительные сведения см. в разделе Планирование производительности и мощности (Office SharePoint Server).

  • Проверка шаблона формы   Перед загрузкой шаблона формы на веб-сайт центра администрирования нажмите кнопку Проверка на странице "Отправка шаблона формы". Если не проверить шаблон формы вручную, он будет автоматически проверен в процессе отправки. При этом процесс ручной проверки возвращает сообщения и ошибки, а автоматической — только ошибки, если они есть. Дополнительные сведения о проверке и загрузке шаблона формы см. в разделе Развертывание шаблонов форм, одобренных администратором (Office SharePoint Server).

  • Проверка подлинности   При использовании проверки подлинности NTLM нужно учесть, что NTLM проверяет только подлинность клиентского компьютера. В ситуации, когда маркер проверки подлинности необходимо передать стороннему ресурсу, например, когда веб-служба, к которой обращается форма, должна отправить данные в базу данных, проверка подлинности стороннего ресурса NTLM не удается. В этом случае нужно подумать о выборе другого метода проверки подлинности, например, Kerberos, разработанной для передачи маркера проверки подлинности. По возможности шаблоны форм должны при подключении к внешним источникам данных использовать файлы подключения к данным из однозначно управляемого хранилища подключений. Дополнительные сведения о подключениях к данным см. в разделе "Подключения к данным", далее в этой статье.

  • Уровень безопасности   Проследите за тем, чтобы уровень безопасности шаблона формы соответствовал ее назначению. Например, шаблон формы, не использующий подключения к данным, которым не требуется проверка подлинности уровня домена, не содержит управляемого кода или не запрашивает данные из источника в другом домене, не должен иметь уровень безопасности "Полное доверие". Дополнительные сведения см. в разделе Security levels of InfoPath forms (https://go.microsoft.com/fwlink/?linkid=91447&clcid=0x419).

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

  • Разрешения   Авторы шаблона формы должны ограничить доступ к изготовлению шаблона, присвоив пользователям только разрешение чтения, дав специалистам по обслуживанию форм право записи и запретив доступ всем остальным. Даже если сценарий входа в систему устанавливает на компьютер пользователя шаблоны форм, доступ к файлы .xsn можно проконтролировать, если пользователь не является администратором. Для этого нужно предоставить пользователю доступ к файлу шаблона только для чтения.

  • Уязвимые данные   Шаблоны форм Office InfoPath 2007 представляют собой текстовые документы XML и не должны содержать данные, которые нельзя предоставлять пользователям. Злонамеренный пользователь с правом чтения может считать контент XML-формы Office InfoPath 2007 с помощью Блокнота или другого текстового редактора, обойдя логику проверки подлинности.

  • Бизнес-логика   Office InfoPath 2007 использует шаблоны форм для хранения всей логики формы. Поскольку для открытия любой формы на основе шаблона пользователям необходим доступ к шаблону формы, потенциально они могут его изменить, обойдя ограничения, введенные автором. Это означает, что проверку подлинности и учетных данных со стороны клиента нельзя считать безопасной. Для безопасности вычисления и проверку данных нужно выполнять на сервере.

    Следующие примеры иллюстрируют способы разработки шаблона формы для использования вычислений и проверки подлинности на сервере.

    • Не храните уязвимые данные в файле XML. Вместо этого, сохраните в файле XML ключи и выполняйте запросы, которые вводят оставшиеся данные с помощью подключения к данным или веб-службы. Если пользователь не войдет в систему, вернется пустой набор данных. Такое событие со стороны клиента можно обнаружить и отправить сообщение об ошибке в случае, если пользователь не имеет права просматривать данные формы.

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

  • Подключения к данным   По возможности убедитесь, что авторы шаблонов форм используют параметры подключения к данным из файлов подключений к данным, сохраненных в централизованно управляемом хранилище для обеспечения подключения к внешним источникам из шаблона формы. Использование централизованно управляемых файлов подключений к данным обладает следующими преимуществами:

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

    • Если местоположение или параметры подключения внешнего источника данных меняется, необходимо обновить только файл, а не шаблон формы.

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

    • Форма, заполненная в браузере без обеспечения уровня полной и проверенной безопасности, может подключаться к компьютеру в другом домене, если все подключения к данным в этой форме используют файлы подключений к данным. Дополнительные сведения см. в разделе Introduction to Data Connections (https://go.microsoft.com/fwlink/?linkid=91449&clcid=0x419).

  • Внешние зависимости   Шаблоны форм могут использовать такие внешние ресурсы, как подключения к данным, веб-службы, базы данных и библиотеки документов. Перед тем, как предоставлять доступ для использования шаблона формы убедитесь, что все внешние ресурсы допустимы и доступны.

  • Управление правами на доступ к данным   Управление правами на доступ к данным (IRM) нельзя использовать для защиты шаблонов форм с поддержкой браузера.

См. также

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

Security considerations for form templates and forms
Security levels of InfoPath forms
InfoPath 2007 Help and How-to
Introduction to Data Connections
Set the required security level for a form template
Secure Coding Guidelines
FxCop Team Page
How to: Sign an Assembly with a Strong Name