Sdílet prostřednictvím


Kontexty zabezpečení a služba Active Directory Domain Services

Když aplikace vytvoří vazbu na řadič domény služby Active Directory, provede to v kontextu zabezpečení objektu zabezpečení, což může být uživatel nebo entita, jako je počítač nebo systémová služba. Kontext zabezpečení je uživatelský účet, který systém používá k vynucení zabezpečení, když se vlákno pokusí získat přístup k zabezpečitelnému objektu. Tato data zahrnují identifikátor zabezpečení uživatele (SID), členství ve skupinách a oprávnění.

Uživatel vytvoří kontext zabezpečení tím, že předloží přihlašovací údaje pro ověřování. Pokud jsou přihlašovací údaje ověřeny, vytvoří systém přístupový token, který identifikuje členství ve skupině a oprávnění přidružená k uživatelskému účtu. Systém ověří váš přístupový token při pokusu o přístup k objektu adresáře. Porovná data ve vašem přístupovém tokenu s účty a skupinami udělenými nebo odepřeným přístupem popisovačem zabezpečení objektu.

Pomocí následujících metod můžete řídit kontext zabezpečení, se kterým se svážete se službou Active Directory DC:

  • Vytvořte vazbu pomocí možnosti ADS_SECURE_AUTHENTICATION pomocí funkce ADsOpenObject nebo IADsOpenDSObject::OpenDSObject metoda a explicitně zadejte uživatelské jméno a heslo. Systém ověří tyto přihlašovací údaje a vygeneruje přístupový token, který používá k ověření přístupu po dobu trvání této vazby. Další informace naleznete v tématu ověřování.
  • Vytvořte vazbu pomocí možnosti ADS_SECURE_AUTHENTICATION, ale bez zadání přihlašovacích údajů. Pokud uživatele nezosobníte, systém používá primární kontext zabezpečení aplikace, tj. kontext zabezpečení uživatele, který aplikaci spustil. V případě systémové služby se jedná o kontext zabezpečení účtu služby nebo účtu LocalSystem.
  • Zosobnit uživatele a pak svázat s ADS_SECURE_AUTHENTICATION, ale bez zadání přihlašovacích údajů. V tomto případě systém používá kontext zabezpečení klienta, který je zosobněný. Další informace naleznete v tématu zosobnění klienta.
  • Vytvořte vazbu pomocí ADsOpenObject nebo IADsOpenDSObject::OpenDSObject s možností ADS_NO_AUTHENTICATION. Tato metoda vytvoří vazbu bez ověřování a jako kontext zabezpečení se zobrazí "Everyone". Tuto možnost podporuje pouze poskytovatel LDAP.

Pokud je to možné, vytvořte vazbu bez zadání přihlašovacích údajů. To znamená, že použijte kontext zabezpečení přihlášeného uživatele nebo zosobněného klienta. To vám umožní vyhnout se ukládání přihlašovacích údajů do mezipaměti. Pokud musíte použít alternativní přihlašovací údaje uživatele, zobrazit výzvu k zadání přihlašovacích údajů, svázat s nimi, ale neukázat je do mezipaměti. Pokud chcete použít stejný kontext zabezpečení v několika operacích svázání, můžete zadat uživatelské jméno a heslo pro první operaci vytvoření vazby a pak zadat pouze uživatelské jméno, které provede následné vazby. Další informace o použití této techniky naleznete v tématu Ověřování.

Některé kontexty zabezpečení jsou výkonnější než jiné. Například účet LocalSystem na řadiči domény má úplný přístup ke službě Active Directory Domain Services, zatímco typický uživatel má pouze omezený přístup k některým objektům v adresáři. Obecně platí, že aplikace by neměla běžet v výkonném kontextu zabezpečení, jako je LocalSystem, pokud pro provádění operací stačí méně výkonný kontext zabezpečení. To znamená, že aplikaci můžete chtít rozdělit do samostatných komponent, z nichž každá běží v kontextu zabezpečení odpovídajících operacím, které se mají provést. Nastavení aplikace můžete například rozdělit takto:

  • Proveďte změny schématu a rozšíření v kontextu uživatele, který je členem skupiny Správci schématu.
  • Proveďte změny kontejneru konfigurace v kontextu uživatele, který je členem skupiny Enterprise Administrators.
  • Proveďte změny kontejneru domény v kontextu uživatele, který je členem skupiny Domain Administrators.