46. Обеспечение ИБ в сетях Перейдем к рассмотрению системы

реклама
46. Обеспечение ИБ в сетях
Перейдем к рассмотрению системы защиты операционных систем. Ее
основными задачами являются идентификация, аутентификация, разграничение
доступа пользователей к ресурсам, протоколирование и аудит самой системы.
Идентификация и аутентификация
Обычно каждый пользователь в системе имеет уникальный идентификатор.
Идентфикаторы пользователей применяются с теми же целями, что и
идентификаторы любых других объектов, файлов, процессов. Идентификация
заключается в сообщении пользователем своего идентификатора. Для того чтобы
установить, что пользователь именно тот, за кого себя выдает, то есть что именно
ему принадлежит введенный идентификатор, в информационных системах
предусмотрена процедура аутентификации (authentication, опознавание, в переводе
с латинского означает установление подлинности), задача которой предотвращение доступа к системе нежелательных лиц.
Обычно аутентификация базируется на одном или более из трех
пунктов:
1. то, чем пользователь владеет (ключ или магнитная карта),
2. то, что пользователь знает (пароль),
3. атрибуты пользователя (отпечатки пальцев, подпись, голос).
4. Пароли, уязвимость паролей
Наиболее простой подход к аутентификации - использование
пользовательского пароля.
Когда пользователь идентифицирует себя при помощи уникального
идентификатора или имени, у него запрашивается пароль. Если пароль,
сообщенный пользователем, совпадает с паролем, хранимым в системе, система
предполагает, что пользователь легитимен.
Пароли часто используются для защиты объектов в компьютерной системе в
отсутствие более сложных схем защиты.
Проблемы паролей связаны с трудностью хранить пароль в секрете. Пароли
могут быть скомпрометированы путем угадывания, случайно показаны или
нелегально переданы авторизованным пользователем неавторизованному
Есть два общих способа угадать пароль. Один для нарушителя, который
знает пользователя или информацию о пользователе. Люди обычно используют
очевидную информацию (типа имен кошек) в качестве паролей. Для иллюстрации
важности разумной политики назначения идентификаторов и паролей можно
привести данные исследований, проведенных в AT&T, показывающие, что из 500
попыток несанкционированного доступа около 300 составляют попытки угадывания
паролей или беспарольного входа по пользовательским именам guest, demo и т.д.
Другой способ - грубой силы - попытаться перебрать все возможные
комбинации букв, чисел и пунктуации. Например, четыре десятичные цифры дают
только 10000 вариантов, более длинные пароли, введенные с учетом регистра
символов и пунктуации, менее уязвимы.
Хотя имеются проблемы с их использованием, пароли, тем не менее,
распространены, так как они легки для понимания и использования.
Шифрование пароля
Для хранения секретного списка паролей на диске многие ОС используют
криптографию. Система использует одностороннюю функцию, которую
чрезвычайно трудно (дизайнеры надеются, что невозможно) инвертировать, но
просто вычислить. Хранятся только кодированные пароли. В процессе
аутентификации представленный пользователем пароль кодируется и сравнивается
с хранящимися на диске. Т.о., файл паролей нет необходимости держать в секрете.
При удаленном доступе к ОС нежелательно путешествие пароля по сети в
открытом виде. Одним из типовых решений является использование
криптографических протоколов. В качестве примера можно рассмотреть протокол
опознавания с подтверждением установления связи путем вызова - CHAP (Challenge
Handshake Authentication Protocol)
Опознавание достигается за счет проверки того, что у пользователя,
осуществляющего доступ к серверу, имеется секретный пароль, который уже
известен серверу.
Сервер посылает пользователю запрос (вызов), состоящий из
идентифицирующего кода, случайного числа и имени узла сервера или имени
пользователя. При этом пользовательское оборудование в результате затребования
пароля пользователя отвечает следующим ответом, зашифрованным с помощью
алгоритма одностороннего хэширования, наиболее распространенным видом
которого является MD5. После получения ответа сервер при помощи той же
функции с теми же аргументами шифрует собственную версию пароля
пользователя. В случае совпадения результатов разрешается вход в систему.
Существенно, что незашифрованный пароль при этом не посылается по каналу
связи.
Авторизация. Разграничение доступа к объектам ОС
После того, как легальный пользователь вошел в систему необходимо
осуществить авторизацию (authorization)- предоставление субъекту прав на доступ
к объекту. Средства авторизации контролируют доступ легальных пользователей к
ресурсам системы, предоставляя каждому из них именно те права, которые были
определены администратором, а также осуществляют контроль возможности
выполнения пользователем различных системных функций.
Как уже говорилось, компьютерная система может быть смоделирована как
набор субъектов (процессы, пользователи) и объектов. Под объектами мы понимаем
как ресурсы оборудования (процессор, сегменты памяти, принтер, диски и ленты),
так и программные (файлы, программы, семафоры). Каждый объект имеет
уникальное имя, отличающее его от других объектов в системе, и каждый из них
может быть доступен через хорошо определенные и значимые операции. Объекты абстрактные типы данных.
Операции зависят от объектов. Hапример, процессор может только
выполнять команды. Сегменты памяти могут быть записаны и прочитаны, тогда как
считыватель карт может только читать. Файлы данных могут быть записаны,
прочитаны, переименованы и т.д.
Очевидно, что процессу может быть разрешен доступ только к тем ресурсам,
к которым он имеет авторизованный доступ. Желательно добиться того, чтобы он
имел доступ только к тем ресурсам, которые ему нужны для выполнения его задачи.
Это требование имеет отношение только к принципу минимизации привилегий,
полезному с точки зрения ограничения количества повреждений, которые процесс
может нанести системе. Hапример, когда процесс P вызывает процедуру А, ей
должен быть разрешен доступ только к переменным и формальным параметрам,
переданным ей, она должна быть не в состоянии влиять на другие переменные
процесса. Аналогично компилятор не должен оказывать влияния на произвольные
файлы, а только на их хорошо определенное подмножество (типа исходных файлов,
листингов и др.), имеющих отношение к компиляции. С другой стороны, компилятор
может иметь личные файлы, используемые для оптимизационных целей, к которым
процесс Р не имеет доступа.
Различают дискреционный (избирательный) способ управления
доступом и полномочный (мандатный). При дискреционном доступе
определенные операции над определенным ресурсом запрещаются или
разрешаются субъектам или группам субъектов. С концептуальной точки зрения
текущее состояние прав доступа при дискреционном управлении описывается
матрицей, в строках которой перечислены субъекты, а в столбцах - объекты.
Полномочный подход заключается в том, что вся информация делится на
уровни в зависимости от степени секретности, а все пользователи также делятся на
группы, образующие иерархию в соответствии с уровнем допуска к этой
информации.
Большинство операционных систем реализуют именно дискреционное
управление доступом. Главное его достоинство - гибкость, главные недостатки рассредоточенность управления и сложность централизованного контроля, а также
оторванность прав доступа от данных, что позволяет копировать секретную
информацию в общедоступные файлы.
47. Управление доступом к данным. Списки прав доступа к объектам аналогичная проблема возникает и в других ситуациях.
В системах семейства Unix для этой цели был предложен оригинальный
Существует несколько моделей предоставления прав доступа к файлам и
механизм, известный как setuid (setting of user id - установка [эффективного]
другим объектам. Наиболее простая модель используется в системах семейства
идентификатора пользователя).
Unix.
В этих системах каждый файл или каталог имеют идентификаторы хозяина и
группы. Определено три набора прав доступа: для хозяина, группы (т.е., для
пользователей, входящих в группу, к которой принадлежит файл) и всех остальных.
Пользователь может принадлежать к нескольким группам одновременно, файл
всегда принадлежит только одной группе.
Бывают три права: чтения, записи и исполнения. Для каталога право
исполнения означает право на поиск файлов в этом каталоге. Каждое из прав
обозначается битом в маске прав доступа, т.е. все три группы прав представляются
девятью битами или тремя восьмеричными цифрами.
Права на удаление или переименование файла не существует; вообще, в
Unix не определено операции удаления файла как таковой, а существует лишь
операция удаления имени unlink. Для удаления или изменения имени достаточно
иметь право записи в каталог, в котором это имя содержится.
В традиционных системах семейства Unix все глобальные объекты - внешние
устройства и именованные программные каналы - являются файлами (точнее,
имеют имена в файловой системе), и управление доступом к ним охватывается
файловым механизмом. В современных версиях Unix адресные пространства
исполняющихся процессов также доступны как файлы в специальной файловой
(или псевдофайловой, если угодно) системе proc. Файлы в этой ФС могут быть
использованы, например, отладчиками для доступа к коду и данным отлаживаемой
программы. Управление таким доступом также осуществляется стандартным
файловым механизмом. Кроме доступа к адресному пространству, над процессом в
Unix определена, по существу, только операция посылки сигнала. Обычный
пользователь может посылать сигналы только своим процессам; только
суперпользователь (root) может посылать их чужим процессам. Все остальные
операции осуществимы только между процессами, связанными отношением
родитель/потомок, и распределение прав доступа в этой ситуации вообще не
нужно. Таким образом, файловые права доступа используются для управления
доступом к практически любым объектам ОС.
Многие современные системы, не входящие в семейство Unix, а также и
некоторые версии Unix, например, HP/UX или SCO UnixWare 2.x, используют более
сложную и гибкую систему управления доступом, основанную на списках
управления доступом (Access Control Lists - ACL). С каждым защищаемым объектом,
кроме идентификатора его хозяина, связан список записей. Каждая запись состоит
из идентификатора пользователя или группы и списка прав для этого пользователя
или группы. Понятие группы в таких системах не играет такой большой роли, как в
Unix, а служит лишь для сокращения ACL, позволяя задать права для многих
пользователей одним элементом списка. Многие системы, использующие эту
модель, например Novell Netware, даже не ассоциируют с файлом идентификатора
группы.
Обычно список возможных прав включает в себя право на изменение ACL.
Таким образом, не только хозяин объекта может изменять права доступа к нему.
Это право может быть дано и другим пользователям системы или даже группам
пользователей, если это окажется для чего-то необходимо.
Однако за дополнительную гибкость приходится платить снижением
производительности. В системах семейства Unix проверка прав доступа
осуществляется простой битовой операцией над маской прав. В системах же,
использующих ACL, необходим просмотр списка, который может занять намного
больше времени. Самое плохое состоит в том, что мы не можем гарантировать
завершения этого поиска за какое-либо время, не устанавливая ограничений на
длину списка.
ОС
В современных системах накладные расходы, связанные с использованием
ACL, считаются достаточно малыми, поэтому эта модель распределения прав
приобретает все большую популярность.
Кроме прав доступа к объектам, система должна управлять выдачей
некоторых привилегий. Так, для выполнения резервного копирования и
восстановления файлов необходим пользователь, способный осуществлять доступ к
файлам и операции на ними, не обращая внимания на права доступа.
Во всех системах необходимы пользователи, имеющие право изменять
конфигурацию системы, заводить новых пользователей и группы и т.д. Если система
обеспечивает запуск процессов реального времени, создание таких процессов тоже
должно контролироваться, поскольку процесс РВ имеет более высокий приоритет,
чем все процессы разделенного времени, и может, просто не отдавая процессор,
заблокировать все остальные задачи.
В большинстве современных многопользовательских ОС, не входящих в
семейство Unix, с каждым пользователем ассоциирован список привилегий,
которыми этот пользователь обладает. В системах семейства Unix все гораздо
проще: обычные пользователи не обладают никакими привилегиями. Для
выполнения привилегированных функций существует пользователь c численным
идентификатором 0 - суперпользователь (superuser), который обладает, подобно
христианскому Господу Богу, всеми мыслимыми правами, привилегиями и
атрибутами. По традиции суперпользователь имеет символьное имя root ``корень''.
Система списков привилегий предоставляет большую гибкость, чем один
сверхпривилегированный суперпользователь, потому что позволяет администратору
системы передать часть своих функций, например выполнение резервного
копирования, другим пользователям, не давая им при этом других привилегий.
Однако, как и ACL, эта схема приводит к большим накладным расходам при
контроле прав доступа: вместо сравнения идентификатора пользователя с нулем мы
должны сканировать список привилегий, что несколько дольше.
В некоторых ситуациях нужен более тонкий контроль за доступом, чем
управление доступом на уровне файлов. Например, для изменения информации о
пользователе необходим доступ на запись к соответствующей базе данных, но не ко
всей, а только к определенной записи. Вполне естественно и даже необходимо дать
пользователю возможность менять пароль, не обращаясь к администратору. С
другой стороны, совершенно недопустима возможность менять пароли других
пользователей. Одним из решений было бы хранение пароля для каждого из
пользователей в отдельном файле, но это во многих отношениях неудобно. Другое
решение может состоять в использовании модели клиент-сервер с процессомсервером, исполняющимся с привилегиями администратора, который является
единственным средством доступа к паролям. Например, в Windows NT весь доступ к
пользовательской базе данных осуществляется через системные вызовы, то есть
функции процесса-сервера исполняет само ядро системы. Этот подход позволяет
решить проблему контроля доступа именно к пользовательской базе данных, но
48. Создание и редактирование объектов групповой политики.
Инструменты управления групповыми политиками.
Реализация политик безопасности в Windows 2000 предоставляет
значительно более широкие возможности. При необходимости вы можете
устанавливать политики для всего дерева доменов. Различные контроллеры в
пределах одного домена могут обладать индивидуальными политиками
безопасности. Установив политику безопасности в одном месте, администраторы
могут контролировать безопасность всех серверов и рабочих станций домена.
Политики безопасности в Windows 2000 реализуются с помощью средств групповых
политик (group policy).
Групповая политика имеет следующие преимущества:
Основываясь на службе Active Directory системы Windows 2000, позволяет
как централизованно, так и децентрализовано управлять параметрами политики.
Обладает гибкостью и масштабируемостью. Может быть применена в
широком наборе конфигураций системы, предназначенных как для малого бизнеса,
так и для больших корпораций.
Предоставляет интегрированный инструмент управления политикой с
простым и хорошо понятным интерфейсом — оснастку консоли управления
Групповая политика (Group Policy).
Обладает высокой степенью надежности и безопасности.
Групповые политики расширяют и используют преимущества Active Directory.
Их настройки находятся в объектах групповых политик (Group Policy Object, GPO),
которые в свою очередь ассоциируются с такими контейнерами Active Directory, как
сайты, домены и подразделения (организационные единицы).
1. Политики безопасности Windows 2000 хранятся в двух типах объектов
GPO: локальном объекте групповой политики и объекте групповой политики
домена.
2. Объекты групповой политики (GPO)
3. Оснастка Групповая политика (Group Policy)
При создании, настройке и хранении параметров групповых политик
применяется подход, позволяющий работать с GPO как с документами.
После создания GPO ассоциируется с определенным контейнером Active
Directory, и в результате групповые политики, хранящиеся в данном GPO, будут
выполняться для всех компьютеров и пользователей, находящихся в этом
контейнере. Дополнительными средствами настройки групповых политик в
контейнере являются группы безопасности и дискреционные разрешения доступа.
GPO создается с помощью оснастки консоли управления Групповая политика,
которая может вызываться как изолированный инструмент и в качестве расширения
таких оснасток, как Active Directory—пользователи и компьютеры (Active Directory
Users and Computers) или Active Directory—сайты и службы (Active Directory Site and
Services). Для вызова оснастки Групповая политика в качестве расширения в окне
соответствующей оснастки укажите нужный контейнер и щелкните правой кнопкой
мыши. В появившемся контекстном меню выберите команду Свойства (Properties). В
открывшемся окне перейдите на вкладку Групповая политика (Group Policy). С ее
помощью вы сможете просматривать контейнеры Active Directory и ассоциированные
с ними GPO.
Для запуска оснастки Групповая политика в виде изолированной
оснастки:
1. Нажмите кнопку Пуск (Start). Выберите команду Выполнить (Run). В поле
ввода введите с клавиатуры и нажмите кнопку ОК. Запустится консоль управления
Microsoft.
2. В окне консоли управления в меню Консоль (Console) выберите команду
Добавить/удалить оснастку (Add/Remove Snap-in), затем нажмите кнопку Добавить
(Add). В открывшемся окне выберите элемент Групповая политика и нажмите
кнопку Добавить.
3. В следующем окне нажмите кнопку Обзор (Browse). В открывшемся окне
диалога выберите GPO, который будет загружен в оснастку (можно выбрать GPO
для отдельного компьютера, подразделения, сайта или домена), и нажмите кнопку
ОК. Нажмите кнопки Готово (Finish), Закрыть (Close) и ОКТеперь оснастку можно
сохранить в файле с любым именем.
Создать групповую политику для контейнера Active Directory можно только
при наличии определенного набора условий. Необходимо иметь работающий
контроллер домена Windows 2000. Пользователь, который создает групповую
политику, должен обладать правами на чтение и запись в системный том
контроллеров домена (папка Sysvol). Кроме того, он должен иметь право
модификации выбранного контейнера Active Directory.
После запуска оснастки Групповая политика в окне структуры появляется
набор узлов, которые являются расширениями этой оснастки. По умолчанию все
расширения загружаются в процессе запуска оснастки. Однако их состав можно
изменить с помощью средств создания индивидуальной конфигурации консоли ММС
и с помощью политик, определяющих работу самой консоли. Подход,
предполагающий применение расширений, позволяет пользователям создавать свои
собственные расширения оснастки Групповая политика, наделяя ее способностью
устанавливать дополнительные групповые политики. Любое расширение может в
свою очередь состоять из расширений, поэтому оснастка Групповая политика —
чрезвычайно гибкий инструмент, который можно сконфигурировать для конкретной
компьютерной среды.
Расширения оснастки Групповая политика
Ниже родительских узлов Конфигурация компьютера и Конфигурация
пользователя находятся дочерние узлы, каждый из которых является полноценным
расширением оснастки Групповая политика. Они могут находиться в обоих
родительских узлах, хотя и с различными параметрами, или индивидуально
расширять узлы Конфигурация компьютера или Конфигурация пользователя.
Оснастка Групповая политика имеет следующие расширения (рис. 27.1):
Административные шаблоны. (Administrative Templates).
Здесь находится групповая политика, определяющая параметры реестра,
задающие работу и внешний вид рабочего стола, компонент операционной системы
и приложений.
Параметры безопасности (Security Settings).
Служит для настройки параметров системы безопасности компьютеров, на
которые воздействует данный объект групповой политики. С помощью групповых
политик можно настроить безопасность локального компьютера, домена и целой
сети. О Установка программ (Software Installation). Служит для централизованного
управления программным обеспечением организации. С его помощью можно
задавать различные режимы установки новых программ на компьютеры
пользователей.
Сценарии (Scripts).
Сценарии используются для автоматического выполнения набора команд при
загрузке операционной системы и в процессе завершения ее работы, а также при
регистрации и отключении пользователя от сети. Для выполнения сценариев,
написанных на Microsoft JScript и Microsoft Visual Basic Scripting Edition, можно
применять сервер сценариев (Windows Scripting Host).
Перенаправление папок (Folder Redirection).
Позволяет перенаправлять обращение к специальным папкам в сеть.
Установка программ (Software Installation)
Наличие механизма групповых политик всегда являлась одной из главных
отличительных черт Active Directory (AD), а в операционной системе Windows Server
2003 компания Microsoft существенно расширила функциональность объектов
групповой политики (GPO) и возможность управления им, дополнив консоль MMC
оснасткой Group Policy Management Console (GPMC). Компонент GPMC является
довольно масштабным и достаточно сложным инструментом, поэтому для того,
чтобы научиться максимально использовать все преимущества GPO в своей
инфраструктуре необходимо хорошо разбираться в предмете.
Группы безопасности (security groups) предназначены для решения
следующих двух задач: ограничения влияния групповой политики и делегирования
управления объектами групповой политики.
Ограничение влияния настроек групповой политики
Как уже говорилось, все компьютеры и пользователи, находящиеся в
определенном контейнере, подпадают под влияние групповых политик, настройки
которых находятся в GPO, связанном с данным контейнером. Для более тонкой
настройки влияния определенного объекта груп повой политики на группы
пользователей и компьютеров применяют группы безопасности. Они не могут быть
связаны с GPO, но с помощью вкладки Безопасность окна свойств объекта групповой
политики можно задать, будет ли данный GPO влиять на членов определенной
группы безопасности.
Обратите внимание, что фильтрация влияния политик безопасности может
быть выполнена только с помощью групп безопасности. Группы дистрибуции
(distribution groups) для этого не подходят.
Для ограничения влияния настроек групповой политики: 1.
В правом
подокне окна оснастки Групповая политика укажите корневой узел объекта
групповой политики и нажмите правую кнопку мыши.
2. В появившемся контекстном меню выберите команду Свойства.
3. В окне свойств объекта групповой политики перейдите на вкладку
Безопасность.
4. Нажмите кнопку Добавить и добавьте нужную группу.
5. Установите для нее надлежащие права доступа к объекту групповой
политики. Можно разрешить или запретить доступ к GPO. На членов группы, для
которой в строке Применение групповой политики флажок установлен в позиции
Разрешить, влияют настройки данного объекта групповой политики. Чтобы
запретить влияние групповой политики на определенную группу, в строке
Применение групповой политики флажок необходимо установить в позиции
Запретить (Deny). Если флажок не установлен ни в одной из позиций, это значит,
что к данной группе не применяются настройки ни одной из установленных политик.
Следует очень хорошо осмыслить факт влияния групповых политик на группы
безопасности! Хотя, как указывается в любой документации от Microsoft,
относящейся к групповым политикам, "групповые политики (различные GPO) могут
распространять свое влияние на сайты, домены и подразделения" — т. е. на
контейнеры Active Directory, однако, используя механизмы безопасности, можно
построить систему групповых политик, ориентированную на группы. Например,
можно создать несколько политик на уровне домена и разрешить применение
каждой из политик только к отдельным группам (при этом нужно в каждой политике
удалить или запретить подключаемую по умолчанию группу Прошедшие проверку
(Authenticated Users), в которую попадаются все пользователи). Иногда такой
подход может оказаться весьма полезным и гибким.
С помощью инструментов управления Active Directory администратор может
делегировать другим пользователям и группам право управления частью каталога.
Это в полной мере относится и к объектам групповой политики, в отношении
которых могут быть, в частности, делегированы следующие права: П Управление
связями GPO с сайтом, доменом или подразделением (OU). Для этого с помощью
инструмента управления Active Directory укажите сайт, домен или OU и щелкните
правой кнопкой мыши. В появившемся контекстном меню выберите команду
Делегирование управления (Delegate Control). Запустится Мастер делегирования
управления (Delegation of Control Wizard). С его помощью можно выбрать объект
групповой политики, группу или пользователя, которому должны быть делегированы
права, а также и само право (в данном случае Управление ссылками групповой
политики (Manage Group Policy links)).
Создание и удаление всех
дочерних объектов групповой политики. По умолчанию правом создания объектов в
GPO обладают администраторы домена (Domain Admins) и администраторы
предприятия (Enterprise Admins), а также операционная система. Для делегирования
пользователю права управления объектами групповой политики домена необходимо
включить его в группу Создатели-владельцы групповой политики (Group Policy
Creator Owners).
Редактирование свойств объектов групповой политики. По умолчанию
правом редактирования GPO обладают администраторы домена, администраторы
предприятия и операционная система. Для делегирования пользователю права
редактирования объекта групповой политики необходимо включить его в одну из
указанных трупп безопасности.
49. Шаблоны безопасности. Примеры шаблонов. Управление
политикой безопасности.
Оснастка Шаблоны безопасности (Security Templates) — этот инструмент
позволяет определять конфигурации безопасности, не зависящие от машины,
которые хранятся в виде текстовых файлов.
едактор шаблонов безопасности реализован в виде оснастки ММС. Он
предназначен для создания и редактирования текстовых файлов конфигурации
безопасности операционной системы Windows 2000. Такие файлы значительно
легче переносятся с одной системы на другую, чем соответствующие им базы
данных безопасности.
Созданные при помощи оснастки Шаблоны безопасности текстовые файлы
хранятся на жестком диске и при необходимости могут быть импортированы в базу
данных безопасности. В этом случае все хранимые настройки безопасности начнут
действовать.
С помощью оснастки Шаблоны безопасности можно
конфигурировать:
1. Политики безопасности учетных записей (Account Security). Здесь вы
сможете настроить такие параметры безопасности, как политика паролей, политика
блокировки паролей и т. д.
2. Локальные политики (Local Policies). Здесь можно настроить параметры
безопасности, касающиеся политики аудита, прав пользователей и индивидуальных
параметров безопасности конкретной машины Windows 2000. Большинство этих
параметров безопасности соответствуют значениям переменных реестра.
3. Журнал событий (Event Log). Здесь настраиваются параметры,
определяющие работу журналов системы, безопасности, приложений и службы
каталогов (Directory Service).
4. Группы с ограниченным доступом (Restricted Groups). Параметры,
определяющие членство в группах, включая поддержку встроенных групп
контроллеров домена.
5. Системные службы (System Services). Здесь можно настроить параметры
безопасности, касающиеся режима загрузки и управления доступом для всех
системных служб, а также параметры, определяющие безопасность редиректора и
сервера.
6. Реестр (Registry). Можно управлять доступом к разделам реестра
системы.
7. Файловая система (File System). Можно настроить параметры
управления доступом к файлам и папкам локальных томов файловой системы и
деревьев каталога.
Значения параметров всех перечисленных выше областей обеспечения
безопасности заносятся в текстовые файлы с расширением inf, называемые
шаблонами безопасности. С их помощью можно конфигурировать систему. Кроме
того, при анализе безопасности системы шаблоны могут быть использованы в
качестве рекомендованной конфигурации.
Информация о конфигурации безопасности расположена в нескольких
разделах. Вся информация шаблонов обрабатывается ядром оснастки Шаблоны
безопасности. Шаблоны обладают гибкой архитектурой, позволяющей в случае
необходимости создавать новые разделы для конфигурации и анализа информации
безопасности.
Оснастка Шаблоны безопасности располагает набором созданных заранее
шаблонов безопасности. По умолчанию они хранятся в папке %SystemRoot%
\Security\Templates. Они могут быть модифицированы с помощью этой оснастки и
импортированы в расширение Параметры безопасности (Security Settings) оснастки
Групповая политика.
Шаблоны безопасности отличаются друг от друга совокупностью хранящихся
в них настроек. С помощью разных шаблонов можно устанавливать различные по
степени защищенности конфигурации безопасности компьютера Windows 2000.
Применять шаблоны безопасности, можно только в случае, если система была уже
настроена с помощью параметров безопасности, установленных по умолчанию.
Новые шаблоны безопасности не изменяют все старые настройки параметров
системы безопасности, они лишь дополняют их, увеличивая (инкрементируя)
степень защищенности компьютера. Поэтому их называют инкрементирующими
шаблонами безопасности.
Заранее определенные компанией Microsoft конфигурации
безопасности делятся на следующие типы:
1. Базовая (Basic). Это набор настроек безопасности, генерируемых по
умолчанию на рабочих станциях, серверах и контроллерах доменов при
первоначальной установке Windows 2000. Базовая конфигурация в основном служит
для того, чтобы прекращать действие более жестких типов конфигураций
безопасности. Операционная система Windows 2000 содержит три базовых шаблона
безопасности:
basicwk.inf — для рабочих станций
basicsv.inf — для серверов
basicdc.inf — для контроллеров доменов
Базовые шаблоны безопасности содержат настройки параметров
безопасности, устанавливаемые по умолчанию для всех областей обеспечения
безопасности, за исключением прав пользователя и групп. Эти шаблоны можно
применять в системе Windows 2000 с помощью оснастки Анализ и настройка
безопасности или с помощью утилиты Secedit.exe.
2. Совместимая (Compatible). Эти настройки безопасности генерируются в
системах, где не требуются жесткие меры безопасности, и где работают устаревшие
программные продукты. В выборе между обеспечением выполнения всех функций
приложения и обеспечением безопасности данная конфигурация принимает сторону
приложения. Помимо некоторого улучшения установок безопасности, совместимые
конфигурации содержат в себе специальные настройки, предназначенные для
защиты пакета Microsoft Office. В случае, если в системе используется этот продукт,
совместимая конфигурация должна быть включена после установки пакета Office.
Однако следует помнить, что конфигурация безопасности, создаваемая этим
шаблоном, не считается защищенной. Файл совместимого шаблона безопасности
называется compatws.inf.
3. Защищенная (Secure). Обеспечивает более надежную безопасность по
сравнению с совместимой конфигурацией. В выборе между обеспечением
выполнения' всех функций приложения и обеспечением безопасности данная
конфигурация принимает сторону безопасности. Она содержит жесткие настройки
безопасности для политики учетных записей, аудита и некоторых широко
используемых разделов реестра. Защищенную конфигурацию рекомендуется
ставить на компьютеры, где не задействованы все возможности Microsoft Office, или
если данный компьютер предназначен для решения узкого круга задач. Шаблоны
защищенной безопас ности находятся в файлах securews.inf и securedc.inf.
4. Сильно защищенная (High Security). Эта конфигурация позволяет
получить идеально защищенную систему Windows 2000, не учитывающую
функциональность приложений. Подобная конфигурация при обмене информацией
предполагает обязательное использование электронной подписи и шифрования,
которое обеспечивается только средствами Windows 2000. Поэтому компьютеры, на
которых установлена сильно защищенная конфигурация безопасности, не могут
обмениваться данными с другими операционными системами Windows. Сильно
защищенную конфигурацию можно применять в системах, где работают
приложения, предназначенные для функционирования в среде с усиленной
системой безопасности. Шаблоны защищенной безопасности находятся в файлах
hisecws.inf и hisecdc.inf.
Приложения, которые успешно работают на определенном уровне
безопасности, обеспеченной заранее созданными шаблонами, также успешно
функционируют на более низких уровнях безопасности.
50. Утилиты командной строки для управления удаленным
компьютером.
Пакет программ под названием Command Line Management, реализованный
Microsoft в Windows Server 2003, предназначен именно для этих нужд
администратора. Предлагаю вниманию читателей обзор девяти утилит командной
строки Windows Server 2003, которые группа программистов создала или
усовершенствовала, исходя из существующих инструментов.Одна из целей
программы Command Line Management — предоставить администраторам утилиты
командной строки для решения задач управления высокого уровня. Гибкость и
мощность таких утилит, позволяющих любому администратору писать сценарии, —
не единственные их достоинства. Эти программы представляют собой
усовершенствованные во многих отношениях предыдущие инструменты.
Все утилиты имеют стандартный синтаксис, что сокращает количество
времени, необходимое администраторам для изучения каждой из них в отдельности.
Выполнять программы на сервере можно в удаленном режиме без
необходимости регистрироваться непосредственно на консоли.
Утилиты поддерживают работу под другой учетной записью, поэтому могут
функционировать в защищенной среде, в которой администратор, как правило, не
является привилегированным пользователем.
Как уже отмечалось выше, не все рассматриваемые утилиты являются
новыми..
Нужно соблюдать осторожность, если при создании сценариев на базе
утилит командной строки используется не Notepad, а какой-то другой редактор. По
умолчанию Microsoft Word добавляет автоматические кавычки, заменяет два идущих
подряд дефиса длинным тире и использует другие символы для улучшения вида
текста. В результате можно потратить два часа на проверку синтаксиса команд и
обнаружить, что он правильный, но в коде утилиты содержится несколько
неотображаемых символов.
гораздо реже, чем другие утилиты командной строки, она важнее всех
остальных.
Утилита Dsadd
Утилита Dsadd добавляет в AD наиболее общие типы объектов:
пользователей, компьютеры, группы (безопасности и маршрутизации),
организационные единицы и даже контакты. Можно указывать многие общие
атрибуты для добавления объектов, но эта команда не поддерживает все
возможные объекты.
Чтобы добавить организационную единицу в BigTex.net, нужно ввести весь
следующий текст в одной строке:
dsadd ou OU=roughnecks,
DC=bigtex,DC=net
-desc «Oilfield Roughnecks»
Чтобы добавить группу в новую организационную единицу, следует ввести:
dsadd group CN=goodolboys,
OU=roughnecks,DC=bigtex,
DC=net -secgrp yes
В процессе создания группы в нее с помощью ключа -members можно
добавлять пользователей, одновременно делая их членами других групп с помощью
ключа -memberof. Для того чтобы добавить в новую группу пользователя по имени
Jim Bob, требуется ввести:
dsadd user «CN=James Robert, CN=Users,DC=bigtex,DC=net»
-samid JIMBOB
-upn jimbob@bigtex.net
-fn James -ln Robert -empid 123456 -pwd n0tsecure!
-mustchpwd yes
-memberof CN=goodolboys,
OU=roughnecks,DC=bigtex,DC=net
поскольку параметру mustchpwd присвоено значение yes, пользователи
должны изменить свои пароли при первой регистрации.
Утилита Dsquery
При помощи двух новых утилит командной строки можно получать
информацию о восьми типах объектов AD Windows 2003: сайтах, подсетях,
серверах, компьютерах, организационных единицах, группах, пользователях и
контактах. Dsquery предназначена для расширенного поиска и поддерживает
использование шаблонов (*) для поиска любых объектов, удовлетворяющих
заданному критерию. Утилита Dsget более специфична. Она служит для просмотра
свойств конкретных объектов в AD.
Синтаксис Dsquery.
dsquery * [{StartNode | forestroot | domainroot}]
[-scope {subtree | onelevel | base}] [-filter LDAPFilter]
[-attr {AttributeList | *}] [-attrsonly] [-l]
Утилита Dsget
С помощью утилиты Dsget можно узнать определенные свойства объектов
AD. Как и во всех других случаях, в этой утилите командной строки, относящейся к
AD, выбор объекта осуществляется по его DN.
dsget user «cn=James Robert,
OU=roughnecks,DC=bigtex,
DC=net» -pwdneverexpires
Утилита Dsmod
Утилита Dsmod изменяет существующие в AD учетные записи пользователей,
группы, организационные единицы и контакты. Например, можно изменить
членство в группе и ее тип. С помощью параметра OU утилиты Dsmod — параметра
менее полезного, чем остальные, — можно лишь изменить описание
организационной единицы. Для того чтобы восстановить пароль пользователя по
имени Jim Bob и заставить его сменить пароль при следующей регистрации, нужно
ввести:
dsmod user «CN=James Robert,
CN=Users,DC=bigtex,DC=net»
-pwd Uf@tfingeredIt
-mustchpwd yes
Ели необходимо заблокировать учетную запись данного пользователя,
следует ввести:
dsmod user «CN=James Robert,
CN=Users,DC=bigtex,DC=net»
-disabled yes
Для того чтобы восстановить учетную запись, нужно ввести:
dsmod computer CN=JimBobsPC,
CN=goodolboys,CN=roughnecks,
DC=bigtex,DC=net -reset
Чтобы изменить тип группы GoodOlBoys с глобального на универсальный,
необходимо ввести:
dsmod group CN=GoodOlBoys,
CN=roughnecks,DC=bigtex,
DC=net -scope u
Утилита Dsmove
Утилита Dsmove перемещает объект в пределах домена. Для перемещения
объектов между доменами понадобится инструмент Movetree из набора Support Tools
на компакт-диске Windows 2003.
Dsmove имеет два ключа: -newname и -newparent. В следующем примере
показано, как использовать ключ -newname для переименования объекта:
dsmove CN=sdeuby,CN=users,
CN=bigtex,CN=com
-newname "CN=Sean Deuby"
Для переименования объекта с ключом -newname нужно указывать только
относительное отличительное имя (relative distinguished name, RDN) объекта, а не
DN целиком. Если требуется переместить объект SDeuby в подразделение
Roughnecks того же домена, следует использовать ключ -newparent, как показано в
следующем примере:
dsmove CN=sdeuby,CN=users,
CN=bigtex,CN=com
-newparent OU=roughnecks,
DC=bigtex,DC=net
В этом случае необходимо точно указать перемещаемому объекту его место
назначения, вводя полное имя DN родительского объекта назначения
(организационная единица Roughnecks в Bigtex.net).
Утилита Dsrm
В отличие от других DS-утилит, Dsrm довольно проста: она удаляет объект
AD, отличительное имя DN которого было указано. Помимо параметров для
альтернативных учетных данных и серверных подключений, общих для всех этих
инструментов, Dsrm имеет только два параметра. Параметр -subtree означает, что
требуется удалить как сам объект, так и все объекты, стоящие ниже его в иерархии.
Если параметр -subtree не используется, Dsrm удаляет только объект.
Переключатель -exclude параметра -subtree сохраняет объект и удаляет все объекты
ниже его в иерархии. Параметр -noprompt отключает запрос на подтверждение
удаления. Например, команда
dsrm OU=roughnecks,DC=bigtex,
DC=net -subtree -exclude
-noprompt
удаляет все объекты в организационной единице Roughnecks, но саму
организационную единицу оставляет без изменения.
51. Серверы БД. СУБД.
База данных (БД) - это поименованная совокупность структурированных
данных, относящихся к определенной предметной области.
Пользователями базы данных могут быть различные прикладные программы,
программные комплексы и специалисты предметной области, выступающие в роли
потребителей или источников данных, называемые конечными пользователями.
В современной технологии баз данных предполагается, что их создание,
поддержка и обеспечение доступа пользователей осуществляются централизованно
с помощью специального программного инструментария — систем управления
базами данных.
Система управления базами данных (СУБД) - это комплекс программных
и языковых средств, необходимых для создания баз данных, их поддержания в
актуальном состоянии и организации в них поиска необходимой информации.
Функции, структура и основные характеристики СУБД
1. К основным функциям СУБД принято относить следующие:
2. управление данными во внешней памяти;
3. управление буферами оперативной памяти;
4. управление транзакциями;
5. журнализация и восстановление БД после сбоев;
6. поддержка языков БД.
Управление данными во внешней памяти включает обеспечение
необходимых структур внешней памяти как для хранения данных, непосредственно
входящих в базу данных, так и для служебных целей, например, для ускорения
доступа к данным.
Управление буферами оперативной памяти. СУБД, как правило, работают с
БД большого объема. По крайней мере, объем базы данных существенно превышает
объем оперативной памяти. Так что, если при обращении к любому элементу
данных будет производиться обмен с внешней памятью, то вся система будет
работать со скоростью устройства внешней памяти. Практически единственным
способом реального увеличения этой скорости является буферизация данных в
оперативной памяти. При этом, даже если операционная система производит
общесистемную буферизацию, этого недостаточно для целей СУБД, которая
располагает большей информацией о полезности буферизации той или иной части
БД. Поэтому в развитых СУБД поддерживается собственный набор буферов
оперативной памяти с собственной дисциплиной их замены.
Управление транзакциями. Транзакция - это последовательность операций
над БД, рассматриваемых СУБД как единое целое. Транзакция либо успешно
выполняется, и СУБД фиксирует произведенные изменения данных во внешней
памяти, либо ни одно из этих изменений никак не отражается на состоянии БД.
Понятие транзакции необходимо для поддержания логической целостности БД,
поэтому поддержание механизма транзакций является обязательным условием как
однопользовательских, так и многопользовательских СУБД.
Журнализация и восстановление БД после сбоя. Одним из основных
требований к СУБД является надежность хранения данных во внешней памяти. Под
надежностью хранения понимается то, что СУБД должна быть в состоянии
восстановить последнее целостное состояние БД после любого аппаратного или
программного сбоя. Обычно рассматриваются два возможных вида аппаратных
сбоев: так называемые мягкие сбои, которые можно трактовать как внезапную
остановку работы компьютера, например, аварийное выключение питания, и
жесткие сбои, характеризуемые потерей информации на носителях внешней памяти.
В любом из описанных случаев для восстановления БД нужно располагать
некоторой избыточной информацией. Наиболее распространенным методом
формирования и поддержания избыточной информации является ведение журнала
изменений БД.
Журнал - это специальная служебная часть БД, недоступная пользователям,
в которую поступают записи обо всех изменениях основной части БД. В виду особой
важности этой информации для восстановления целостности базы данных после
сбоев, важно обеспечить сверхнадежное её хранение. В некоторых СУБД
поддерживаются две копии журнала, располагаемые на разных физических дисках.
В разных СУБД изменения БД фиксируются на разных уровнях: иногда запись в
журнале соответствует некоторой логической операции изменения БД, например,
удаление строки из таблицы реляционной БД, иногда - минимальной внутренней
операции модификации страницы внешней памяти, а иногда одновременно
используются оба подхода. Во всех случаях придерживаются стратегии
упреждающей записи в журнал. То есть, запись об изменении любого объекта БД
должна попасть во внешнюю память журнала раньше, чем измененный объект
попадет во внешнюю память основной части БД. Если в СУБД корректно
соблюдается это условие, то с помощью журнала можно решить все проблемы
восстановления БД после любого сбоя.
При мягком сбое во внешней памяти основной части БД могут находиться
объекты, модифицированные транзакциями, не закончившимися к моменту сбоя, и
могут отсутствовать объекты, модифицированные транзакциями, которые к моменту
сбоя успешно завершились из-за использования буферов оперативной памяти,
содержимое которых в этой ситуации пропадает. При соблюдении стратегии
упреждающей записи, во внешней памяти журнала должна находиться информация,
относящаяся к операциям модификации обоих видов объектов. Целью процесса
восстановления после мягкого сбоя является состояние внешней памяти основной
части БД, которое возникло бы при фиксации во внешней памяти изменений всех
завершившихся транзакций и которое не содержало бы никаких следов
незаконченных транзакций. Для того чтобы этого добиться, сначала производят
откат незавершенных транзакций, а потом повторно воспроизводят те операции
завершенных транзакций, результаты которых не отображены во внешней памяти.
Для восстановления БД после жесткого сбоя используют журнал и архивную
копию БД. Архивная копия является полной копией БД к моменту начала
заполнения журнала. Восстановление БД состоит в том, что, исходя из архивной
копии, по журналу воспроизводится работа всех транзакций, которые закончились к
моменту сбоя.
Поддержка языков БД. Для работы с базами данных используются
специальные языки, в целом называемые языками баз данных. В ранних СУБД
поддерживалось несколько специализированных по своим функциям языков. Чаще
всего выделялись два языка - язык определения схемы БД (SDL - Schema Definition
Language) и язык манипулирования данными (DML - Data Manipulation Language).
SDL служил, главным образом, для определения логической структуры БД, какой
она представляется пользователям. DML содержал набор операторов
манипулирования данными, позволяющих вводить, удалять, модифицировать и
выбирать данные. В современных СУБД, обычно, поддерживается единый
интегрированный язык, содержащий все необходимые средства для работы с БД и
обеспечивающий базовый пользовательский интерфейс. Стандартным языком
наиболее распространенных в настоящее время реляционных СУБД является язык
SQL (Structured Query Language).
Язык SQL содержит специальные средства определения ограничений
целостности БД. Ограничения целостности хранятся в специальных таблицахкаталогах. Обеспечение контроля целостности производится на языковом уровне.
При компиляции операторов модификации БД, компилятор SQL, на основании
имеющихся ограничений целостности, генерирует соответствующий программный
код.
Специальные операторы языка SQL позволяют определять так называемые
представления БД, фактически являющиеся хранимыми запросами. Для
пользователя представление является такой же таблицей, как любая базовая
таблица, хранимая в БД, но с его помощью можно ограничить или расширить
видимость БД для конкретного пользователя. Поддержание представлений
производится также на языковом уровне.
Наконец, авторизация доступа к объектам БД производится на основе
специального набора операторов SQL. Идея состоит в том, что для выполнения
операторов SQL разного вида пользователь должен обладать различными
полномочиями. Пользователь, создавший таблицу БД, обладает полным набором
полномочий для работы с этой таблицей. В число таких полномочий входит право на
передачу всех или части полномочий другим пользователям, включая полномочие
на передачу полномочий. Полномочия пользователей описываются в специальных
таблицах-каталогах, а контроль полномочий поддерживается на языковом уровне.
В типовой структуре современной реляционной СУБД логически можно
выделить ядро СУБД, компилятор языка БД, подсистему поддержки времени
выполнения и набор утилит.
Ядро СУБД отвечает за управление данными во внешней памяти, управление
буферами оперативной памяти, управление транзакциями и журнализацию.
Соответственно, можно выделить такие компоненты ядра как менеджер данных,
менеджер буферов, менеджер транзакций и менеджер журнала. Ядро обладает
собственным интерфейсом, недоступным пользователям, и является основной
резидентной частью СУБД. При использовании архитектуры «клиент-сервер» ядро
является основной составляющей серверной части системы.
52. Понятие Windows Script Host. Создание сценариев в Windows.
Microsoft Windows Script Host (WSH), в русских версиях Windows называемый
Сервером Сценариев, представляет собой языконезависимый сервер (контроллер
обработчиков сценариев) для 32-х разрядных операционных систем Microsoft
Windows. В состав WSH включены обработчики сценариев (scripting engines) языков
Visual Basic Script и JavaScript. Другими поставщиками программного обеспечения
могут быть созданы обработчики сценариев (в виде ActiveX-объектов) для других
языков, таких как Perl, TCL, REXX, и Python. Примером может служить обработчик
сценариев, написанных на языке V7Script, включенный фирмой 1С в состав Webрасширения системы 1С:Предприятие.
Существуют две версии сервера сценариев Windows: wscript.exe,
позволяющая задавать параметры выполнения сценариев в окне свойств, и
cscript.exe, позволяющая задавать параметры выполнения сценариев с помощью
ключей командной строки. Чтобы запустить необходимую версию, введите в
командной строке wscript.exe или cscript.exe.
Сервер Сценариев Windows встроен в Windows 98, Windows Me, Windows
2000, Windows XP, в Internet Information Services (начиная с версии 4.0). Он также
доступен и для Windows 95.
Преимущества, предоставляемые Сервером Сценариев Windows
Сервер Сценариев Windows (WSH) обеспечивает возможность запуска
сценариев на 32-х разрядных платформах Windows.
Создание более мощных сценариев
Ранее единственным встроенным языком сценариев, поддерживаемым
Windows, был язык команд MS-DOS (команды, исполняемые из командной строки и
из BAT-файлов). Хотя этот язык является достаточно быстрым и компактным, он
имеет ограниченные возможности по сравнению с языками Visual Basic Script и
JavaScript. На сегодняшний день Сервер Сценариев Windows позволяет
пользователям использовать преимущества мощных языков сценариев, таких как
Visual Basic Script и JavaScript, язык команд MS-DOS также поддерживается.
Способы выполнения сценариев Windows
Архитектура ActiveX, реализующая выполнение сценариев, позволяет
использовать такие языки как VBScript, JavaScript, и Perl. Microsoft в настоящее
время предоставляет возможность выполнять сценарии на этих языках при помощи
трех видов серверов (контроллеров) на платформе Windows:
1.
Microsoft Internet Explorer;
2.
Internet Information Services (IIS);
3.
Сервер Сценариев Windows (WSH).
Запуск сценариев с помощью сервера сценариев для Windows
Способы запустить сценарий в окне Windows:

Двойным щелчком мышью по файлу или ярлыку в окне "Мой
компьютер", "Поиск" или в окне Проводника Windows;

С использованием команды Windows "Выполнить..." - вызвать
wscript.exe с именем и параметрами сценария (либо сделать то же самое из
командной строки Windows).
Если расширение файла сценария еще не связано с программой wscript.exe,
то появится диалоговое окно "Открыть с помощью", в котором нужно выбрать
программу, с помощью которой нужно открывать этот файл сценария. Программа
wscript будет зарегистрирована как приложение по умолчанию для запуска всех
файлов с данным расширением, если после выбора программы "Cервер сценариев
Windows" (wscript.exe) флажок "Использовать ее для всех файлов такого типа" будет
установлен. Например, если установить этот флажок при запуске программы с
расширением .vbs, то wscript.exe станет приложением по умолчанию для запуска
всех программ с таким расширением.
Обзор архитектуры Сервера Сценариев
Как и Microsoft Internet Explorer, Сервер Сценариев Windows может быть
контроллером для ActiveX обработчиков сценариев. Однако в отличие от Internet
Explorer, Сервер Сценариев Windows не требует много памяти и является идеальным
средством как для интерактивных, так и для обычных сценариев, таких как сценарий
входа и сценарий администрирования.
Сервер Сценариев читает и передает содержимое файла сценария
зарегистрированному ActiveX обработчику сценариев (script engine),
экспортирующему метод IActiveScriptParse::ParseScriptText.
Вместо тега SCRIPT (применяется в HTML) для определения языка сценария
используется расширение имени файла (.vbs для VBScript, .js для JScript). Благодаря
этому разработчик сценария не обязан знать точные программные идентификаторы
(ProgID) различных обработчиков сценариев. Сопоставление расширения имени
файла сценария с ProgID и запуск конкретного обработчика сценариев
осуществляется сервером сценариев Windows.
программировать наVBScript при условии использования программного
интерфейса ADSI (Active Directory Service Interface — интерфейс службы Active
Directory) и системы WSH довольно просто. Одним из недостатков языка VBScript
является то, что он не предназначен для выполнения сложных задач (в тех случаях,
когда решить проблему с его помощью трудно, часто используют язык Perl).
Определение переменных и обработка ошибок
Важной частью любого сценария являются инструкции, предназначенные для
обработки ошибок. Такие инструкции позволяют своевременно выявить возникшую
при выполнении той или иной части сценария ошибку и предпринять соответствующие действия, не прекращая его работы. В этой и следующих
Internet Information Services поддерживает технологию Active Server Pages
лабораторных работах большинство скриптов не содержит кода обработки ошибок,
(ASP), позволяющую запускать сценарии (как правило, на VB Script), на Webпредопределенных переменных или, например, кода, освобождающего занимаемую
серверах. В частности, это используется для автоматической генерации
переменными память. Такие сценарии должны быть короткими и не могут содержать
передаваемых клиенту через Internet или по внутренней сети страниц.
дополнительный код, который бы их сильно загромождал. Поэтому их нельзя
считать надежными и устойчивыми программами, способными корректно работать
Сервер Сценариев Windows (WSH) позволяет выполнять сценарии
при любых обстоятельствах. Это скорее заготовки, которые позволяют быстро
непосредственно в графическом окне Windows или в текстовой консоли, при этом
нет необходимости встраивать тексты сценариев в документ HTML. Сценарии могут выполнить типичную задачу в стандартном окружении и на основе которых при
быть запущены напрямую щелчком мыши на файле сценария в Проводнике Windows желании можно написать собственный, более гибкий и надежный, код.
Обработка ошибок в VBScript выполняется очень просто. Текст сценария налибо из командной строки консоли. WSH не требует много оперативной памяти и
чинается со строки
удобен для выполнения задач, не требующих взаимодействия с пользователем,
таких как написание сценариев входа (logon), для выполнения административных
on error resume next
задач. При запуске сценария с рабочего стола или из командной строки сервер
сценария читает и передает содержимое указанного файла зарегистрированному
Она указывает интерпретатору, что в случае возникновения ошибки выполобработчику сценариев. Для определения языка сценария используется расширение нение сценария нужно продолжать. Если сценарий не содержит такой инструкции,
имени файла (.vbs для VBScript и .js для JScript).
его выполнение прекращается при первой же ошибке. При наличии инструкции On
Internet Explorer позволяет выполнять сценарии (обычно на JavaScript),
содержащиеся в HTML-страницах, на клиентских машинах.
Установка Сервера Сценариев
Для использования WSH на компьютере должен быть установлен Microsoft
Internet Explorer версии не ниже 3.0. Сервер сценариев использует обработчики
сценариев для языков Visual Basic Script и JavaScript, встроенные в Internet Explorer.
Для установки WSH на Windows 95 необходимо загрузить программу установки с
сайта Microsoft.
Error Resume Next далее в сценарии должен располагаться программный код, в
котором осуществляется проверка объекта Err на наличие ошибок. Такой код
должен следовать за любым фрагментом сценария, где выполняются действия,
способные привести к ошибкам.
options explicit
Установление этой директивы означает, что каждая используемая в сценарии
переменная должна быть объявлена, в противном случае при выполнении сценария
будет сгенерировано исключение. Переменные в VBScript объявляются с помощью
ключевого слова Dim. Завершив работу с переменной, следует присвоить ей
Для выполнения сценариев с помощью сервера сценариев для командной
значение Nothing, чтобы вернуть системе связанные с ней ресурсы. Кроме того, эта
строки (cscript.exe) предусмотрен следующий синтаксис:
мера помогает предотвратить случайное повторное использование переменной со
cscript [имя_сценария] [параметры_сервера] [аргументы_сценария] старым значением.
Запуск сценариев из командной строки
Здесь:
имя_сценария — имя файла сценария, включая путь и расширение;
параметры_сервера — ключи командной строки, задающие различные
свойства сервера сценариев Windows. Параметр сервера всегда начинается с двух
косых черт (//);
аргументы_сценария — ключи командной строки, которые передаются в
сценарий. Аргумент сценария всегда начинается с одной косой черты (/).
Примечания:
Все параметры являются необязательными, однако нельзя задать аргументы
сценария, не задав сценарий. При отсутствии аргументов сценария или самого
сценария программа cscript.exe выведет описание синтаксиса команды и
предусмотренные ключи.
Для использования сервера сценариев Windows можно создать файл .wsf,
позволяющий вызвать несколько обработчиков сценариев и выполнить несколько
заданий, в том числе, написанных на разных языках сценариев.
Скачать