Frage

Sie haben ein verwalteten Code (ohne COM-Komponente hinzuzufügen oder zu C genannt wrapped ++ Routinen) Art und Weise integrierte Sicherheit zu einer C # Managed Code-Anordnung hinzufügen?

d. Ich mag ein Client-Server-System schreiben, wo der Server Remoting anstelle von IIS verwendet, aber ich mag der Client automatisch die Anmeldeinformationen an den Server wie ein Browser tut, wenn sie mit einem IIS-Server in Verbindung steht, die Sicherheit aktiviert integriert ...

Kann dies geschehen? und wenn ja, wo gibt es einige Beispiele?

War es hilfreich?

Lösung

Nein - es gibt keine reine verwaltete Schnittstelle zu SSPI . Aber gibt es ein MSDN-Beispiel, die SSPI wickelt für Sie , und dann verwendet den Wrapper für remoting.

Andere Tipps

.NET 2 hat NegotiateStream, die von TCP-Remoting verwendet wird SSPI zur Verfügung zu stellen.

Es ist WCF und alle .net-Bibliotheken für Sie, so etwas zu implementieren. Früher habe ich so etwas wie diese

http://www.theproblemsolver.nl/usingthemembershipproviderinwinforms.htm

und für den Serverteil

http://weblogs.asp.net/dwahlin/archive/2007/02/03/video-creating-a-service-with-windows-communication-service-wcf.aspx

diese beiden Schritte schön, um eine eigene implementierten Sicherheits Integration zu starten.

Wenn Sie sagen, „Remoting anstelle von IIS,“ was genau meinst du damit? Ein Remote Endpunkt (der Server Ende) wird in der Regel in IIS gehostet, da dies Ihnen viele Sachen kostenlos gibt, wie Authentifizierung, Load Balancing Skalierung durch - vor allem für Singletyp Objekte - das heißt, die Sie nicht wollen Zustand zu halten für aufeinanderfolgende Aufrufe an den Endpunkt.

Sie können einen Remote Endpunkt Host den HTTP-Stack in einem Client-App auch in xp / sp2 und darüber hinaus direkt auf die http.sys Treiber verwendet (was für Sie automatisch btw handleded wird).

Unabhängig davon, für die automatische Anmeldung mit NTLM-Anmeldeinformationen, empfehle ich Ihnen in IIS Remote hosten, und verwenden Sie System.Net.CredentialCache.DefaultCredentials für die Anmeldeinformationen des Client Ihre Client-Anwendung. Dies wird die Kontextinformationen an den Server-Anwendung übergeben, die aktuelle Sicherheitszone vorausgesetzt (Intranet / Internet / vertraute / etc) erlaubt es.

-Oisin

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top