2010-03-07 2 views
8

In einer C# -Anwendung, ich bin mit DSACryptoServiceProvider einer Signatur zu erstellen. Wenn der Benutzer, der die Anwendung ausführt, ein temporäres Profil hat, bekomme ich eine Ausnahme: CryptographicException: "Das Profil für den Benutzer ist ein temporäres Profil."Woher weiß ich, ob das Profil für den Benutzer, der eine Anwendung ausführt, ein temporäres Profil ist?

Der Fehler kann gelöst werden, wenn ich DSACryptoServiceProvider.UseMachineKeyStore gesetzt = true; Aber ich möchte zuerst überprüfen, ob diese Änderung erforderlich ist. Dafür möchte ich in meinem Code überprüfen, ob der Benutzer ein temporäres Profil hat.

Wie kann ich das überprüfen?

+0

nicht der gleiche Anwendungsfall, aber dies ist eine ähnliche Frage - http://stackoverflow.com/questions/43762021/programmatically-detect-that-user-has-logged-in-with-temporary-profile – William

Antwort

1

Die einzige Information, die ich zu diesem Thema gefunden zu haben scheint bei Clickonce-Bereitstellung zu zeigen.

Es gibt scheinbar keine bekannte Problemumgehung, da Sie sollten ein nicht temporäres Profil, um die Anrufe, die Sie machen ...

Anscheinend Sie Ihre eigene Frage hier zu haben, beantwortet erscheinen zu lassen verwenden ...

Ich möchte in meinem Code zur Überprüfung des Benutzers hat ein temporäres Profil.

Wie kann ich das überprüfen?

Und die Antwort ist ...

Wenn der Benutzer die apllication Ausführung ein temporäres Profil hat, erhalte ich eine Ausnahme: Cryptographic: „Das Profil für den Benutzer ist ein temporäre Profil."

Scheint ziemlich einfach, wenn Sie diesen Fehler erhalten Sie mit einem anderen Profil ausführen müssen. Sie könnten eine Testmethode haben, die diesen Code als Überprüfung ausführt, bevor Sie Ihren eigentlichen Code durchlaufen.

Ich habe allerdings von einer anderen Option gehört, vorausgesetzt, dies im Rahmen einer asp.net Anwendung ist, sollten Sie in der Lage sein, das aktuelle Profil wie diese zu erhalten ...

ProfileCommon profile = HttpContext.Current.Profile as ProfileCommon; 

Vom sollten Sie der Lage sein, das Profil Beispiel abfragen, i seine glauben, dass eine Art von Profile hier dokumentiert ...

http://msdn.microsoft.com/en-us/library/ms151820(v=VS.100).aspx

hoffe, das hilft klar die Dinge ein wenig zu Ihnen.

Verwandte Themen