CreateWellKnownSid

CreateWellKnownSid是一個函式,功能是創建一個SID(安全描述符)。

基本介紹

  • 中文名:CreateWellKnownSid
  • 屬性:一個函式
  • 功能:創建一個SID(安全描述符)
  • 類型:SID類型
函式原型,返回值,舉例,

函式原型

BOOL WINAPI CreateWellKnownSid( __in WELL_KNOWN_SID_TYPE WellKnownSidType, __in_opt PSID DomainSid, __out_opt PSID pSid, __inout DWORD *cbSid);
參數:
WellKnownSidType SID類型,WELL_KNOWN_SID_TYPE是枚舉類型,它包含一系列的安全描述符類型
DomainSid 指向創建了SID的域的指針,為NULL時表示使用本地計算機
pSid 指向存儲SID的地址
cbSid 指向存儲pSid的大小的地址

返回值

函式成功執行,返回非0的值;
執行失敗,返回值為0。想進一步了解錯誤信息,執行GetLastError.

舉例

DWORD SidSize;
PSID TheSID;
LPTSTR p;
SidSize = SECURITY_MAX_SID_SIZE; // 申請大足夠的記憶體
if(!(TheSID = LocalAlloc(LMEM_FIXED, SidSize))){
fprintf(stderr, "Could not allocate memory.\n");
exit(1);
} //為計算機上的每一個組創建一個安全描述符
if(!CreateWellKnownSid(WinWorldSid, NULL, TheSID, &SidSize)){
fprintf(stderr, "CreateWellKnownSid Error %u", GetLastError());
}
else{ // 獲得安全描述符版本號 (S-1-1-0).
if(!(ConvertSidToStringSid(TheSID, &p))) {
fprintf(stderr, "Error during ConvertSidToStringSid.\n");
exit(1);
} // 當需要的時候使用安全描述符字元串
// ...
// 完成工作,釋放記憶體
LocalFree(p);
LocalFree(TheSID);
}

相關詞條

熱門詞條

聯絡我們