dbseci.idl
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:2k
- //-----------------------------------------------------------------------------
- // 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
- );
- }