Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Ett skyddat serverprogram måste kontrollera en klients åtkomsträttigheter innan klienten får åtkomst till ett skyddat privat objekt. För att göra detta skickar servern en personifieringstoken, en säkerhetsbeskrivning och en uppsättning begärda åtkomsträttigheter till AccessCheck. De åtkomstkontrollposterna (ACL) i säkerhetsbeskrivningens DACL anger de åtkomsträttigheter som tillåts eller nekas till olika förvaltare. Funktionen AccessCheck jämför förvaltaren i varje ACE med de förvaltare som identifieras i personifieringstoken. En beskrivning av algoritmen som används för att bevilja eller neka åtkomst finns i How DACLs Control Access to an Object.
Funktionen AccessCheckAndAuditAlarm utför en liknande åtkomstkontroll. Dessutom genererar den granskningsposter i säkerhetshändelseloggen beroende på SACL i säkerhetsbeskrivningen.
Funktionerna AccessCheckByType och AccessCheckByTypeAndAuditAlarm liknar AccessCheck och AccessCheckAndAuditAlarm förutom att du kan kontrollera åtkomsten till underobjekten för ett objekt, till exempel egenskapsuppsättningar eller egenskaper. Funktionerna AccessCheckByTypeResultList och AccessCheckByTypeResultListAndAuditAlarm liknar också AccessCheck- förutom att de ger åtkomstkontrollresultat för varje underobjekt i en hierarki med objektets egenskaper och egenskapsuppsättningar. Dessa funktioner använder OBJECT_TYPE_LIST struktur för att beskriva hierarkin för objekt som åtkomsten är markerad för. Funktionerna som genererar ett granskningsmeddelande använder AUDIT_EVENT_TYPE uppräkningstyp för att ange om objektet som kontrolleras är ett katalogtjänstobjekt. Mer information om hierarkin för ett objekt och dess underobjekt finns i ACL:er för att styra åtkomst till ett objekts egenskaper.
De begärda åtkomsträttigheterna som skickas till funktionerna AccessCheck och AccessCheckAndAuditAlarm får inte innehålla några allmänna åtkomsträttigheter. Servern kan använda funktionen MapGenericMask för att konvertera alla allmänna åtkomsträttigheter till motsvarande specifika rättigheter och standardrättigheter enligt mappningen som anges i GENERIC_MAPPING-strukturen.
Funktionerna AreAllAccessesGranted och AreAnyAccessesGranted jämför en begärd åtkomstmask med en beviljad åtkomstmask.
Exempelkod som använder funktionen AccessCheck finns i Verifiera klientåtkomst med ACL:er i C++.
Funktionen ConvertToAutoInheritPrivateObjectSecurity skapar och returnerar en säkerhetsbeskrivning i ett format som tillåter automatisk spridning av ärvbara ACL:er. Den här säkerhetsbeskrivningen innehåller alla ACE:er, ärvda och icke-ärvda, i den aktuella säkerhetsbeskrivningen och är i självrelativ format. Funktionen ConvertToAutoInheritPrivateObjectSecurity avgör om ACL:erna ärvs eller inte genom att jämföra alla ACL:er i den aktuella säkerhetsbeskrivningen med alla ACL:er i dess överordnade säkerhetsbeskrivning. Det kanske inte finns någon en-till-en-motsvarighet mellan de två grupperna av ACEs. Ett ACE som tillåter läs-/skrivbehörighet kan till exempel motsvara två ACL:er: ett ACE som tillåter läsbehörighet och ett ACE som tillåter skrivbehörighet. En överordnad säkerhetsbeskrivare får inte anges när den aktuella säkerhetsbeskrivaren är överordnad.