mirror of https://github.com/UMSKT/xpmgr.git
97 lines
2.1 KiB
Plaintext
97 lines
2.1 KiB
Plaintext
//-----------------------------------------------------------------------------
|
|
// File: dbseci.idl
|
|
//
|
|
// Copyright: Copyright (c) Microsoft Corporation
|
|
//
|
|
// Contents: OLE DB interface definition
|
|
//
|
|
// Comments:
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
|
|
#include "idlmulti.h"
|
|
//
|
|
|
|
#if( OLEDBVER >= 0x0200 )
|
|
REMOTED_INTERFACE(0c733a62-2a1c-11ce-ade5-00aa0044773d)
|
|
#else
|
|
LOCAL_INTERFACE(0c733a62-2a1c-11ce-ade5-00aa0044773d)
|
|
#endif
|
|
|
|
|
|
interface IDBSecurityInfo : IUnknown {
|
|
|
|
typedef DWORD DBTRUSTEEACCTTYPE;
|
|
|
|
enum DBTRUSTEEACCTTYPEENUM {
|
|
DBTRUSTEEACCTTYPE_UNKNOWN,
|
|
DBTRUSTEEACCTTYPE_USER,
|
|
DBTRUSTEEACCTTYPE_GROUP,
|
|
};
|
|
|
|
typedef DWORD DBTRUSTEEIDTYPE;
|
|
|
|
enum DBTRUSTEEIDTYPEENUM {
|
|
DBTRUSTEEIDTYPE_SID,
|
|
DBTRUSTEEIDTYPE_NAME,
|
|
};
|
|
|
|
typedef DWORD DBTRUSTEEMULT;
|
|
|
|
enum DBTRUSTEEMULTENUM {
|
|
DBTRUSTEEMULT_NONE,
|
|
DBTRUSTEEMULT_IMPERSONATE,
|
|
};
|
|
|
|
typedef struct tagDBTRUSTEE {
|
|
struct tagDBTRUSTEE * pMultipleTrustee;
|
|
LPOLESTR pwszName;
|
|
DBTRUSTEEMULT dwMultipleTrusteeOp;
|
|
DBTRUSTEEIDTYPE dwTrusteeIDType;
|
|
DBTRUSTEEACCTTYPE dwTrusteeAcctType;
|
|
} DBTRUSTEE, *PDBTRUSTEE;
|
|
|
|
typedef struct tagDBOBJECTTYPE {
|
|
LPOLESTR pwszObjectTypeName;
|
|
GUID * pguidObjectTypeId;
|
|
} DBOBJECTTYPE;
|
|
|
|
typedef struct tagDBPERMTYPE {
|
|
LPOLESTR pwszPermissionTypeName;
|
|
GUID * pguidPermissionTypeId;
|
|
} DBPERMTYPE;
|
|
|
|
typedef struct tagDBTRUSTEETYPE {
|
|
LPOLESTR pwszTrusteeTypeName;
|
|
GUID * pguidTrusteeTypeId;
|
|
} DBTRUSTEETYPE;
|
|
|
|
typedef struct tagDBACCESSTRIPLE {
|
|
// DBPERMISSION Permission;
|
|
DBPERMTYPE PermissionType;
|
|
DBOBJECTTYPE ObjectType;
|
|
DBTRUSTEETYPE TrusteeType;
|
|
} DBACCESSTRIPLE;
|
|
|
|
HRESULT GetAccessTriples(
|
|
[in, out] ULONG * pcAccessTriplesInfo,
|
|
[out, size_is(,*pcAccessTriplesInfo)] DBACCESSTRIPLE ** prgAccessTripleInfo
|
|
);
|
|
|
|
HRESULT GetAuthenticatedTrusteeIdentity(
|
|
[out] DBTRUSTEE * pTrustee
|
|
);
|
|
|
|
HRESULT GetObjectTypesInfo(
|
|
[in, out] ULONG * pcObjectInfo,
|
|
[out, size_is(,*pcObjectInfo)] DBOBJECTTYPE ** prgObjectInfo
|
|
);
|
|
|
|
HRESULT GetPermTypesInfo(
|
|
[in, out] ULONG * pcPermInfo,
|
|
[out, size_is(,*pcPermInfo)] DBPERMTYPE ** prgPermInfo
|
|
);
|
|
|
|
}
|
|
|