Windows Server 2008 и совместимость



Скачать 121.49 Kb.
Pdf просмотр
Дата29.11.2016
Размер121.49 Kb.
Просмотров326
Скачиваний0








Windows Server 2008 и совместимость
приложений



2
Операционные системы Windows Vista и Windows Server 2008 представляют собой
дальнейшее развитие семейства операционных систем компании Microsoft, включают
набор новых технологий и служат платформой для создания широкого спектра
прикладных решений. Для повышения безопасности и улучшения механизмов
взаимодействия с пользователями, в Windows Vista и Windows Server 2008 появился ряд
новинок и расширений и улучшений существующих компонентов. В большинстве случаев,
Windows Vista и Windows Server 2008 обеспечивают высокий уровень совместимости с
приложениями, написанными для операционных систем Microsoft Windows XP, Microsoft
Windows Server 2003 с соответствующими пакетами обновлений, но тем не менее, ряд
новых и измененных компонентов операционной системы может вызвать определенные
проблемы при запуске и работе приложений. В данном обзоре мы обсудим наиболее часто
встречающиеся проблемы с совместимостью существующих приложений с Windows Vista
и Windows Server 2008.
Прежде чем обратиться к подробному описанию возможных проблем, рекомендуется выполнить следующий простой тест, который покажет наличие или отсутствие потенциальных проблем, связанных с совместимостью с новыми версиями операционных систем:
1.
На тестовом компьютере установите Windows Vista или Windows Server 2008 2.
Установите приложение. Если будет показан запрос на подтверждение установки, выберите опцию Permit и установите приложение. Если приложение установилось успешно, перейдите к шагу 6 3.
Если приложение не удалось установить и запрос на подтверждение установки не появился на экране, нажмите правую кнопку мыши на исполняемом файле инсталлятора, выберите опцию Run this program as administrator и повторите попытку установки приложения. Если приложение установилось успешно, перейдите к шагу 6
Примечание: Этот шаг не требуется, если приложение использует MSI-
инсталлятор
4.
Если в процессе установки приложения отображались сообщения об ошибках, например, связанных с версией операционной системы, регистрацией CLSID, копированием файлов, нажмите правую кнопку мыши на исполняемом файле инсталлятора, выберите опцию Properties, затем вкладку Compatibility и установите режим совместимости с Windows XP SP2

3 5.
Вернитесь на шаг 2. Если вы не смогли установить приложение, перейдите к шагу 9.
6.
Приложение должно быть установлено одним из описанных выше способов
7.
Запустите приложение. Если приложение не запустилось как ожидалось или вы получили сообщения об ошибках, установите режим совместимости с Windows XP
SP2 для исполняемого файла приложения и запустите приложение еще раз
8.
Если приложение запустилось успешно, выполните полный набор тестов, которые вы обычно используете для тестирования приложения под Windows XP. Убедитесь в том, что приложение работает нормально и вся его функциональность доступна.
Перейдите к шагу 10 9.
Если приложение не удалось установить, успешно запустить, вы получили ошибки или сбои в процессе работы приложения, вам не удалось выполнить функциональные тесты, то обратитесь к рекомендациям, приведенным в данном обзоре
10.
На этом тест на совместимость завершен
Возможные категории несовместимостей можно разделить на три большие группы: безопасность, защищенные компоненты операционной системы и появление новых или удаление устаревших функций.
Рис. Возможные категории несовместимостей
В свою очередь, показанные выше категории несовместимостей можно разделить на две части – несовместимости, характерные как для Windows Vista и Windows Server 2008 и несовместимости, уникальные для
Windows
Server
2008.
Начнем с группы

4 несовместимостей, которые могут вызвать проблемы при запуске приложений как под управлением клиентской операционной системы Windows Vista, так и серверной операционной системы Windows Server 2008.
Несовместимости, характерные для Windows Vista и Windows Server
2008
Несовместимости, входящие в данную группу, в первую очередь связаны с новыми технологиями, реализованными в клиентской и серверной версии операционной системы
Windows. К ним относятся – User Account Control (UAC), Windows Resource Protection (WRP),
Mandatory Integrity Control (MIC), изменение номера версии операционной системы и изоляция сессии 0.
Рис. Несовместимости, характерные для Windows Vista и Windows Server 2008
User Account Control (UAC)
Принципиальный шаг в направлении повышения безопасности операционных систем семейства Windows – предоставление пользователям возможности работать под учетной записью " standard user", что дает им доступ к ограниченному набору разрешений и привилегий. По умолчанию, в Windows Vista и Windows Server 2008 все приложения выполняются под учетной записью "standard user", даже в тех случаях, когда пользователь является членом группы администраторов. При попытке запуска приложения, требующего привилегий администратора, система запрашивает подтверждения. Только приложения, выполняющиеся с административными привилегиями могут модифицировать системные и

5 глобальные настройки и влиять на поведение системы. Такая функциональность в Windows
Vista и Windows Server 2008 называется User Account Control (UAC).
Дополнительная информация:

User Account Control in Windows Vista o
http://go.microsoft.com/fwlink/?LinkId=62664

Getting Started with User Account Control o
http://go.microsoft.com/fwlink/?LinkId=62669

Developer Best Practices and Guidelines for Applications in a Least Privileged
Environment o
http://msdn2.microsoft.com/en-us/library/aa480150.aspx

UACBlog o
http://go.microsoft.com/fwlink/?LinkId=62676
Windows Resource Protection (WRP)
Для увеличения стабильности системы, ее надежности и предсказуемости поведения, механизм Windows Resource Protection (WRP) защищает систему Windows, поддерживая ее в режиме "только чтение". Эта функциональность распространяется на файлы ядра операционной системы, папки и ключи реестра. Обновления системных ресурсов возможны только приложениями, которые известны операционной системе (OS trusted installers), такими, как, например, Windows Servicing. Такая защита позволяет максимально защитить компоненты и приложения, входящие в состав операционной системы, от возможных воздействий со стороны других приложений и администраторов.
Для того, чтобы определить, защищен ли файл механизмом Windows Resource Protection, можно выполнить следующие действия:
1.
Из кода, используя функцию SfcIsFileProtected
()
2.
В Explorer проверить свойства файла o
Открыть папку, в которой находится файл, свойства которого нас интересуют o
Нажать правую кнопку мыши на интересующем нас файле и выбрать
Properties. o
Файл, который защищен механизмом WRP, покажет что режим Full Control доступен только для учетной записи Trusted Installer. Для учетных записей
SYSTEM, Administrators и Users доступен только режим Read

6
Для того, чтобы определить, защищен ли элемент реестра механизмом Windows Resource
Protection, можно выполнить следующие действия:
3.
Из кода, используя функцию SfcIsKeyProtected
()
4.
В Registry Editor проверить свойства файла o
Нажать правую кнопку мыши на интересующем нас элементе реестра и выбрать Properties. o
Элемент, который защищен механизмом WRP, покажет что режим Full Control доступен только для учетной записи Trusted Installer. Для учетных записей
SYSTEM, Administrators и Users доступен только режим Read
Mandatory Integrity Control (MIC)
В качестве дополнительного уровня защиты от вредоносного программного обеспечения в
Windows Vista и Windows Server 2008 различные приложения могут работать под одним из трех уровней привилегий (High, Medium и Low). Приложения могут взаимодействовать с другими приложениями, выполняющимися с тем же или более низким уровнем привилегий, но не могут модифицировать или взаимодействовать с приложениями, выполняющимися с более высоким уровнем привилегий. В большинстве случаев приложения выполняются с уровнем привилегий Medium, а приложения, требующие наличия прав администратора – с более высокими привилегиями. Процессы с ограниченными возможностями, например, код внутри Internet Explorer, выполняются с минимальными привилегиями.
Таким образом, приложения, выполняющиеся с низким уровнем привилегий, не могут посылать сообщения приложениям, выполняющимся с более высоким уровнем привилегий за исключением тех случаев, когда последние непосредственно не разрешили получение сообщений используя функцию
ChangeWindowMessageFilter()
. Точно также, приложения с низкими привилегиями, не могут модифицировать ссылки типа
HWND, владельцами которых являются приложения с более высокими привилегиями. Для обеспечения совместимости, функция SendMessage() и ряд других функций для отсылки сообщений возвращают код успешного завершения даже если выполнение таких функций заблокировано из-за описанных выше проблем с уровнями привилегий.
Изменение номера версии операционной системы
Внутренний номер версии в операционных системах Windows Vista и Windows Server 2008 равен 6. При вызове функции GetVersion() возвращается именно этот номер. В

7 следующей таблице показаны номера версий ключевых операционных систем семейства
Windows.
ОС
Windows
2000
Windows XP
Windows
Server 2003
Windows
Vista
Windows
Server 2008
Версия
5.0 5.1 5.2 6.0 6.0
Для корректной проверки номера версии следует изменить код, чтобы выполнялась проверка >=6 и проверять не только версию операционной системы, но и ее издание, так как может оказаться, что требуемая для работы приложения функциональность, отсутствует в данном издании операционной системы.
Для обеспечения совместимости приложений с новым номером версии без их переделки, следует использовать т.н. Version Lie Shim – Properties | Compatibility | Compatibility Mode.
Рис. Version Lie Shim
Версия браузера Internet Explorer, входящего в состав Windows Vista и Windows Server 2008 равна 7. Эта версия включена в строку User Agent, которая включается в заголовок каждого
HTTP запроса.
Изоляция сессии 0
В Windows XP, Windows Server 2003 и более ранних версиях операционной системы
Windows, все сервисы выполнялись в одной сессии – в той сессии, которая создавалась для первого пользователя, подключившегося к консоли. Эта сессия называется Session 0.
Выполнение сервисов и пользовательских приложений в одной сессии может приводить к

8 нарушению безопасности, так как сервисы выполняются с повышенными привилегиями и, таким образом, являются потенциальными жертвами для вредоносного кода.
Рис. Потенциальные возможности для атаки в Windows XP
В операционных системах Microsoft Windows Vista и Windows Server 2008 описанные выше возможности для атак со стороны вредоносного кода сведены к минимуму за счет то, что сервисы изолированы в сессии 0 и, таким образом, сессия в которой выполняются сервисы не является интерактивной. В Windows Vista и Windows Server 2008 только системные процессы и сервисы выполняются в сессии 0. Первый пользователь, который подключается к консоли, загружается с сессию 1, следующие пользователи – в сессии с увеличивающимися номерами. Это означает, что сервисы никогда не выполняются в той же сессии, что и пользовательские приложения и, таким образом, защищены от атак со стороны прикладного кода.

9
Рис. Сессии в Windows Vista и Windows Server 2008
Можно привести несколько примеров возможных несовместимостей. Например, в ряде случаев могут возникнуть проблемы с драйверами принтеров, которые загружаются сервисами спулера (spooler service), а также с драйверами, созданными с помощью User
Mode Driver Framework (UMDF), так как такие драйвера располагаются в сессии 0. Помимо этого, могут возникнуть проблемы с сервисами, которые создают интерфейсные элементы, сервисами, которые пытаются использовать функции SendMessage() и PostMessage() для взаимодействия с приложениями, а также с приложениями, создающими объекты с глобальными именами.
Дополнительная информация:

Impact of Session 0 Isolation on Services and Drivers in Windows Vista o
http://go.microsoft.com/fwlink/?LinkId=62691
Несовместимости, уникальные для Windows Server 2008
К несовместимостям, уникальным для серверной операционной системы Windows Server
2008, относятся: изменения в Active Directory, новые или измененные серверные роли,

10 компоненты системы (ряд стандартных приложений доступен в Desktop Experience Pack, отсутствуют файлы DirectX/Media, требуется установка .NET Framework 3.0 и ряд других не существенных изменений, которые в ряде случаев могут вызывать проблемы с функционированием некоторых приложений), новый тип установки операционной системы -
Server Core, изменения в технологиях обеспечения отказоустойчивых кластеров (Failover
Clustering) и новая функциональность в Windows Firewall.
Рис. Несовместимости, уникальные для Windows Server 2008
Изменения в Active Directory
В Windows Server 2008 Active Directory поддерживает унифицированную модель, которая может быть расширена разработчиками системных и прикладных решений. Эта модель предоставляет такие возможности, как:

Единая архитектура и программная модель

Администрирование контроллеров доменов

Сервисы каталогов

Управление правами

Федерация сервисов

Интеграция сервисов мета-каталогов (ILM)

Доменные контроллеры только для чтения (Read-Only Domain Controllers)
Для обеспечения унификации в наименовании компонентов Windows, относящихся к Active
Directory, были внесены некоторые изменения в названия отдельных компонентов – они показаны в следующей таблице.

11
Старое название
Новое название
Active Directory Domain Controller
Active Directory Domain Services
Active Directory App mode
Active Directory Lightweight Directory Services
Windows Rights Management Services
Active Directory Rights Management Services
Windows Certificate Services
Active Directory Certificate services
Identity integration feature pack
Active Directory Metadirectory Services
Новый компонент Windows Server 2008 – доменный контроллер с возможностью только операций "чтение" (RODC) обеспечивает повышенную безопасность - пароли пользователей и компьютеров не реплицируются и не хранятся в таких доменных контроллерах, но поддерживается т.н. выборочное разрешение кэширования паролей. Помимо этого поддерживается однонаправленная репликация для AD и SYSVOL – используется атрибут
Read Only Partial для отказа от репликации данных, но это требует дополнительной ручной настройки. Среди дополнительных характеристик доменных контроллеров с возможностью только операций "чтение" отметим поддержку разделения ключей Kerberos – каждый RODC имеет свою учетную запись KDC Krbtgt, ограниченные права записи в каталог (для учетных записей Workstation, не членов группы “enterprise domain controller” и не членов группы
“domain domain controller”), упрощенность системы за счет поддержки однонаправленных репликаций, упрощенную настройку, учитывая тот факт, что большинство настроек включено по умолчанию. Также отметим, что администратор RODC может не быть администратором домена – это предотвращает случайные модификации домена администраторами компьютеров и тот факт, что поддерживается возможность делегирования установки и восстановления RODC.
Примечательно, что RODC работает в существующей инфраструктуре – в большинстве случаев не требуется изменений для DC или клиентов. Для поддержки RODC требуется наличие режима Windows Server 2003 Forest Functional Mode или PDC FSMO на Windows
Server 2008 и рекомендуется использовать несколько WS2K8 DC на один домен.
Тем не менее, в ряде сценариев мы можем столкнуться с некоторыми проблемами, которые проявляются в том, что попытка записи в RODC либо вызывает ошибку при вызовах
RPC и LDAP, либо приводит к долгим задержкам, появляющимся из-за ссылок на контроллер с возможностью записи. Для исправления таких проблем рекомендуется изменить дизайн топологии таким образом, чтобы функции записи не обращались к RODC.
Дополнительная информация:

Подробное описание возможных несовместимостей

12 o
http://technet2.microsoft.com/windowsserver2008/en/library/ea8d253e-
0646-490c-93d3-b78c5e1d9db71033.mspx?mfr=true

Windows Server 2008 Active Directory o
http://www.microsoft.com/technet/technetmag/issues/2006/11/FutureOfWi
ndows/default.aspx
Новые или измененные серверные роли
Операционная система Windows Server 2008 является полностью компонентизированной.
Серверные роли в Windows Server 2008 полностью гранулированы и по умолчанию не активны. Серверные роли, которые были в предыдущих версиях Windows Server, имеют некоторые отличия, по сравнению с ролями Windows Server 2008. Таким образом, есть небольшая вероятность, что программы установки и приложения могут перестать работать, т.к. ожидаемые функции реализованы в новых или измененных ролях.
Рис. Серверные роли в Windows Server 2008

13
Например, роли, представляющие наибольший интерес для компаний разработчиков -
Web Server и Application Server были одной ролью в Windows Server 2003, а в новой версии сервера разделены на две – это показано на предыдущем рисунке.
Для обнаружения и исправления возможных несоответствий и несовместимостей рекомендуется после миграции на новую операционную систему удалить и переустановить приложения, а также определить зависимости приложений от ролей и функций и включить соответствующие компоненты перед установкой приложения – это можно сделать либо средствами Server Manager, либо в пакетном режиме, используя, например, возможности предоставляемые Windows PowerShell.
Рис. Ролевые сервисы в Windows Server 2008
Дополнительная информация:

Руководство по Windows Server 2008 o
http://www.microsoft.com/windowsserver/longhorn/prodguide.mspx

Installing and Managing Roles

14 o
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032294712&Cu
lture=en-US
Server Core
В Windows Server 2008 появился новый тип установки операционной системы, называемый
Server Core. Server Core – это минимальная версия операционной системы Windows Server
2008, обеспечивающая серверную среду с минимальными требованиями по сопровождению и ограниченной функциональностью. Server Core обеспечивает реализацию ограниченного набора базовых ролей:

DHCP

DNS

Active Directory Domain Controller (включая RODC)

Active Directory LDS (ранее - ADAM)

File Server, включая: o
DFSR (ранее - FRS) o
NFS o
File quota

Print Server

Media Services

Windows Virtualization

IIS 7.0 (без поддержки ASP.NET и удаленного администрирования) и не поддерживает установку приложений – MSI поддерживается только в пакетном режиме. Помимо этого, не поддерживается функциональность на уровне Microsoft .NET (из- за этого, например, в роли Web Server нет поддержки ASP.NET), но разработчики могут создавать утилиты для управления сервером, дополнительные утилиты и сервисы, но только используя Native Windows API.
В Server Core поддерживается следующая функциональность:

WINS

Failover Clustering

Subsystem for UNIX-based applications

Backup

Multipath IO

Removable Storage Management

15

Bitlocker Drive Encryption

SNMP

Telnet Client

(S)NTP
Для удаленного управления Server Core можно использовать:

Terminal Server

MMC для поддерживаемых компонентов и серверных ролей, например, Event Viewer и DNS

WS-Management используя ShellExecute
Определить наличие Server Core из командной строки можно следующей командой:
C:\>WMIC path win32_operatingsystem get OperatingSystemSKU которая вернет одно из следующих значений:

12 для Datacenter Server Core Edition

13 для Standard Server Core Edition или

14 для Enterprise Server Core Edition
Server Core входит в издания Standard, Enterprise и Datacenter и поддерживается на платформах x86 и x64.
Дополнительная информация:

Windows Server 2008 Server Core o
http://msdn2.microsoft.com/en-us/library/ms723891.aspx

Список DLL, включенных в состав Server Core o
http://msdn2.microsoft.com/en-us/library/ms723876.aspx
Failover Clustering
В Windows Server 2008 поддержка отказоустойчивых кластеров претерпела ряд принципиальных изменений, что привело к появлению нового набора программных интерфейсов
(CreateCluster(),
DestroyCluster(),
AddClusterNode(),
EvictClusterNode(), SetClusterQuorumResource(), SetClusterResource
DependencyExpression() и ряд других), улучшениям в функциональности,

16 масштабируемости и управляемости. К новым возможностям кластерных технологий можно отнести:

Интегрированные средства проверки конфигурации

Упрощенная установка кластера

Упрощенное управление кластерами

Расширения модель Quorum

Поддержка Storage Area Networks

Расширения в сетевой поддержке

Расширения для Stretched Cluster

Средства миграции кластеров

Поддержка Server Core
Основные изменения, которые могут привести к несовместимости приложений, связаны с использованием "старых" программных интерфейсов на базе Cluster Automation Server
(MSClus) – они включены в состав Windows Server 2008, но поддерживаться не будут и должны использоваться только в сценариях, когда задействована только одна платформа:
Windows Server 2003 -> Windows Server 2003 или Windows Server 2008 -> Windows Server
2008. Приложения, использующие MSClus, должны использовать Cluster API или провайдера
Cluster WMI.
Дополнительная информация:

Cluster Automation Server o
http://msdn2.microsoft.com/en-us/library/aa369077.aspx

Failover Clustering in Windows Server 2008 o
http://www.microsoft.com/windowsserver/longhorn/failover-clusters.mspx

Server Cluster Provider o
http://msdn2.microsoft.com/en-us/library/aa372876.aspx

Volume Shadow Services o
http://msdn2.microsoft.com/en-us/library/aa384961.aspx
Windows Firewall
В Windows Server 2008 опция Windows Firewall по умолчанию находится во включенном состоянии. Это означает, что для ряда приложений должны быть открыты используемые ими порты – в противном случае приложения не смогут работать. В качестве временного

17 решения возможных проблем можно отключить Windows Firewall, но это рекомендуется делать только в тех случаях, когда на компьютере установлен сетевой экран другого производителя.
Рис. Windows Firewall в Server Manager
Типичные симптомы несовместимости с включенным Windows Firewall – приложения перестают работать и в системном журнале появляются события аудита безопасности, указывающие на то, что приложение было заблокировано. Как мы отметили выше, для обеспечения функционирования приложений необходимо открыть соответствующие порты.
Администраторы могут использовать контекст ‘netsh advfirewall’ для работы с правилами firewall из скриптов и шаблоны мастера Security Configuration для конфигурации серверов.
Разработчики могут использовать программные интерфейсы INetFwPolicy2 (Firewall APIs) для интеграции инсталляторов с Windows Firewall и Advanced Security.
Дополнительная информация:

INetFwPolicy2 o
http://msdn2.microsoft.com/en-us/library/aa365309.aspx

Unattended Installation Settings Reference

18 o
http://technet2.microsoft.com/WindowsVista/en/library/69eee519-55a6-
440d-ab94-56330ef57e291033.mspx
Заключение
В данном обзоре мы познакомились с наиболее часто встречающимися проблемами совместимости существующих приложений с Windows Vista и Windows Server 2008.
Следование приведенным рекомендациям поможет вам минимизировать возможные проблемы.

Каталог: documents -> rus -> ISV
rus -> Лицензирование Windows Server 2012
rus -> Технология microsoft Product Activation
rus -> Как правильно лицензировать операционную систему Windows 8 основные требования лицензий
rus -> Инструкция по приобретению продуктов Майкрософт для лпу
rus -> Server 2003 Чарли Рассел (Charlie Russel)
rus -> Справочник по лицензированию и ценам Руководство по лицензированию
ISV -> Руководство по маркетингу для партнерской программы Для обладателей лицензий на использование эмблемы «Compatible with Windows 7»
ISV -> Windows 7 и модернизация приложений Алексей Федоров


Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал