CPrivateObjectSecurityDesc 클래스
이 클래스는 private 개체 보안 설명자 개체를 나타냅니다.
구문
class CPrivateObjectSecurityDesc : public CSecurityDesc
멤버
공용 생성자
속성 | 설명 |
---|---|
CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc | 생성자입니다. |
CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc | 소멸자입니다. |
공용 메서드
이름 | 설명 |
---|---|
CPrivateObjectSecurityDesc::ConvertToAutoInherit | 이 메서드를 호출하여 보안 설명자와 ACL(액세스 제어 목록)을 상속 가능한 ACE(액세스 제어 항목)의 자동 전파를 지원하는 형식으로 변환합니다. |
CPrivateObjectSecurityDesc::Create | 호출 리소스 관리자에서 만든 개인 개체에 대한 자체 상대 보안 설명자를 할당하고 초기화하려면 이 메서드를 호출합니다. |
CPrivateObjectSecurityDesc::Get | 이 메서드를 호출하여 개인 개체의 보안 설명자에서 정보를 검색합니다. |
CPrivateObjectSecurityDesc::Set | 이 메서드를 호출하여 프라이빗 개체의 보안 설명자를 수정합니다. |
연산자
연산자 | 설명 |
---|---|
연산자 = | 대입 연산자입니다. |
설명
CSecurityDesc에서 파생된 이 클래스는 프라이빗 개체의 보안 설명자를 만들고 관리하는 메서드를 제공합니다.
Windows의 액세스 제어 모델에 대한 소개는 Windows SDK의 Access Control을 참조하세요.
상속 계층 구조
CPrivateObjectSecurityDesc
요구 사항
헤더: atlsecurity.h
CPrivateObjectSecurityDesc::ConvertToAutoInherit
이 메서드를 호출하여 보안 설명자와 ACL(액세스 제어 목록)을 상속 가능한 ACE(액세스 제어 항목)의 자동 전파를 지원하는 형식으로 변환합니다.
bool ConvertToAutoInherit(
const CSecurityDesc* pParent,
GUID* ObjectType,
bool bIsDirectoryObject,
PGENERIC_MAPPING GenericMapping) throw();
매개 변수
pParent
개체의 부모 컨테이너를 참조하는 CSecurityDesc 개체에 대한 포인터입니다. 부모 컨테이너가 없으면 이 매개 변수는 NULL입니다.
ObjectType
GUID
현재 개체와 연결된 개체의 형식을 식별하는 구조체에 대한 포인터입니다. 개체에 GUID가 없는 경우 ObjectType을 NULL로 설정합니다.
bIsDirectoryObject
새 개체에 다른 개체를 포함할 수 있는지 여부를 지정합니다. true 값은 새 개체가 컨테이너임을 나타냅니다. false 값은 새 개체가 컨테이너가 아님을 나타냅니다.
GenericMapping
개체에 대한 각 제네릭 권한에서 특정 권한으로의 매핑을 지정하는 GENERIC_MAPPING 구조체에 대한 포인터입니다.
Return Value
성공하면 true를 반환하고 실패하면 false를 반환합니다.
설명
이 메서드는 현재 보안 설명자의 DACL(임의 액세스 제어 목록) 및 SACL(시스템 액세스 제어 목록)의 ACE가 부모 보안 설명자에서 상속되었는지 여부를 확인하려고 시도합니다. ConvertToAutoInheritPrivateObjectSecurity 함수를 호출합니다.
CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc
생성자입니다.
CPrivateObjectSecurityDesc() throw();
설명
초기화는 CPrivateObjectSecurityDesc
개체입니다.
CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc
소멸자입니다.
~CPrivateObjectSecurityDesc() throw();
설명
소멸자는 할당된 모든 리소스를 해제하고 프라이빗 개체의 보안 설명자를 삭제합니다.
CPrivateObjectSecurityDesc::Create
호출 리소스 관리자에서 만든 개인 개체에 대한 자체 상대 보안 설명자를 할당하고 초기화하려면 이 메서드를 호출합니다.
bool Create(
const CSecurityDesc* pParent,
const CSecurityDesc* pCreator,
bool bIsDirectoryObject,
const CAccessToken& Token,
PGENERIC_MAPPING GenericMapping) throw();
bool Create(
const CSecurityDesc* pParent,
const CSecurityDesc* pCreator,
GUID* ObjectType,
bool bIsContainerObject,
ULONG AutoInheritFlags,
const CAccessToken& Token,
PGENERIC_MAPPING GenericMapping) throw();
매개 변수
pParent
새 개체가 만들어지는 부모 디렉터리를 참조하는 CSecurityDesc 개체에 대한 포인터입니다. 부모 디렉터리가 없는 경우 NULL로 설정합니다.
pCreator
개체 작성자가 제공한 보안 설명자에 대한 포인터입니다. 개체 작성자가 새 개체에 대한 보안 정보를 명시적으로 전달하지 않는 경우 이 매개 변수를 NULL로 설정합니다.
bIsDirectoryObject
새 개체에 다른 개체를 포함할 수 있는지 여부를 지정합니다. true 값은 새 개체가 컨테이너임을 나타냅니다. false 값은 새 개체가 컨테이너가 아님을 나타냅니다.
토큰
개체를 대신하여 생성되는 클라이언트 프로세스에 대한 CAccessToken 개체에 대한 참조입니다.
GenericMapping
개체에 대한 각 제네릭 권한에서 특정 권한으로의 매핑을 지정하는 GENERIC_MAPPING 구조체에 대한 포인터입니다.
ObjectType
GUID
현재 개체와 연결된 개체의 형식을 식별하는 구조체에 대한 포인터입니다. 개체에 GUID가 없는 경우 ObjectType을 NULL로 설정합니다.
bIsContainerObject
새 개체에 다른 개체를 포함할 수 있는지 여부를 지정합니다. true 값은 새 개체가 컨테이너임을 나타냅니다. false 값은 새 개체가 컨테이너가 아님을 나타냅니다.
AutoInheritFlags
액세스 제어 항목(ACE)이 pParent에서 상속되는 방법을 제어하는 비트 플래그 집합입니다. 자세한 내용은 CreatePrivateObjectSecurityEx를 참조하세요.
Return Value
성공하면 true를 반환하고 실패하면 false를 반환합니다.
설명
이 메서드는 CreatePrivateObjectSercurity 또는 CreatePrivateObjectSecurityEx를 호출합니다.
두 번째 메서드는 새 개체의 개체 형식 GUID를 지정하거나 ACE를 상속하는 방법을 제어할 수 있습니다.
참고 항목
자체 상대 보안 설명자는 모든 보안 정보를 연속 메모리 블록에 저장하는 보안 설명자입니다.
CPrivateObjectSecurityDesc::Get
이 메서드를 호출하여 개인 개체의 보안 설명자에서 정보를 검색합니다.
bool Get(
SECURITY_INFORMATION si,
CSecurityDesc* pResult) const throw();
매개 변수
si
검색할 보안 설명자의 부분을 나타내는 비트 플래그 집합입니다. 이 값은 SECURITY_INFORMATION 비트 플래그의 조합일 수 있습니다.
pResult
지정된 보안 설명자에서 요청된 정보의 복사본을 받는 CSecurityDesc 개체에 대한 포인터입니다.
Return Value
성공하면 true를 반환하고 실패하면 false를 반환합니다.
설명
보안 설명자는 보안 개체에 대한 보안 정보를 포함하는 구조 및 관련 데이터입니다.
CPrivateObjectSecurityDesc::operator =
대입 연산자입니다.
CPrivateObjectSecurityDesc& operator= (const CPrivateObjectSecurityDesc& rhs) throw(...);
매개 변수
rhs
CPrivateObjectSecurityDesc
현재 개체에 할당할 개체입니다.
Return Value
업데이트 CPrivateObjectSecurityDesc
된 개체를 반환합니다.
CPrivateObjectSecurityDesc::Set
이 메서드를 호출하여 프라이빗 개체의 보안 설명자를 수정합니다.
bool Set(
SECURITY_INFORMATION si,
const CSecurityDesc& Modification,
PGENERIC_MAPPING GenericMapping,
const CAccessToken& Token) throw();
bool Set(
SECURITY_INFORMATION si,
const CSecurityDesc& Modification,
ULONG AutoInheritFlags,
PGENERIC_MAPPING GenericMapping,
const CAccessToken& Token) throw();
매개 변수
si
설정할 보안 설명자의 부분을 나타내는 비트 플래그 집합입니다. 이 값은 SECURITY_INFORMATION 비트 플래그의 조합일 수 있습니다.
수정
CSecurityDesc 개체에 대한 포인터입니다. si 매개 변수로 표시된 이 보안 설명자의 부분은 개체의 보안 설명자에 적용됩니다.
GenericMapping
개체에 대한 각 제네릭 권한에서 특정 권한으로의 매핑을 지정하는 GENERIC_MAPPING 구조체에 대한 포인터입니다.
토큰
개체를 대신하여 생성되는 클라이언트 프로세스에 대한 CAccessToken 개체에 대한 참조입니다.
AutoInheritFlags
액세스 제어 항목(ACE)이 pParent에서 상속되는 방법을 제어하는 비트 플래그 집합입니다. 자세한 내용은 CreatePrivateObjectSecurityEx를 참조하세요.
Return Value
성공하면 true를 반환하고 실패하면 false를 반환합니다.
설명
두 번째 메서드는 개체의 개체 형식 GUID를 지정하거나 ACE를 상속하는 방법을 제어할 수 있습니다.