Ruby/Справочник/Windows::Security

Материал из Викиучебника — открытых книг для открытого мира
Перейти к навигации Перейти к поиску

Класс Windows::Security[править]

(нет описания...)


Константы

ACL_REVISION, ACL_REVISION2, ACL_REVISION3, ACL_REVISION4, ALLOW_ACE_LENGTH, AddAce, CopySid, DACL_SECURITY_INFORMATION, GENERIC_RIGHTS_CHK, GENERIC_RIGHTS_MASK, GetAce, GetFileSecurity, GetLengthSid, GetSecurityDescriptorControl, GetSecurityDescriptorDacl, InitializeAcl, InitializeSecurityDescriptor, LookupAccountName, LookupAccountSid, REST_RIGHTS_MASK, SECURITY_DESCRIPTOR_MIN_LENGTH, SECURITY_DESCRIPTOR_REVISION, SE_DACL_PRESENT, SetFileSecurity, SetSecurityDescriptorDacl

Методы объекта

AddAce, CopySid, GetAce, GetFileSecurity, GetLengthSid, GetSecurityDescriptorControl, GetSecurityDescriptorDacl, InitializeAcl, InitializeSecurityDescriptor, LookupAccountName, LookupAccountSid, SetFileSecurity, SetSecurityDescriptorDacl

Windows::Security#AddAce[править]


 AddAce(acl, rev, index, list, length)

(нет описания...)

Windows::Security#CopySid[править]


 CopySid(sid_length, sid_buf, sid_source)

(нет описания...)

Windows::Security#GetAce[править]


 GetAce(acl, index, ace)

(нет описания...)

Windows::Security#GetFileSecurity[править]


 GetFileSecurity(file, info, descriptor, length, nlength)

(нет описания...)

Windows::Security#GetLengthSid[править]


 GetLengthSid(sid)

(нет описания...)

Windows::Security#GetSecurityDescriptorControl[править]


 GetSecurityDescriptorControl(descriptor, control, revision)

(нет описания...)

Windows::Security#GetSecurityDescriptorDacl[править]


 GetSecurityDescriptorDacl(descriptor, dacl_present, dacl, default)

(нет описания...)

Windows::Security#InitializeAcl[править]


 InitializeAcl(acl, length, revision = ACL_REVISION)

(нет описания...)

Windows::Security#InitializeSecurityDescriptor[править]


 InitializeSecurityDescriptor(descriptor, revision = SECURITY_DESCRIPTOR_REVISION)

(нет описания...)

Windows::Security#LookupAccountName[править]


 LookupAccountName(sys, name, sid, sid_size, domain, domain_size, use)

(нет описания...)

Windows::Security#LookupAccountSid[править]


Данная функция получает имя пользователя (группы) по заданному SID, а так же тип SID.
Синтаксис ф-ции по MSDN:

 BOOL WINAPI LookupAccountSid(
  __in_opt   LPCTSTR lpSystemName,
  __in       PSID lpSid,
  __out_opt  LPTSTR lpName,
  __inout    LPDWORD cchName,
  __out_opt  LPTSTR lpReferencedDomainName,
  __inout    LPDWORD cchReferencedDomainName,
  __out      PSID_NAME_USE peUse
 );


lpSystemName — указатель на строку, содержащую имя сервера либо NULL для локального компьютера.
lpSid — указатель на область памяти, где храниться структура SID.
lpName — указатель на буфер, гле будет хранится имя учетной записи, которая сопоставлена этому SID.
cchName — размер буфера lpName.
lpReferencedDomainName — указатель на буфер, где будет храниться имя домена, где была найдена учетная запись.
cchReferencedDomainName — размер буфера lpReferencedDomainName.
peUse (тип DWORD) — в нее после выполнения функции помещается тип SID.

 Возможные значения peUse: 
SidTypeUser = 1; // SID пользователя SidTypeGroup = 2; // группы SidTypeDomain = 3; // домена SidTypeAlias = 4; // встроенной группы SidTypeWellKnownGroup = 5; // стандартной группы SidTypeDeletedAccount = 6; // удаленной записи SidTypeInvalid = 7; // неверный SID SidTypeUnknown = 8; // неизвестный SID SidTypeComputer = 9; // SID компьютера SidTypeLabel = 10; // Обязательный SID ярлыка целостности

Если функция успешно выполнена — то она вернет ненулевое значение.
Если размер буфера выбран неверно, то функция GetLastError вернет код ошибки ERROR_INSUFFICIENT_BUFFER, а в cchName и cchReferencedDomainName будут находится необходимые размеры буферов.

Windows::Security#SetFileSecurity[править]


 SetFileSecurity(file, info, descriptor)

(нет описания...)

Windows::Security#SetSecurityDescriptorDacl[править]


 SetSecurityDescriptorDacl(descriptor, present, dacl, default)

(нет описания...)