ASP.NET alkalmazások konfigurálása delegáláshoz

A cikk fordítása A cikk fordítása
Cikk azonosítója: 810572 - A cikkben érintett termékek listájának megtekintése.
Az összes kibontása | Az összes összecsukása

A lap tartalma

Összefoglaló

Ez a cikk lépésenként ismerteti az Internet Information Services (IIS) és az Active Directory alkamazásokon, az ASP.NET alkalmazások delegálásához elvégzendő beállításokat. A delegálás, mint a megszemélyesítés egy fejlettebb formája, módot ad távoli erőforrások elérésére is az ügyfelek nevében, így nem csak helyi erőforrásokhoz férhet hozzá. Ez a cikk leírja az ASP.NET rendszerhez kapcsolódó alkalmazások delegálásához szükséges lépéseket.


A delegálás követelményei

A delegálás az integrált Windows-hitelesítést használja az erőforrások eléréséhez. Fiókját tetszőleges számú számítógéphez delegálhatja, csupán mindegyiket megfelelően kell konfigurálnia. Az integrált Windows-hitelesítés csak az alábbi két feltétel teljesülése esetén működik:
  • A hálózat az Active Directory-t igénylő Kerberos hitelesítési protokoll használatára van beállítva
  • A hálózat számítógépei és a fiókok delegálásra megbízhatóként vannak beállítva.
Ha a feltételek nem teljesülnek, az integrált Windows-hitelesítés használatával nem érhetők el a távoli erőforrásokon lévő adatok, mivel az integrált Windows-hitelesítés csak az IIS-kiszolgálóhoz engedélyez hozzáférést, az IIS-kiszolgáló által távolról elért, Windows-hitelesítés használatára konfigurált további erőforrásokhoz nem.

A Kerberos-hitelesítés a kiszolgálót és az ügyfelet is hitelesíti, míg a Windows NT kérdés-válasz (NTLM) hitelesítési módszere csak az ügyfelet. A Windows 2000 rendszernél korábbi operációs rendszerek nem támogatják a Kerberos-hitelesítést. A Kerberos használatához emellett az IIS 5.0-s vagy újabb verziója szükséges. Ezek következtében Windows 2000 vagy annál újabb operációs rendszert kell futtatnia minden olyan számítógépen, melyen használni kívánja a Kerberos alapú delegálást. Ezeknek a számítógépeknek továbbá ugyanahhoz az Active Directory erdőhöz kell tartozniuk. A Kerberos protokollt csak a Microsoft Internet Explorer 5.0-s és újabb verziói támogatják. A Microsoft Tudásbázis kapcsolódó cikke:
217098 A Windows 2000 Kerberos felhasználóhitelesítési protokolljának gyors áttekintése (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)


Az Internet Explorer konfigurálása a delegáláshoz

Internet Explorer 5.0 vagy újabb verzió használata esetén az Internet Explorer a következőképp állítható be az ASP.NET és az IIS közötti delegáláshoz. Ehhez hajtsa végre a következő lépéseket:
  1. Indítsa el az Internet Explorer böngészőt. Kattintson a menüsáv Eszközök menüjére, majd annak Internetbeállítások parancsára.
  2. Kattintson a Speciális fülre, és kattintással jelölje be Az integrált Windows-hitelesítés engedélyezése (újraindítást igényel) jelölőnégyzetet.

    Ez a beállítás lehetővé teszi, hogy az Internet Explorer válaszoljon az egyeztetési kérésekre, majd Kerberos-hitelesítést hajtson végre. Mivel a szolgáltatáshoz Windows 2000 vagy újabb operációs rendszer szükséges, ha az Internet Explorer nem e rendszerek valamelyikén fut, nem fog válaszolni az egyeztetési kérésre. Az Internet Explorer alapértelmezés szerint az NTLM-hitelesítést használja, Az integrált Windows-hitelesítés engedélyezése (újraindítást igényel) jelölőnégyzet bejelölésétől függetlenül.

    Figyelmeztetés: A Rendszerleíróadatbázis-szerkesztővel vagy más eszközzel helytelenül módosított rendszerleíró adatbázis komoly problémákat okozhat, amelyek akár az operációs rendszer újratelepítését is szükségessé tehetik. A Microsoft nem garantálja az ilyen jellegű problémák megoldhatóságát, ezért a rendszerleíró adatbázist csak saját felelősségére módosíthatja.

  3. Megjegyzés: A Microsoft Windows 2000 vagy újabb verziójú rendszert futtató számítógépeken a rendszergazdák a rendszerleíró-adatbázis
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
    kulcsában található REG_DWORD típusú EnableNegotiate bejegyzés 1 értékre történő beállításával engedélyezhetik az integrált Windows-hitelesítést.
  4. Bizonyos esetekben a Kerberos-hitelesítés sikertelen az Internet Explorer ügyfeleken. További információt a Kerberos-hitelesítéssel kapcsolatos kérdésekről a Microsoft Tudásbázis következő cikkeiben talál a cikkek számára kattintva:
    321728 Az Internet Explorer proxykiszolgálókkal nem támogatja a Kerberos-hitelesítést (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    325608 A Kerberos-hitelesítésen keresztüli hitelesítés-delegálás terheléselosztott architektúrákban nem működik (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    248350 Az IIS 4.0 rendszerről az IIS 5.0 rendszerre való frissítést követően sikertelen a Kerberos-hitelesítés (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    264921 Hogyan hitelesíti az IIS a böngészőügyfeleket (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)

Az IIS konfigurálása a delegáláshoz

Az ASP.NET technológiát használó alkalmazások esetén az integrált Windows-hitelesítés, valamint a megszemélyesítés bekapcsolásához az Internet Information Services (IIS) konfigurálása szükséges. Az IIS Windows-hitelesítés használatára való konfigurálása az alábbi lépésekkel tehető meg:
  1. Kattintson a Start menü Futtatás parancsára, írja be az inetmgr parancsot, majd kattintson az OK gombra.
  2. Bontsa ki a helyi számítógép, ezt követően a Webhelyek ágat.
  3. Kattintson jobb gombbal az Alapértelmezett webhely elemre, és kattintson a Tulajdonságok parancsra.
  4. Kattintson a Könyvtárbiztonság lap Névtelen és hitelesített hozzáférés beállításai csoportjának Szerkesztés gombjára.
  5. Kattintással jelölje be a Beépített Windows hitelesítés jelölőnégyzetet, és törölje a jelet a Névtelen hozzáférés, a Windows tartománykiszolgálók kivonatoló hitelesítése és az Alapfokú hitelesítés jelölőnégyzetekből.

    Megjegyzés: Ha a névtelen hozzáférés engedélyezve van, az IIS még akkor is így próbálkozik először a hitelesítéssel, ha más módszerek is engedélyezve vannak.

    Ha a névtelen hozzáférés, az integrált Windows-hitelesítés és az alapfokú hitelesítési mód is engedélyezve van, a hitelesítési módszerek precedenciája a következő: az integrált Windows-hitelesítés az első, azt követi az alapfokú hitelesítés, azt pedig a névtelen hozzáférés.

Az ASP.NET konfigurálása a delegáláshoz

  1. Nyissa meg a Web.config fájlt egy szövegszerkesztő programban; ilyen például a Jegyzettömb. A Web.config fájl a webalkalmazás könyvtárában található.
  2. Keresse meg a Web.config fájl <configuration> szakaszában a következő részletet:
    <allow users="*" /> 
    <deny users="?" />
  3. A <System.web> szakaszban a következőképp ellenőrizze, hogy a hitelesítési elem értéke Windows:
    <authentication mode="Windows" />
  4. A megszemélyesítéshez a következő elemet adja hozzá a <System.web> szakaszhoz:
    <identity impersonate="true"/>
  5. A Microsoft Tudásbázis kapcsolódó cikkei:
    306158 A megszemélyesítés implementálása ASP.NET alkalmazásokban (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    317012 Folyamat- és kérelemidentitás az ASP.NET nyelvben (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    315736 ASP.NET alkalmazások biztonságossá tétele a Windows rendszerbiztonság használatával (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)

Az Active Directory konfigurálása delegáláshoz

A delegálásnak minden delegáltként való működést lehetővé tevő hitelesítő adatokkal rendelkező számítógépen engedélyezve kell lennie. Ezt az Active Directory eszközeinek használatával lehet elvégezni.

További információkat talál a Microsoft alábbi weblapjain:
A delegálási megbízhatóság beállításáról:
http://technet2.microsoft.com/windowsserver/en/library/b207ee9c-a055-43f7-b9be-20599b694a311033.mspx
A felhasználói és számítógépfiókokról:
http://technet2.microsoft.com/windowsserver/en/library/91a98c38-38c5-49dc-83bf-e69d8e1dbbfa1033.mspx
Az IIS folyamat magja, az InetInfo.exe a LocalSystem fiókon futó szolgáltatás, amely a következő feladatokat végzi:
  • Fogadja az ügyfélkérelmet.
  • Megszemélyesíti a felhasználót.
  • Elvégzi a megfelelő feladatokat.
  • Visszatér a folyamat eredeti identitásához. Ez a LocalSystem.
Ha az InetInfo.exe alkalmazást a LocalSystem fióktól eltérő fiókon futtatja, ellenőrizze, hogy az a fiók viselkedhet-e meghatalmazottként. Ebben az esetben nem kell konfigurálni a számítógépet delegálásra.

Hibaelhárítás

  1. Ha az ASP.NET lap hívására használt URL-címhez tartozó webkiszolgáló neve nem azonos az IIS szolgáltatást futtató számítógép NetBIOS-nevével, az integrált hitelesítés a 401.3 hibakódot eredményezheti, és sikertelen lehet. A probléma megoldásához a SetSPN.exe segédprogrammal regisztráljon egy új egyszerű szolgáltatásnevet a számítógép részére. A Microsoft Tudásbázis kapcsolódó cikke:
    294382 A hitelesítés sikertelen lehet és „401.3” jelű hibát eredményezhet, ha a webhely állomásneve eltér a kiszolgáló NetBIOS-nevétől (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
  2. A Kerberos-hitelesítés terheléselosztott architektúrákban nem működik, és az IIS az NTLM-hitelesítés használatára vált vissza. Mivel az NTLM-hitelesítés delegáláshoz nem használható, a delegálásra igényt tartó alkalmazások és szolgáltatások egyike sem működik. A Microsoft Tudásbázis kapcsolódó cikke:
    325608 A Kerberos-hitelesítésen keresztüli hitelesítés-delegálás terheléselosztott architektúrákban nem működik (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
  3. A Kerberos helyes működéséhez a kommunikáció során végig teljesen minősített tartományneveket (FQDN) kell használni.
  4. Windows 2000 rendszerű ügyfélen Internet Explorer böngészővel megnyitva egy olyan webhelyet, melynek állomás-fejlécbeli neve nem azonos a számítógép NetBIOS-nevével, az integrált hitelesítés a 401.3 jelű hibát eredményezheti, és sikertelen lehet. Fontos megjegyezni, hogy a Windows NT 4, Windows 98 vagy Windows 95 rendszereken futó Internet Explorer ügyfelek esetén a hitelesítés nem sikertelen. A többi hitelesítési módszer működik.
  5. Ha a webkiszolgáló teljesen minősített tartománynevet használ, a webhelyet fel kell venni az Internet Explorer intranethelyeket tartalmazó listájába. Az alábbi lépések végrehajtásával állapíthatja meg, hogy a webkiszolgáló teljesen minősített tartománynevet használ-e:
    1. Indítsa el az Internet Explorer programot.
    2. Az Eszközök menüben kattintson az Internetbeállítások parancsra, majd a Biztonság fülre.
    3. Kattintással jelölje ki a Helyi intranet zónát. Kattintson a Helyek gombra.
    4. Kattintson a Speciális gombra, majd írja be a webhely címét a Webhely hozzáadása a zónához mezőbe. Kattintson a Hozzáadás, ezt követően az OK gombra.
  6. Ha az Internet Explorer ügyfél proxykiszolgáló használatára van beállítva, a Proxy figyelmen kívül hagyása helyi címeknél jelölőnégyzetet be kell jelölni. Az alábbi lépéseket követve állapítható meg, hogy az Internet Explorer proxykiszolgáló használatára van-e beállítva:
    1. Indítsa el az Internet Explorer programot.
    2. Kattintson az Eszközök menü Internetbeállítások parancsára, majd a Kapcsolatok fülre.
    3. Kattintson a LAN-beállítások gombra. Győződjön meg róla, hogy a Proxykiszolgáló csoportban a Proxy figyelmen kívül hagyása helyi címeknél jelölőnégyzet be van jelölve.
  7. Ha az ASP.NET technológiát használó alkalmazásnak SQL Server kiszolgálóhoz is hozzá kell férnie, a TCP/IP protokoll használata szükséges. A named pipe-ok nem támogatják a Kerberos-delegálást, kizárólag NTLM-hitelesítést használnak. Ennek használatához adja hozzá a következő attribútumot a kapcsolódási karakterlánchoz:
    "Network Library =dbmssocn"
    Ha nem adja meg ilyen módon a hálózati könyvtárat, az NTLM az ügyfél-konfigurációs segédprogramban (Cliconfg.exe) található első könyvtárbeállítást veszi figyelembe. Ez az alapértelmezés a Microsoft Data Access Components (MDAC) 2.6-os verziójában named pipe-okról a TCP/IP-re változott.
    A Microsoft Tudásbázis kapcsolódó cikkei:
    315159 Programhiba: Az ASPNET fiók alatt futó munkavégző folyamatban nem működnek a named pipe-ok (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    176377 Az SQL Server elérése az ASP nyelvből az integrált biztonság használatával (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    176379 Az IIS és az SQL Server telepítése két, egymás felé megbízható kapcsolattal rendelkező számítógépen (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
    247931 Az SQL Server rendszerhez való kapcsolódás hitelesítési módjai az Active Server Pages technológia használata esetén (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)

Hivatkozások

A biztonságos web alapú alkalmazások tervezéséről további tudnivalókat talál, és különböző delegálási forgatókönyvekkel ismerkedhet meg a Microsoft Developer Network (MSDN) alábbi webhelyén:
http://msdn2.microsoft.com/en-us/library/aa302415.aspx
A biztonságos web alapú alkalmazások tervezéséről bővebben olvashat a következő kiadványban:
Designing Secure Web-Based Applications
Microsoft Press
Michael Howard, Marc Levy, and Richard Waymire
ISBN 0-7356-0995-0

Tulajdonságok

Cikk azonosítója: 810572 - Utolsó ellenőrzés: 2007. december 4. - Verziószám: 8.4
A cikkben található információ a következő(k)re vonatkozik:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Internet Information Services 6.0
Kulcsszavak: 
kbhowto kbhowtomaster kbwebserver kbwebforms kbconfig kbauthentication kbclient kbdomain KB810572
A Microsoft tudásbázisban szolgáltatott információkat "az adott állapotban", bárminemű szavatosság vagy garancia nélkül biztosítjuk. A Microsoft kizár mindennemű, akár kifejezett, akár vélelmezett szavatosságot vagy garanciát, ideértve a forgalomképességre és az adott célra való alkalmasságra vonatkozó szavatosságot is. A Microsoft Corporation és annak beszállítói semmilyen körülmények között nem felelősek semminemű kárért, így a közvetlen, a közvetett, az üzleti haszon elmaradásából származó vagy speciális károkért, illetve a kár következményeként felmerülő költségek megtérítéséért, még abban az esetben sem, ha a Microsoft Corporationt vagy beszállítóit az ilyen károk bekövetkeztének lehetőségére figyelmeztették. Egyes államok joga nem teszi lehetővé bizonyos károkért a felelősség kizárását vagy korlátozását, ezért a fenti korlátozások az ön esetében esetleg nem alkalmazhatók.

Visszajelzés küldése

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com