Функция LsaOpenPolicy (ntsecapi.h)

Функция LsaOpenPolicy открывает дескриптор объекта Policy в локальной или удаленной системе.

Необходимо запустить процесс "От имени администратора", чтобы вызов не завершился сбоем с ERROR_ACCESS_DENIED.

Синтаксис

NTSTATUS LsaOpenPolicy(
  [in]      PLSA_UNICODE_STRING    SystemName,
  [in]      PLSA_OBJECT_ATTRIBUTES ObjectAttributes,
  [in]      ACCESS_MASK            DesiredAccess,
  [in, out] PLSA_HANDLE            PolicyHandle
);

Параметры

[in] SystemName

Указатель на структуру LSA_UNICODE_STRING , содержащую имя целевой системы. Имя может иметь форму ComputerName или \\ComputerName. Если этот параметр имеет значение NULL, функция открывает объект Policy в локальной системе.

[in] ObjectAttributes

Указатель на структуру LSA_OBJECT_ATTRIBUTES , указывающую атрибуты соединения. Элементы структуры не используются; инициализируйте их значение NULL или ноль.

[in] DesiredAccess

ACCESS_MASK, указывающий запрашиваемые права доступа. Функция завершается ошибкой, если DACL целевой системы не разрешает вызывающей объекту запрошенный доступ. Чтобы определить необходимые права доступа, см. документацию по функциям LSA, с которыми вы хотите использовать дескриптор политики.

[in, out] PolicyHandle

Указатель на переменную LSA_HANDLE , которая получает дескриптор объекта Policy .

Если этот дескриптор больше не нужен, передайте его в функцию LsaClose , чтобы закрыть его.

Возвращаемое значение

Если функция завершается успешно, функция возвращает STATUS_SUCCESS.

Если функция завершается сбоем, она возвращает код NTSTATUS . Дополнительные сведения см. в разделе Возвращаемые значения функции политики LSA.

Для преобразования кода NTSTATUS в код ошибки Windows можно использовать функцию LsaNtStatusToWinError.

Комментарии

Для администрирования локальной политики безопасности локальной или удаленной системы необходимо вызвать функцию LsaOpenPolicy , чтобы установить сеанс с подсистемой LSA этой системы. LsaOpenPolicy подключается к LSA целевой системы и возвращает дескриптор объекту Policy этой системы. Этот дескриптор можно использовать в последующих вызовах функций LSA для администрирования сведений о локальной политике безопасности целевой системы.

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

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header ntsecapi.h
Библиотека Advapi32.lib
DLL Advapi32.dll

См. также раздел

LSA_HANDLE

LSA_OBJECT_ATTRIBUTES

LSA_UNICODE_STRING

LsaClose

LsaNtStatusToWinError