Security Exception

Hallo,

ich hab eine exe- die ich ohne probleme vom netz und lokal starten kann. beim „endnutzer“ funktioniert diese auch lokal- er müsste diese jedoch vom netz aus starten, wo die exe einen security-error schmeisst.

hat jemand nen tip, wie ich das am besten behebe?

viele grüße

rasta

Hi!

Schnelle Antwort:
Systemsteuerung>Verwaltung>.NET Framework Assistent aufrufen, Vertrauensstellung der Zone, aus der die Exe gestartet wird, erhöhen.

Bessere Antwort:
Lies’ Dir vielleicht mal die Dokumentation zum Thema CAS (Code Access Security) durch, MSDN und andere haben dazu Unmengen.
Da ist genau beschrieben, wie das Framework eine Assembly lädt und anhand verschiedener Eigenschaften (Ort, Name, StrongName, …) in Kategorien einteilt, die unterschiedliche Rechte zur Laufzeit haben.

Gruß,
Martin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Martin,

zunächst vielen Dank für Deine Antwort.

  1. Schnelle Antwort brachte nix
  2. Bessere Antwort brachte auch nix

Ich hab sowas von rumassemblyt, hammer :smile: und was ich alles hochgesetzt hab–beim client auch (weiterhin security-exception)

Evtl. bessere Frage:

Den Source habe ich von einem Programmierer, bei dem die EXE auf allen Clients lief, OHNE an diesen rumzufingern.
Ich habe diese etwas erweitert–(nur um eine berechnungsfunktion, nix tragisches)

bei mir am Entwicklungsrechner läuft die exe- wenn ich sie vom netzwerk starte, ebenso

beim „client“ läuft die exe ebenso lokal- nur nicht vom netz-- und dieser muss sie vom netz starten

was mache ich also falsch, bzw, was muss ich tun, damit sich diese exe von jedem beliebigen client vom netz aus starten lässt, ohne security exception und ohne das man an der „.net“-sicherheit rumschrauben muss(was eh leider nix gebracht hat)

viele grüße

rasta

Schnelle Antwort:
Systemsteuerung>Verwaltung>.NET Framework Assistent
aufrufen, Vertrauensstellung der Zone, aus der die Exe
gestartet wird, erhöhen.

Bessere Antwort:
Lies’ Dir vielleicht mal die Dokumentation zum Thema CAS (Code
Access Security) durch, MSDN und andere haben dazu Unmengen.
Da ist genau beschrieben, wie das Framework eine Assembly lädt
und anhand verschiedener Eigenschaften (Ort, Name, StrongName,
…) in Kategorien einteilt, die unterschiedliche Rechte zur
Laufzeit haben.

Gruß,
Martin

Wenn Du die richtigen Einstellungen vornimmst, dann muss es auch funktionieren.
Ganz konkret: Wenn der Client von einem gemappten Netzlaufwerk gestartet wird, dann gelten die Sicherheitseinstellungen der Intranetzone. Startest Du das Teil z.B. per UNC-Pfad, dann werden die Internetzonen-Sicherheitsrichtlinien verwendet.

Wenn die jeweilige Zone also über genügend Rechte verfügt, dann darf sie werkeln.

Man kann auch mit der „Microsoft .NET Framework 1.1-Konfiguration“ Installationsmodule erstellen, die bestimmte Sicherheitsrichtlinien setzen, vielleicht war beim Original sowas dabei.

Wenn Du in diesem ControlPanel bist, dann markier doch mal links im Baum den Knoten „Laufzeitsicherheitsrichtlinien“.
Dann bekommst Du unter „Aktion/Assembly auswerten…“ die Möglichkeit nachzusehen, welche Rechte besagter Client wirklich hat.

Gruß,
Martin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Martin,

vielen Dank- Deine Antwort hat mir sehr weitergeholfen, die exe im policy-dschungel nun doch noch zum laufen zu bringen

ein kuddelmuddel— ms sollte man abstrafen dafür-aber ne längere geschichte

also vielen dank
vieel grüße

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]