ConvertStringSecurityDescriptorToSecurityDescriptorA 函式 (sddl.h)
ConvertStringSecurityDescriptorToSecurityDescriptor 函式會將字串格式的安全性描述元轉換成有效的功能安全性描述元。 此函式會擷取 ConvertSecurityDescriptorToStringSecurityDescriptor 函式轉換成字元串格式的安全性描述元。
語法
BOOL ConvertStringSecurityDescriptorToSecurityDescriptorA(
[in] LPCSTR StringSecurityDescriptor,
[in] DWORD StringSDRevision,
[out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
[out] PULONG SecurityDescriptorSize
);
參數
[in] StringSecurityDescriptor
Null 終止字串的指標,其中包含要轉換的 字串格式安全性描述元 。
[in] StringSDRevision
指定 StringSecurityDescriptor 字串的修訂層級。 目前此值必須是SDDL_REVISION_1。
[out] SecurityDescriptor
接收已轉換之安全性描述元指標之變數的指標。 傳回的安全性描述項是 自我相對的。 若要釋放傳回的緩衝區,請呼叫 LocalFree 函式。 若要將安全性描述元轉換為 絕對安全性描述元,請使用 MakeAbsoluteSD 函式。
[out] SecurityDescriptorSize
接收已轉換安全性描述元之大小之變數的指標,以位元組為單位。 此參數可以是 NULL。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。 GetLastError 可能會傳回下列其中一個錯誤碼。
傳回碼 | Description |
---|---|
|
參數無效。 |
|
SDDL 修訂層級無效。 |
|
在帳戶查閱作業中找不到輸入安全性描述元字串中 (SID) 的安全性識別碼 。 |
備註
如果 ace_type ACCESS_ALLOWED_OBJECT_ACE_TYPE ,而且object_guid 或 inherit_object_guid 都未指定 GUID ,則 ConvertStringSecurityDescriptorToSecurityDescriptor 會將 ace_type 轉換為ACCESS_ALLOWED_ACE_TYPE。 如需 ace_type、 object_guid和 inherit_object_guid 欄位的相關信息,請參閱 Ace 字串。
注意
sddl.h 標頭會根據 UNICODE 預處理器常數的定義,將 ConvertStringSecurityDescriptorToSecurityDescriptor 定義為別名,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | sddl.h |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |