Freigeben von Authentifizierungstickets anwendungsübergreifend

October 22

Wenn ein Benutzer mithilfe der Anwendung Microsoft ASP NET anmeldet, erzeugt das System ein Authentifizierungsticket in Form eines Cookies auf dem Computer des Benutzers. Mehrere ASP-NET-Anwendungen können das Authentifizierungsticket freigeben, so dass der Benutzer nicht mit jeder Anwendung anmelden. Um Authentifizierungstickets freizugeben, müssen Sie Formularauthentifizierung auf identischen Einstellungen in der Datei "web.config" für jede Anwendung festlegen und erstellen einen benutzerdefinierten Satz von Validierung und Entschlüsselung Schlüssel zur Verwendung mit jeder Anwendung.

Anweisungen

Validierung und Entschlüsselungsschlüssel erstellen

1 Klicken Sie "Start", "Alle Programme" und "Microsoft Visual Studio." Klicken Sie auf "Datei", "Neues Projekt", und wählen Sie die Vorlage "Console Application". Geben Sie einen Namen für das Projekt, z. B. "Cryptokeys", und klicken Sie auf "OK".

2 Geben Sie den folgenden Code zwischen "Sub Main()" und "EndSub:"

Dim validationKeyLength As Integer = 128

Dim decryptionKeyLength As Integer = 64

Dim validationBuffer(validationKeyLength) As Byte

Dim decryptionBuffer(decryptionKeyLength) As Byte

Dim csp As New RNGCryptoServiceProvider()

Dim validationKey As New StringBuilder(validationKeyLength)

Dim decryptKey As New StringBuilder(decryptionKeyLength)

Dim i As Integer

csp.GetBytes(validationBuffer)

For i = 0 To validationBuffer.Length - 1

validationKey.Append(String.Format("{0:X2}", validationBuffer(i)))

Next i

csp.GetBytes(decryptionBuffer)

For i = 0 To decryptionBuffer.Length - 1

decryptKey.Append(String.Format("{0:X2}", decryptionBuffer(i)))

Next i

Console.WriteLine(validationKey)

Console.WriteLine(decryptKey)3

Geben Sie die folgenden Imports oben "Modul Modul1:"

System importiert

Imports System.Text

System.Security importiert

Einfuhren System.Security.Cryptography

4 Wählen Sie "Projekt", dann "bauen" aus dem Menü auf das Modul kompiliert werden. Beachten Sie das Verzeichnis, in dem sich die "Cryptokeys.exe" befindet, z. B. "c:\users\steve\Documents\Visual Studio\Projects\Cryptokeys\Cryptokeys\bin."

5 Klicken Sie auf "Start", "Ausführen" und geben "Cmd", um eine Eingabeaufforderung zu öffnen. Wechseln Sie in das Verzeichnis, in dem sich die "Cryptokeys.exe" befindet. Geben Sie z. B. "cd \users\steve\Documents\Visual Studio\Projects\Cryptokeys\Cryptokeys\bin".

6 Typ "Cryptokeys" führen Sie das Programm und die Schlüssel zu generieren.

"Web.config" zu ändern

7 Bearbeiten Sie die Datei "web.config" für jede Anwendung mit einem Editor. Geben Sie den Konfigurationscode, damit jede Anwendung die gleiche Formularauthentifizierung verwenden. Beispielsweise fügen Sie Folgendes in die Datei "web.config" in jeder Anwendung unter "< Konfiguration >< system.web >:"

< Authentifizierungsmodus = "Formulare" >

< bildet Schutz = "All" Name = "SharedCookie" loginUrl="/location/login.aspx" Timeout = "60" / >

< / Authentifizierung >

8 Klicken Sie auf "Start", "Alle Programme", "Zubehör, dann"Notepad"Notepad öffnen. Verschieben Sie in das Eingabeaufforderungsfenster und verwenden Sie "STRG + C", um die Schlüssel zu kopieren, den, die Sie generiert, und "STRG + V" um sie in den Editor einzufügen.

9 Bearbeiten der Datei "web.config" für jede Anwendung in einem Editor und fügen Sie die kryptografischen Schlüssel, den, die Sie generiert. Die Schlüssel aus dem Editor mit "STRG + C" Kopieren und Einfügen in den Konfigurationscode mit "STRG + V". Zum Beispiel:

< MachineKey

validationKey = "6461FC28DF22F492F32503C98D63397E85FC9C7A3F732389FFC84647C39B6F4B8DE1AA6E1CB8EEC9E4592FA1F820F8B9E8EF66904698268114AB2AA313D11974E6A6BF7B4A91708D3E812DA0E864006AA565984F5BB82C23AD80AC18FEE6A611E1204C769F34C43E2803F746320C55D2F84614728C2A3214"

DecryptionKey = "62EE0E47E32967F5ECFC1BB8D00FE181347DC1BF198ADF0293CE3D4DAA7E1F77E3FDF28EC8637B86CDD67DBAC1FD45FE7E81E8824D6F2804EF8BD263FEE5F6B1C475B335268837A20596"

Validierung = "SHA1" / >