C Sharp Ordner als anderer User öffnen
Hallo @ All!
Ich stehe etwas am Schlauch und hoffe auf eure Unterstützung, weil ich irgendwie nix Brauchbares zum Thema finde:
Meine kleine Applkation soll nichts anderes machen als einen Ordner als anderer User zu öffnen und den Inhalt weiter verarbeiten.
Hat irgend jemand eine Idee wie ich das machen könnte?
Danke für die Hilfe!
Mayho
Ich stehe etwas am Schlauch und hoffe auf eure Unterstützung, weil ich irgendwie nix Brauchbares zum Thema finde:
Meine kleine Applkation soll nichts anderes machen als einen Ordner als anderer User zu öffnen und den Inhalt weiter verarbeiten.
Hat irgend jemand eine Idee wie ich das machen könnte?
Danke für die Hilfe!
Mayho
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 246605
Url: https://administrator.de/forum/c-sharp-ordner-als-anderer-user-oeffnen-246605.html
Ausgedruckt am: 05.02.2025 um 12:02 Uhr
17 Kommentare
Neuester Kommentar
Hallo Mayho,
ich vermute, diese Anfrage hast du schon gestellt:
https://www.google.de/webhp?sourceid=chrome-instant&ion=1&espv=2 ...
Grüße,
Christian
ich vermute, diese Anfrage hast du schon gestellt:
https://www.google.de/webhp?sourceid=chrome-instant&ion=1&espv=2 ...
Grüße,
Christian
Hi mayho,
Stichwort: Impersonation
Hier an einem Beispiel mit Zugriff auf einen Ordner erläutert:
http://dotnet-assembly.blogspot.de/2012/11/c-accessing-remote-file-by-u ...
Grüße Uwe
Stichwort: Impersonation
Hier an einem Beispiel mit Zugriff auf einen Ordner erläutert:
http://dotnet-assembly.blogspot.de/2012/11/c-accessing-remote-file-by-u ...
das Passwort als normaler String kommt nicht in Frage. C#-exen lassen sich da viel zu leicht auslesen
Da wiedersprichst du dir aber gerade, wenn du in deinem Beispielcode dein Passwort in einer Variablen hinterlegst, bringt dir SecureString auch nicht mehr Sicherheit, denn du hat es ja bereits im Code hinterlegt! Abhilfe schafft dagegen nur ein Code-Obfuscator, zumindest hilft das gegen Gelegenheits-Cracker ohne Cryptokenntnisse Grüße Uwe
Moin Mayho,
es geht u.a darum zu überprüfen ob die Strategie ggf nicht die richtige ist. Was spricht dagegen diesen Ordner entsprechend für den Std User zugreifbar zu machen (und nur die für ihn nötige Datei) dort abzulegen. Zugreifen muss er ja so oder so?
Daher ja, du liegst damit schon semi-Falsch, denn man kann ein Problem schlecht abschätzen, wenn man die Fransen dessen nicht kennt (in dem Fall den "Körper"). Macht unsere Politik zwar in Ihren Problemlösungsstrategien (falls man das so nennen kann) oft genug auch so, aber was dabei heraus kommt wissen wir ja ;)
Grüße + Schönes We.
es geht u.a darum zu überprüfen ob die Strategie ggf nicht die richtige ist. Was spricht dagegen diesen Ordner entsprechend für den Std User zugreifbar zu machen (und nur die für ihn nötige Datei) dort abzulegen. Zugreifen muss er ja so oder so?
Daher ja, du liegst damit schon semi-Falsch, denn man kann ein Problem schlecht abschätzen, wenn man die Fransen dessen nicht kennt (in dem Fall den "Körper"). Macht unsere Politik zwar in Ihren Problemlösungsstrategien (falls man das so nennen kann) oft genug auch so, aber was dabei heraus kommt wissen wir ja ;)
Grüße + Schönes We.
Absolute Sicherheit hast du bei sowas nie. Keine Passwörter im Code hinterlegen, lautet die oberste Regel eines Programmierers !! Das wäre dann höchstens security by obscurity, denn was man verschlüsselt im Code ablegt, kann ein Angreifer durch Analyse des Codeabschnitts der Dechiffrierung selber wieder rückgängig machen. Du kannst nur versuchen es dem Angreifer so schwierig wie möglich zu machen, und da ist Obfuscating das Mittel der Wahl wenn unbedingt Passwörter im Code hinterlegt werden müssen. Was mir dazu noch einfallen würde, wäre eine gegenseitige Authentifizierung via PKI das ist aber vermutlich für deine Aufgabe Overkill. Du solltest deine Zugriffs-Strategie aber besser überdenken.
http://msdn.microsoft.com/de-de/library/system.security.securestring%28 ...
Grüße Uwe
Frage mich wozu es dann SerureString gibt wenn man ihn sogar aus der kompilierten exe ganz einfach auslesen kann.
SecureString ist nur für die Verschlüsselung von Stringwerten während der Ausführung der Anwendung im Hauptspeicher, so dass ein Angreifer im Speicher keine Klartextpasswörter abgreifen kann.http://msdn.microsoft.com/de-de/library/system.security.securestring%28 ...
Grüße Uwe
Jetzt wird es klarer. Was spricht gegen einen Dienst, der mit höheren Rechten (ggf) arbeitet und den die User gar nicht beeinflussen können?
Unser blöder Adobe und Flash und Chrome Updater brauchen, wenn man sie manuell startet auch höhere Rechte (Admin Zugang), wenn man es aber einmal so einrichtet, dass sie diese bekommen haben arbeiten sie transparent im Hintergrund. Das kannst du ggf. mit der VPN koppeln.
Wäre das kein Ansatz, der bedeutend effektiver ist?
Unser blöder Adobe und Flash und Chrome Updater brauchen, wenn man sie manuell startet auch höhere Rechte (Admin Zugang), wenn man es aber einmal so einrichtet, dass sie diese bekommen haben arbeiten sie transparent im Hintergrund. Das kannst du ggf. mit der VPN koppeln.
Wäre das kein Ansatz, der bedeutend effektiver ist?
Zitat von @mayho33:
Wie müsste ich diesen Dienst dann ansprechen vom meinem Tool aus damit ich den Inhalt des Ordners auslesen kann und die Software installieren?
Wie muss der Dienst aussehen?
Dafür eigenet sich die WCF (Windows Communication Foundation) hervorragend.Wie müsste ich diesen Dienst dann ansprechen vom meinem Tool aus damit ich den Inhalt des Ordners auslesen kann und die Software installieren?
Wie muss der Dienst aussehen?
In diesem sehr anschaulichen Tutorial werden die Grundlagen dafür in 6 Steps erläutert:
http://msdn.microsoft.com/en-us/library/ms734712.aspx
Du implementierst deine Zugriffs-Logik in den Dienst (Service-Host) und stellst über darin deklarierte Funktionen der Clientanwendung die gewünschte Funktionalität (wie z.B. das Auslesen eines Files) zur Verfügung.
Den Dienst konfigurierst du dann mit den benötigten Credentials.
Grüße Uwe