2009-02-14 11 views
6

Szenario: In einem E-Commerce-System sollte sich ein Helpdesk-Benutzer als ein bestimmter Kunde "imitieren" oder "anmelden" können (von der webbasierten Verwaltungssite). damit er den Kunden aus erster Hand unterstützen kann - z. wenn der Kunde telefoniert.Benutzeridentitätswechsel mit ASP.NET-Formularauthentifizierung

Zusätzliche Klarstellung: Es ist nicht erforderlich, den ursprünglichen Authentifizierungskontext zu verfolgen. Wir müssen lediglich eine Schaltfläche "Anmelden als" angeben, die sich als Kunde anmeldet, ohne dass der Helpdesk-Benutzer das Passwort kennen muss.

Haben Sie Ideen, wie dieses Szenario mit der regulären ASP.NET-Formularauthentifizierung implementiert werden könnte?

Antwort

3

Maybee Ich verstehe das Szenario nicht genau. Aber warum lässt sich der Support nicht als Benutzer anmelden?

FormsAuthentication.SetAuthCookie("yourCustomersUserName"); 

Dann wird es bis zum E-Commerce-System sein, um einen aktualisierten „Warenkorb“ zu haben, oder was auch immer, so dass die Unterstützung helfen kann ..

+0

Sie könnten einfach den Benutzernamen aus einer Textbox nehmen, die der Support-Typ in den Benutzernamen eingibt? – ullmark

+0

Danke, werde das versuchen! – JacobE

+0

Wird die Sitzung automatisch gewechselt, wenn sich das Authentifizierungs-Cookie ändert? – JacobE

3

ich in der Lage war, diese Arbeit zu bekommen, vorausgesetzt, Sie‘ Wenn ein Benutzer bereits angemeldet ist, können Sie einen anderen Benutzer mit dem folgenden Code imitieren.

FormsAuthentication.SignOut(); 

FormsAuthentication.SetAuthCookie("username", true); 
+0

+1 funktionierte perfekt für mich – andynormancx