RsopAccessCheckByType 函式 (userenv.h)

RSoPAccessCheckByType 函式會決定安全性描述元是否授與 RSOPTOKEN 所識別之用戶端的指定存取許可權集。

語法

USERENVAPI HRESULT RsopAccessCheckByType(
  [in]  PSECURITY_DESCRIPTOR pSecurityDescriptor,
  [in]  PSID                 pPrincipalSelfSid,
  [in]  PRSOPTOKEN           pRsopToken,
  [in]  DWORD                dwDesiredAccessMask,
  [in]  POBJECT_TYPE_LIST    pObjectTypeList,
  [in]  DWORD                ObjectTypeListLength,
  [in]  PGENERIC_MAPPING     pGenericMapping,
  [in]  PPRIVILEGE_SET       pPrivilegeSet,
  [in]  LPDWORD              pdwPrivilegeSetLength,
  [out] LPDWORD              pdwGrantedAccessMask,
  [out] LPBOOL               pbAccessStatus
);

參數

[in] pSecurityDescriptor

檢查物件上存取的 SECURITY_DESCRIPTOR 指標。

[in] pPrincipalSelfSid

SID 的指標。 如果安全性描述元與代表主體 (的對象相關聯,例如,用戶物件) ,這個參數應該是 物件的 SID。 評估存取權時,此 SID 會以邏輯方式取代任何 ACE 中的 SID,其中包含已知PRINCIPAL_SELF SID ( “S-1-5-10”) 。 如需詳細資訊,請參閱 安全性標識碼已知 SID

如果受保護的物件不代表主體,這個參數應該是 NULL

[in] pRsopToken

代表嘗試取得物件存取權之用戶端的有效 RSOPTOKEN 指標。

[in] dwDesiredAccessMask

指定表示要檢查之訪問許可權的存取遮罩。 此遮罩可以包含 一般標準和 特定訪問許可權的組合。 如需詳細資訊,請參閱 訪問許可權和存取遮罩

[in] pObjectTypeList

OBJECT_TYPE_LIST 結構的陣列指標,識別要檢查存取的物件類型階層。 陣列中的每個元素都會指定 GUID ,識別物件類型,以及指出物件類型階層中物件類型層級的值。 數位不應該有兩個具有相同 GUID 的專案。

陣列必須至少有一個專案。 陣列中的第一個項目必須是層級零,並識別物件本身。 陣列只能有一個層級零元素。 第二個元素是子物件,例如層級 1 的屬性集。 遵循每個層級 1 專案是層級 2 到 4 個子物件的次級專案。 因此,陣列中元素的層級可能是 {0、1、2、2、1、2、3}。 如果物件類型清單順序不正確, RSoPAccessCheckByType 會失敗, 而且 GetLastError 會傳回 ERROR_INVALID_PARAMETER

[in] ObjectTypeListLength

指定 pObjectTypeList 陣列中的項目數目。

[in] pGenericMapping

與正在檢查存取的對象相關聯的 GENERIC_MAPPING 結構指標。

[in] pPrivilegeSet

此參數目前未使用。

[in] pdwPrivilegeSetLength

此參數目前未使用。

[out] pdwGrantedAccessMask

接收授與訪問許可權之 存取遮罩 的指標。

如果函式成功, pbAccessStatus 參數會設定為 TRUE,且遮罩會更新為包含授與的標準和特定許可權。 如果 pbAccessStatus 設定為 FALSE,此參數會設定為零。 如果函式失敗,則不會修改遮罩。

[out] pbAccessStatus

接收存取檢查結果的變數指標。

如果函式成功,並授與所要求的訪問許可權集,此參數會設定為 TRUE。 否則,此參數會設定為 FALSE。 如果函式失敗,則不會修改狀態。

傳回值

如果函式成功,傳回值 會S_OK。 否則,函式會傳回平臺 SDK 頭檔 WinError.h 中定義的其中一個 COM 錯誤碼。

備註

RSoPAccessCheckByType 函式會比較指定的安全性描述元與指定的 RSOPTOKEN,並在 pbAccessStatus 參數中指出是否授與或拒絕存取。

規格需求

需求
最低支援的用戶端 Windows Vista
最低支援的伺服器 Windows Server 2008
目標平台 Windows
標頭 userenv.h
程式庫 Userenv.lib
Dll Userenv.dll

另請參閱

群組原則 函式

群組原則概觀

RSoPFileAccessCheck