Jak používat nástroj ASP.NET šifrování pověření a řetězců připojení stavu relace

Souhrn

Tento podrobný článek popisuje, jak používat nástroj Aspnet_setreg.exe šifrování pověření a řetězců připojení stavu relace. Microsoft ASP.NET version 1.0 vyžaduje uložení pověření ve formátu prostého textu v konfiguračních souborech, pokud chcete provést některou z následujících akcí:
  • Změňte identitu pracovního procesu ASP.NET.
  • Zadejte identitu zosobnění.
  • Zadejte připojovací řetězec pro stav relace.
Po instalaci opravy hotfix, která je popsána v článku znalostní báze Microsoft Knowledge Base 329250 (viz "Odkazy"), můžete použít šifrovaná data, který je uložen v registru namísto ve formátu prostého textu v následujících oddílech konfigurace:
  • < identity userName = password = / >
  • < processModel userName = password = / >
  • < sessionState stateConnectionString = sqlConnectionString = / >

Úvod

Použijte nástroj Aspnet_setreg.exe k zašifrování a uložení hodnot atributů v registru pod bezpečnostním klíčem. Použijte funkci CryptProtectData s příznakem CRYPTPROTECT_LOCAL_MACHINE k šifrování pověření. Vzhledem k tomu, kdo má přístup k počítači, můžete volat CryptUnprotectData, šifrovaná data jsou uloženy pod klíčem registru zabezpečené s silné volitelný seznam řízení přístupu (DACL). Když technologie ASP.NET analyzuje konfigurační soubor, přečte klíč registru zabezpečené a potom použije k dešifrování dat CryptUnprotectData .

Přečte Inetinfo.exe, který je spuštěn s identitou System, < processModel / > oddíl. Čtení klíče registru, které ukládají uživatelské jméno a heslo pro pracovní proces ASP.NET, systémový účet musí mít oprávnění číst k těmto klíčům.

Pracovní proces ASP.NET (Aspnet_wp.exe) čte < identity / > a < sessionState / > oddíly. Číst tyto klíče registru, účet pracovního procesu musí mít oprávnění ke čtení těchto klíčů. Pokud je obsah umístěn na Universal Naming Convention (UNC) sdílet, účet, který slouží pro přístup ke sdílené složce UNC musí mít oprávnění ke čtení těchto klíčů.

Podle výchozího nastavení klíče registru, které vytvoří Aspnet_setreg.exe přidělit oprávnění Úplné řízení k účtům systému, správce a Creator Owner. Můžete upravit DACL klíč registru Regedt32.exe. Ujistěte se, že klíče registru nelze číst pro libovolného uživatele.

Restartování služby IIS

Provedené změny se projeví po restartování Internetová informační služba (IIS). Restartováním služby IIS můžete spustit nový pracovní proces ASP.NET. Chcete-li to provést, klepněte na tlačítko Start, klepněte na tlačítko
Spustit, zadejte příkaz iisreset do
Otevřít a klepněte na tlačítko OK.

Poznámka: Je-li server, který jste překonfigurován řadič domény, bude pravděpodobně nutné restartovat server.

Další informace

Stažení a spuštění Aspnet_setreg.exe

Následující soubor je k dispozici pro stažení z Microsoft Download Center:

Download Stáhněte balíček Aspnet_setreq.exe nyní.
Datum vydání: 11. dubna 2003

Pro více informací o tom, jak stahovat soubory podpory společnosti Microsoft, klepněte na následující číslo článku v databázi Microsoft Knowledge Base:
119591 jak získat soubory podpory společnosti Microsoft ze serverů služeb online
Microsoft zkontroloval tento soubor na přítomnost virů. Společnost Microsoft použila aktuální antivirový software, který byl k dispozici k datu, kdy byl soubor vydán. Soubor je uložen na zabezpečených serverech, které pomáhají zabránit neoprávněným změnám v souboru.


Chcete-li zobrazit všechny dostupné přepínače příkazového řádku a jejich použití, spusťte tento nástroj z příkazového řádku bez jakékoli přepínače příkazového řádku. Pokud jste uložili nástroj C:\Tools\, spusťte následující příkaz z příkazového řádku a po zobrazení všech jeho dostupných přepínačů přepínače nápovědy:
C:\Tools>aspnet_setreg.exe

Použít šifrované atributy v konfiguračním souboru.

Důležité: Tento oddíl, metoda nebo úkol obsahuje kroky, které popisují úpravu registru. Při nesprávné úpravě registru mohou nastat závažné problémy Proto se ujistěte, že budete opatrně postupovat podle těchto kroků Pro zvýšení ochrany před úpravou zálohujte registr. Pokud dojde k potížím, pak můžete registr obnovit ze zálohy. Pro další informace o zálohování a obnovení registru klepněte na následující číslo článku databáze Microsoft Knowledge Base:
322756 postup zálohování a obnovení registru v systému Windows


Poznámka: Tento nástroj vytvoří klíčů registru v podstromu HKEY_LOCAL_MACHINE . Ve výchozím nastavení pouze správci mohou vytvářet klíče v tomto podstromu. Ujistěte se, že jste přihlášeni jako správce Chcete-li úspěšně vytvořit tyto klíče registru.
  1. Zašifrujte uživatelské jméno a heslo atributy pro použití s oddíl < identity > . (Můžete také provedete u oddílů, které jsou zmíněny v tomto článku). Chcete-li to provést, zadejte na příkazovém řádku následující příkaz:
    c:\Tools>aspnet_setreg.exe -k:SOFTWARE\MY_SECURE_APP\identity -u:"yourdomainname\username" -p:"password"
    Tento příkaz šifruje uživatelské jméno a heslo atributy, vytvoří klíčů registru v zadaného umístění a úložiště atributů v těchto klíčích registru. Tento příkaz také generuje výstup, který určuje, jak změnit soubor Web.config nebo Machine.config tak, aby technologie ASP.NET použije tyto klíče ke čtení informací z registru.

    Po spuštění tohoto příkazu obdržíte výstup podobný následujícímu:
    Upravte konfiguraci obsahovat následující:

    userName = "registru: HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG, uživatelské jméno"
    heslo = "Registru: HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG, heslo"

    DACL klíč registru udělí oprávnění Úplné řízení systému, Administrators a Creator Owner.

    Pokud používáte šifrované pověření < identity / > konfigurační oddíl nebo připojení
    řetězce pro < sessionState / > Konfigurace oddílu, ujistěte se, že identita procesu má
    Přístup čtení ke klíči registru. Kromě toho pokud jste nakonfigurovali službu IIS přístup k obsahu na
    Účet použitý pro přístup ke sdílené položce nutné sdílení UNC přístup čtení ke klíči registru.
    Chcete-li zobrazit nebo upravit oprávnění klíče registru může použít Regedt32.exe.

    S cílem zabránit zjišťování může Přejmenujte podklíč registru a hodnoty registru.
  2. Přejděte na tyto klíče registru odpovídající konfigurační soubor upravte. Pokud tyto hodnoty musí být použita v části < identity > , výsledné oddíl < identity > následujícímu.
    <identity impersonate="true"userName="registry:HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG,userName"
    password="registry:HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG,password" />

  3. Čtení udělit oprávnění pro účet procesu Aspnet_wp.exe. Další informace o změně oprávnění pro klíče registru naleznete v tématu "Použití Regedt32.exe udělit oprávnění pro účet ASP.NET na tyto klíče registru" oddílu.

Pomocí Regedt32.exe udělit oprávnění pro účet ASP.NET na tyto klíče registru

Důležité: Tento oddíl, metoda nebo úkol obsahuje kroky, které popisují úpravu registru. Při nesprávné úpravě registru mohou nastat závažné problémy Proto se ujistěte, že budete opatrně postupovat podle těchto kroků Pro zvýšení ochrany před úpravou zálohujte registr. Pokud dojde k potížím, pak můžete registr obnovit ze zálohy. Pro další informace o zálohování a obnovení registru klepněte na následující číslo článku databáze Microsoft Knowledge Base:
322756 postup zálohování a obnovení registru v systému Windows
  1. Klepněte na tlačítko Start, klepněte na příkaz Spustit, do pole Otevřít zadejte příkaz regedt32 a klepněte na tlačítko OK.
  2. Klepněte na podklíč HKEY_LOCAL_MACHINE\SOFTWARE\MY_SECURE_APP\.
  3. V nabídce zabezpečení klepněte na tlačítko
    Oprávnění k otevření dialogového okna oprávnění .

    V systému Microsoft Windows XP nebo Windows Server 2003 klepněte pravým tlačítkem myši na klíč registru a klepněte na tlačítko oprávnění.
  4. Klepněte na tlačítko Přidat. V dialogovém okně, které se otevře, zadejte název_serveru\ASPNET(nebo
    název_serveru\NetWork služby při použití systému Windows Server 2003 (IIS 6.0)) a potom klepněte na tlačítko OK.
  5. Ujistěte se, že účet, který jste právě přidali má oprávnění ke čtení a klepněte na tlačítko OK.
  6. Ukončete Editor registru.

Odkazy

Další informace o opravě hotfix, která umožňuje použít funkce, které jsou popsány v tomto článku klepněte na následující číslo článku databáze Microsoft Knowledge Base:

329250 oprava: silnější pověření pro processModel, identitu a sessionState

Poznámka: Oprava, která je popsána v článku 329250 je pouze k dispozici pro rozhraní.NET Framework 1.0.

Další informace o registru systému Windows klepněte na následující číslo článku databáze Microsoft Knowledge Base:
256986 Popis registru systému Microsoft Windows

Další informace o technologii ASP.NET získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
315158 oprava: technologie ASP.NET nefunguje s výchozím účtem ASPNET v řadiči domény

Poznámka: Oprava, která je popsána v článku 315158 je pouze k dispozici pro rozhraní.NET Framework 1.0.

317012 zpracování a vyžádání identity v technologii ASP.NET

Vlastnosti

ID článku: 329290 - Poslední kontrola: 16. 1. 2017 - Revize: 1

Váš názor