DSC-ресурсы и их свойства

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

Читать далее

Visual Studio Code Snippets

Visual Studio Code, как и многие другие редакторы кода поддерживает сниппеты — snippets. Сниппеты — это шаблоны, или, другими словами, заготовки кода, которые вы можете использовать при написании скриптов или функций.

Visual Studio Code содержит достаточное количество встроенных сниппетов, от «#endregion» до «workflow sequence». Увидеть их все можно нажав сочетание клавиш Ctrl+Space.

Однако, чтобы вам при этом не пришлось пробираться сквозь имена командлетов и их параметров, лучше это сделать, расположив курсов на отдельной строке.

Несмотря на все многообразие уже определенных сниппетов, мы всегда можем расширить их набор своими собственными заготовками. В Visual Studio Code это делается отдельно для каждого языка. Мы будем создавать сниппеты для PowerShell.

Читать далее

Visual Studio Code regions

В версии 1.17.0 Visual Studio Code появилась поддержка регионов.

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

Как это работает.

Читать далее

Primary Group в Active Directory

Когда мы хотим получить информацию о членстве в группах определенного пользователя или компьютера, мы можем воспользоваться командлетами Get-ADPrincipalGroupMembership или Get-ADAccountAuthorizationGroup.

Первый из них выведет информацию обо всех группах, в которые объект входит непосредственно.

Результат выполнения второго командлета будет содержать все группы, в которые объект входит как явно, так и через другие группы. Кроме того, этот командлет выведет информацию обо всех системных группах, SID которых будет присутствовать в токене безопасности пользователя, например Authenticated Users.

Альтернативой использованию вышеупомянутых командлетов будет запрос значений backlink-атрибута MemberOf или атрибута типа constructed msds-MemberOfTransitive.

Читать далее

Вложенные группы Active Directory и PowerShell

Группы Active Directory используются для множества разных целей, будь то фильтрация групповой политики или назначение определенных привилегий пользователям. Достаточно гибкая структура позволяет разграничивать объекты пользователей и компьютеров наиболее удобным для нас образом.

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

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

Читать далее

Изменение значений атрибутов Active Directory, представленных битовыми масками

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

В атрибутах такого типа каждый бит является отдельным флагом и имеет свое собственное значение. Примерами таких атрибутов являются UserAccountControl для объектов пользователей и компьютеров и GroupType для объектов групп.

В качестве примера давайте опять же обратимся к второму флагу — ADS_UF_ACCOUNTDISABLE — атрибута UserAccountControl, указывающему, является ли учетная запись пользователя или компьютера активной — значение 0, или же она деактивирована — значение 1.

Читать далее

-band, -bor и их LDAP-аналоги

Как мы знаем, многие атрибуты объектов Active Directory представлены в виде битовых масок. Например, такие как UserAccountControl для объектов пользователя или компьютера или GroupType для объекта группы.

И хотя командлеты модуля ActiveDirectory представляют эти значения в виде отдельных атрибутов, скрывая от пользователя их истинную природу, иногда нам все-таки приходится работать с ними напрямую.

Читать далее

Использование методов ConvertToDateTime и ConvertFromDateTime объектов WMI

В продолжение предыдущей темы о конвертации значений даты и времени, в этот раз поговорим об объектах WMI.

Для получения экземпляров объектов WMI нам доступны несколько способов. Один из них — это использование командлетов модуля CIMCmdlets. Например, так:

Читать далее

Получение значения атрибута pwdLastSet объекта пользователя при запросе к Active Directory с использованием LDAP

Скажем сразу — все, что здесь описано касается также и остальных атрибутов, содержащих значение даты и времени. Тем не менее в этой статье мы будем говорить об атрибуте pwdLastSet, а применить описанные подходы к другим атрибутам вы сможете и сами.

Когда для запросов к Active Directory мы используем командлеты одноименного модуля, то результаты их выполнения не требуют от нас каких-либо дополнительынх действий. Однако, если по каким-то причинам решили использовать LDAP, здесь все немного сложнее.

Читать далее