Kerberos által korlátozott delegálás (KCD) konfigurálása Azure Active Directory Tartományi szolgáltatásokban
Az alkalmazások futtatása során szükség lehet arra, hogy ezek az alkalmazások egy másik felhasználó környezetében férnek hozzá az erőforrásokhoz. Active Directory Domain Services (AD DS) támogatja a Kerberos-delegálás nevű mechanizmust, amely lehetővé teszi ezt a használatot. A Kerberos által korlátozott delegálás (KCD) ezt követően erre a mechanizmusra építve meghatározott erőforrásokat határoz meg, amelyek a felhasználó kontextusában érhetők el.
Azure Active Directory Tartományi szolgáltatások (Azure AD DS) által felügyelt tartományok biztonságosabban zárolva vannak, mint a hagyományos helyszíni AD DS-környezetek, ezért használjon biztonságosabb, erőforrás-alapú KCD-t.
Ez a cikk bemutatja, hogyan konfigurálhat erőforrás-alapú korlátozott Kerberos-delegálást Azure AD DS felügyelt tartományokban.
Előfeltételek
A cikk befejezéséhez a következő erőforrásokra lesz szüksége:
- Aktív Azure-előfizetés.
- Ha nem rendelkezik Azure-előfizetéssel, hozzon létre egy fiókot.
- Egy Azure Active Directory, amely az előfizetéséhez van társítva, szinkronizálva egy helyszíni címtárval vagy egy csak felhőalapú címtárval.
- Szükség esetén hozzon létre egy Azure Active Directory bérlőt, vagy társítsa az Azure-előfizetést a fiókjához.
- Egy Azure Active Directory tartományi szolgáltatások által felügyelt tartomány engedélyezve és konfigurálva az Azure AD-bérlőben.
- Egy Windows felügyelt tartományhoz Azure AD DS kiszolgálókezelő virtuális gép.
- Ha szükséges, az oktatóanyag befejezéseként hozzon létre egy Windows-kiszolgálói virtuális gépet, és csatlakozzon egy felügyelt tartományhoz, majd telepítse a AD DS felügyeleti eszközöket.
- Egy felhasználói fiók, amely tagja az Azure AD DC rendszergazdák csoportjának az Azure AD-bérlőben.
A Kerberos által korlátozott delegálás áttekintése
A Kerberos-delegálás lehetővé teszi, hogy az egyik fiók megszemélyesített egy másik fiókot az erőforrások eléréséhez. Egy háttér-webes összetevőt elvégző webalkalmazás például megszemélyesülhet egy másik felhasználói fiókként, amikor a háttérkapcsolatot létesíti. A Kerberos-delegálás nem biztonságos, mivel nem korlátozza, hogy a megszemélyesített fiók milyen erőforrásokhoz férhet hozzá.
A Kerberos által korlátozott delegálás (KCD) korlátozza a szolgáltatásokat vagy erőforrásokat, amelyekhez egy adott kiszolgáló vagy alkalmazás kapcsolódhat egy másik identitás megszemélyesítésekor. A hagyományos KCD-nek tartományi rendszergazdai jogosultságokkal kell konfigurálnia egy tartományi fiókot egy szolgáltatáshoz, és korlátozza, hogy a fiók egyetlen tartományon fusson.
A hagyományos KCD-nek is van néhány probléma. A korábbi operációs rendszerekben például a szolgáltatás-rendszergazda nem tudta meg, hogy mely előkiszolgálói szolgáltatások vannak delegálva a tulajdonában lévő erőforrás-szolgáltatásokhoz. Minden olyan előkiszolgáló szolgáltatás, amely delegálható egy erőforrás-szolgáltatásnak, potenciális támadási pont volt. Ha az erőforrás-szolgáltatásoknak való delegálásra konfigurált előkiszolgálót feltörik, az erőforrás-szolgáltatások biztonsága is sérülhet.
Felügyelt tartományokban nem rendelkezik tartományi rendszergazdai jogosultságokkal. Ennek eredményeképpen a hagyományos fiókalapú KCD nem konfigurálható felügyelt tartományban. Ehelyett erőforrás-alapú KCD-t is lehet használni, ami szintén biztonságosabb.
Erőforrás-alapú KCD
Windows Server 2012 és újabb rendszer lehetővé teszi a szolgáltatás-rendszergazdák számára, hogy korlátozott delegálást konfigurálnak a szolgáltatásukhoz. Ezt a modellt erőforrás-alapú KCD-nek nevezik. Ezzel a megközelítéssel a háttérszolgáltatás rendszergazdája engedélyezheti vagy megtagadhatja bizonyos előtere-szolgáltatások KCD-használatát.
Az erőforrás-alapú KCD a PowerShell használatával van konfigurálva. A Set-ADComputer vagy a Set-ADUser parancsmagokat attól függően használhatja, hogy a megszemélyesítő fiók számítógépfiók vagy felhasználói fiók vagy szolgáltatásfiók.
Erőforrás-alapú KCD konfigurálása számítógépfiókhoz
Ebben a forgatókönyvben tegyük fel, hogy van egy webalkalmazása, amely az contoso-webapp.aaddscontoso.com.
A webalkalmazásnak hozzá kell férni egy webes API-hoz, amely a tartományi felhasználók contoso-api.aaddscontoso.com nevű számítógépen fut.
A forgatókönyv konfiguráláshoz kövesse az alábbi lépéseket:
Egyéni szervezeti egység létrehozása. Az egyéni szervezeti egység kezeléséhez szükséges engedélyeket delegálhatja a felügyelt tartomány felhasználóinak.
A felügyelt tartományhoz a virtuális gépeket , a webalkalmazást és a webes API-t is futtató virtuális gépeket is össze kell illesztenünk. Hozza létre ezeket a számítógépfiókokat az előző lépésben létrehozott egyéni szervezeti egységben.
Megjegyzés
A webalkalmazás és a webes API számítógépfiókjának egy egyéni szervezeti egységben kell lennie, ahol rendelkezik erőforrás-alapú KCD konfigurálási engedélyekkel. A számítógépfiókhoz nem konfigurálhat erőforrás-alapú KCD-t a dc computers AAD tárolóban.
Végül konfigurálja az erőforrás-alapú KCD-t a Set-ADComputer PowerShell-parancsmag használatával.
Futtassa a következő parancsmagokat a tartományhoz csatlakozó felügyeleti virtuális gépről, és az Azure AD DC rendszergazdák csoportjának tagja felhasználói fiókként bejelentkezve. Szükség szerint adja meg a saját számítógépnevét:
$ImpersonatingAccount = Get-ADComputer -Identity contoso-webapp.aaddscontoso.com Set-ADComputer contoso-api.aaddscontoso.com -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
Erőforrás-alapú KCD konfigurálása felhasználói fiókhoz
Ebben a forgatókönyvben tegyük fel, hogy rendelkezik egy webalkalmazással, amely az appsvc nevű szolgáltatásfiókként fut. A webalkalmazásnak hozzá kell férni egy web API-hoz, amely egy backendsvc nevű szolgáltatásfiókként fut a tartományi felhasználók kontextusában. A forgatókönyv konfiguráláshoz kövesse az alábbi lépéseket:
Egyéni szervezeti egység létrehozása. Az egyéni szervezeti egység kezeléséhez szükséges engedélyeket delegálhatja a felügyelt tartomány felhasználóinak.
Csatlakozzon tartományhoz a háttéralkalmazás webes API-ját/erőforrását használó virtuális gépeket a felügyelt tartományhoz. Hozza létre a számítógépfiókját az egyéni szervezeti egységben.
Hozza létre a webalkalmazás egyéni szervezeti egységben való futtatásához használt szolgáltatásfiókot (például appsvc).
Megjegyzés
A webes API virtuális gép számítógépfiókjának és a webalkalmazás szolgáltatásfiókjának is egyéni szervezeti egységben kell lennie, ahol rendelkezik erőforrás-alapú KCD konfigurálási engedélyekkel. Nem konfigurálhat erőforrás-alapú KCD-t a beépített tartományvezérlői számítógépeken vagy AAD DC-felhasználók AAD lévő fiókokhoz. Ez azt is jelenti, hogy az Azure AD-ről szinkronizált felhasználói fiókok nem használhatók erőforrás-alapú KCD beállításhoz. Létre kell hoznia és használnia kell a kifejezetten a Azure AD DS.
Végül konfigurálja az erőforrás-alapú KCD-t a Set-ADUser PowerShell-parancsmag használatával.
Futtassa a következő parancsmagokat a tartományhoz csatlakozó felügyeleti virtuális gépről, és az Azure AD DC rendszergazdák csoportjának tagja felhasználói fiókként bejelentkezve. Szükség szerint adja meg a saját szolgáltatásnevét:
$ImpersonatingAccount = Get-ADUser -Identity appsvc Set-ADUser backendsvc -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
Következő lépések
A delegálásnak a korlátozott kerberos-Active Directory Domain Services áttekintésében talál további információt.