Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Windows Workflow Foundation (WF) интегрирован с несколькими различными технологиями, такими как Microsoft SQL Server и Windows Communication Foundation (WCF). В случае неправильной настройки взаимодействие с этими технологиями может вызвать проблемы безопасности в рабочем процессе.
Примечание.
Рабочие процессы описывают порядок выполнения и зависимостей между короткими или длительными задачами. В качестве механизма выполнения кода необходимо загрузить и выполнить только доверенный код. Разработчики должны убедиться, что только доверенные рабочие процессы используются с приложениями с помощью WF.
Вопросы безопасности сохраняемости
Рабочие процессы, которые используют активность Delay и персистентность, должны быть повторно активированы службой. Windows AppFabric использует службу Workflow Management Service (WMS) для повторной активации рабочих процессов с истекшими таймерами. WMS создает объект WorkflowServiceHost для размещения повторно активированного рабочего процесса. Если служба WMS остановлена, сохраненные рабочие процессы не будут активироваться повторно при истечении их таймеров.
Доступ к устойчивым инстанциям должен быть защищен от внешних вредоносных сущностей домена приложения. Кроме того, разработчики должны гарантировать, что вредоносный код нельзя выполнить в том же домене приложения, что и код устойчивой инстанцирования.
Долговечное инстанцирование не следует запускать с повышенными (административными) правами.
Данные, обрабатываемые за пределами домена приложения, должны быть защищены.
Приложения, требующие изоляции безопасности, не должны использовать совместно один и тот же экземпляр абстракции схемы. Такие приложения должны использовать различные поставщики хранилищ или поставщики хранилищ, настроенные на создание разных экземпляров хранилищ.
Вопросы безопасности SQL Server
Если используется большое количество дочерних действий, местоположений, закладок, расширений хоста или областей, или используются закладки с очень большим объемом данных, может быть исчерпана память, или во время сохранения может быть выделено чрезмерно большое количество места в базе данных. Избежать этого можно с помощью мер безопасности на уровне объекта и на уровне базы данных.
Если используется SqlWorkflowInstanceStore, хранилище экземпляров должно быть защищено.
Конфиденциальные данные в хранилище экземпляров должны быть зашифрованы. Дополнительные сведения см. в статье SQL Server Encryption.
Так как строка подключения базы данных часто содержится в файле конфигурации, следует использовать безопасность уровня Windows (ACL) для обеспечения защиты файла конфигурации (обычно это Web.Config), а также для того, чтобы гарантировать, что сведения об имени входа и пароле не содержатся в строке подключения. В качестве альтернативы между базой данных и веб-сервером можно использовать аутентификацию Windows.
Рекомендации по WorkflowServiceHost
Конечные точки Windows Communication Foundation (WCF), используемые в рабочих процессах, должны быть защищены. Дополнительные сведения см. в разделе "Общие сведения о безопасности WCF".
Авторизацию на уровне узлов можно реализовать с помощью ServiceAuthorizationManager. Дополнительные сведения см. в статье "Практическое руководство. Создание пользовательского диспетчера авторизации для службы ".
Кроме того, контекст безопасности ServiceSecurityContext для входящего сообщения также можно получить в рабочем процессе через доступ к OperationContext.
Пакет безопасности WF CTP
Предварительная версия технологии Microsoft WF Security Pack (CTP) 1 — это набор действий и их реализация на основе Windows Workflow Foundation в платформе .NET Framework 4 (WF 4) и Windows Identity Foundation (WIF). Пакет безопасности Microsoft WF CTP 1 содержит действия и их конструкторы, которые демонстрируют простое включение различных сценариев обеспечения безопасности с помощью рабочих процессов, в том числе следующие:
Имитация идентичности клиента в рабочем процессе
Авторизация в рабочих процессах, например PrincipalPermission и проверка утверждений
Обмен сообщениями с использованием проверки подлинности (с применением определенных в рабочем процессе ClientCredentials), например с использованием имени пользователя и пароля или токена, полученного от службы токенов безопасности (STS)
Сквозная передача токена безопасности клиента внутренней службе (делегирование на основе утверждений) с помощью WS-Trust ActAs