Поделиться через


Класс CTokenGroups

Этот класс представляет собой оболочку для TOKEN_GROUPS структуры.

Важно!

Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения Windows.

Синтаксис

class CTokenGroups

Участники

Открытые конструкторы

Имя Описание
CTokenGroups::CTokenGroups Конструктор.
CTokenGroups::~CTokenGroups Деструктор

Открытые методы

Имя Описание
CTokenGroups::Add Добавляет в объект или CSid существующую TOKEN_GROUPS структуру CTokenGroups .
CTokenGroups::D elete CSid Удаляет и связанные с ним атрибуты из CTokenGroups объекта.
CTokenGroups::D eleteAll Удаляет все CSid объекты и связанные с ним атрибуты из CTokenGroups объекта.
CTokenGroups::GetCount Возвращает количество CSid объектов и связанных атрибутов, содержащихся в объекте CTokenGroups .
CTokenGroups::GetLength Возвращает размер CTokenGroups объекта.
CTokenGroups::GetPTOKEN_GROUPS Извлекает указатель на структуру TOKEN_GROUPS .
CTokenGroups::GetSidsAndAttributes Извлекает объекты и атрибуты CSid , принадлежащие объекту CTokenGroups .
CTokenGroups::LookupSid Извлекает атрибуты, связанные с CSid объектом.

Открытые операторы

Имя Описание
CTokenGroups::operator const TOKEN_GROUPS * CTokenGroups Приведение объекта к указателю на структуруTOKEN_GROUPS.
CTokenGroups::operator = Оператор присвоения.

Замечания

Маркер доступа — это объект, описывающий контекст безопасности процесса или потока и выделенный каждому пользователю, вошедшему в систему Windows.

Класс CTokenGroups — это оболочка для структуры TOKEN_GROUPS , содержащая сведения об идентификаторах безопасности группы (SID) в маркере доступа.

Общие сведения о модели управления доступом в Windows см. в контроль доступа в пакете SDK для Windows.

Требования

Заголовок: atlsecurity.h

CTokenGroups::Add

Добавляет в объект или CSid существующую TOKEN_GROUPS структуру CTokenGroups .

void Add(const CSid& rSid, DWORD dwAttributes) throw(... );
void Add(const TOKEN_GROUPS& rTokenGroups) throw(...);

Параметры

Rsid
Объект CSid.

dwAttributes
Атрибуты, которые необходимо связать с CSid объектом.

rTokenGroups
Структура TOKEN_GROUPS .

Замечания

Эти методы добавляют в объект один или несколько CSid объектов и их связанные атрибуты CTokenGroups .

CTokenGroups::CTokenGroups

Конструктор.

CTokenGroups() throw();
CTokenGroups(const CTokenGroups& rhs) throw(... );
CTokenGroups(const TOKEN_GROUPS& rhs) throw(...);

Параметры

rhs
Объект CTokenGroups или структура TOKEN_GROUPS , с помощью которой необходимо создать CTokenGroups объект.

Замечания

Объект CTokenGroups можно создать при необходимости с помощью TOKEN_GROUPS структуры или ранее определенного CTokenGroups объекта.

CTokenGroups::~CTokenGroups

Деструктор

virtual ~CTokenGroups() throw();

Замечания

Деструктор освобождает все выделенные ресурсы.

CTokenGroups::D elete

CSid Удаляет и связанные с ним атрибуты из CTokenGroups объекта.

bool Delete(const CSid& rSid) throw();

Параметры

Rsid
Объект CSid, для которого следует удалить идентификатор безопасности (SID) и атрибуты.

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

Возвращает значение true, если CSid удаляется, значение false в противном случае.

CTokenGroups::D eleteAll

Удаляет все CSid объекты и связанные с ним атрибуты из CTokenGroups объекта.

void DeleteAll() throw();

CTokenGroups::GetCount

Возвращает количество CSid объектов, содержащихся в CTokenGroups.

UINT GetCount() const throw();

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

Возвращает количество объектов CSid и их связанных атрибутов, содержащихся в объекте CTokenGroups .

CTokenGroups::GetLength

Возвращает размер CTokenGroup объекта.

UINT GetLength() const throw();

Замечания

Возвращает общий CTokenGroup размер объекта в байтах.

CTokenGroups::GetPTOKEN_GROUPS

Извлекает указатель на структуру TOKEN_GROUPS .

const TOKEN_GROUPS* GetPTOKEN_GROUPS() const throw(...);

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

Извлекает указатель на структуру TOKEN_GROUPS , принадлежащую объекту маркера CTokenGroups доступа.

CTokenGroups::GetSidsAndAttributes

Извлекает CSid объекты и (необязательно) атрибуты, принадлежащие объекту CTokenGroups .

void GetSidsAndAttributes(
    CSid::CSidArray* pSids,
    CAtlArray<DWORD>* pAttributes = NULL) const throw(...);

Параметры

pSids
Указатель на массив объектов CSid .

pAttributes
Указатель на массив DWORD. Если этот параметр опущен или null, атрибуты не извлекаются.

Замечания

Этот метод перечисляет все CSid объекты, содержащиеся в объекте CTokenGroups , и помещает их и (необязательно) флаги атрибутов в объекты массива.

CTokenGroups::LookupSid

Извлекает атрибуты, связанные с CSid объектом.

bool LookupSid(
    const CSid& rSid,
    DWORD* pdwAttributes = NULL) const throw();

Параметры

Rsid
Объект CSid.

pdwAttributes
Указатель на DWORD, который будет принимать CSid атрибут объекта. Если опущен или null, атрибут не будет извлечен.

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

Возвращает значение true, если CSid найден, значение false в противном случае.

Замечания

Задание pdwAttributes значение NULL позволяет подтвердить существование атрибута CSid без доступа к атрибуту. Обратите внимание, что этот метод не должен использоваться для проверка прав доступа. Вместо этого приложения должны использовать метод CAccessToken::CheckTokenMembership .

CTokenGroups::operator =

Оператор присвоения.

CTokenGroups& operator= (const TOKEN_GROUPS& rhs) throw(...);
CTokenGroups& operator= (const CTokenGroups& rhs) throw(...);

Параметры

rhs
Объект CTokenGroups или структура TOKEN_GROUPS, назначаемая объекту CTokenGroups.

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

Возвращает обновленный CTokenGroups объект.

CTokenGroups::operator const TOKEN_GROUPS *

Приведение значения к указателю на структуру TOKEN_GROUPS .

operator const TOKEN_GROUPS *() const throw(...);

Замечания

Приведение значения к указателю на структуру TOKEN_GROUPS .

См. также

Пример безопасности
Класс CSid
Общие сведения о классе
Глобальные функции безопасности