.NET-Sicherheitsausnahme für eine Netzwerkfreigabe

8

Wir stellen unsere .NET-Anwendungen bereit, indem wir sie in das LAN stellen und Benutzern erlauben, von dort aus zu laufen. Wir sind Teil einer sehr großen Organisation und haben keine Administratorrechte für die einzelnen Computer, die Server oder die Domäne. Wir haben nicht einmal Administratorrechte für unsere Entwicklungsmaschinen.

Wenn ein Benutzer eine Dot-Net-Anwendung von einer Netzwerkfreigabe aus ausführt, schlägt er aufgrund einer Sicherheitsausnahme fehl. In der Vergangenheit haben wir CASPOL (Benutzerebene) verwendet, um dem Dateiserver zu vertrauen, aber das bereitet Kopfschmerzen. Wir haben benutzerdefinierten Code entwickelt, um die Assembly vor der Ausführung auf das lokale Laufwerk zu kopieren, wodurch das Vertrauensproblem umgangen wird. Keine Lösung ist eine gute Antwort. Ich verstehe, dass Dot Net 3.5 das Problem beseitigen wird.

Als wir mit unserem IT-Bereich das Thema angesprochen haben, haben sie uns mit Blicken verblüfft, als wir nach Vertrauen auf einer Maschinen- oder Serverbasis gefragt haben.

Eine Microsoft-Website sagt

  

Wenn Sie der Entwickler oder Herausgeber des Codes sind, können Sie auch digital arbeiten   signieren Sie es und ändern Sie anschließend die Sicherheitsrichtlinie, um mehr Berechtigungen zu erteilen   Code mit dieser Signatur.

Einer unserer IT-Mitarbeiter fragt mich, was wir in Bezug auf den kryptografischen Schlüssel brauchen. Ich möchte sicherstellen, dass meine Annahmen richtig sind, bevor ich antworte.

  • Annahme Eins : Ein Schlüssel, der von der SN generiert wurde .EXE-Tool kann irgendwie auf Domänen- oder Unternehmensebene vertraut werden.
  • Annahme Zwei : Sobald ein solcher Schlüssel vertrauenswürdig ist und wir unseren Code damit signieren, wird davon ausgegangen, dass die Assemblys von einer Netzwerkfreigabe ablaufen.
  • Annahme Drei : Das "Vertrauen" ist eine Aktion des Teils der Domänenadministratoren / Unternehmensadministratoren und wäre global für die Domäne / das Unternehmen. Meine Vermutung ist, dass sie es durch einige Active Directory Magic zum Enterprise / Domain-Keystore hinzufügen würden.

Sind meine Annahmen richtig oder bin ich weit von der Basis entfernt? Eine letzte Frage, könnte dieser gleiche Schlüssel verwendet werden, um VBA-Makros zu signieren?

    
Andrew Neely 25.07.2011, 20:20
quelle

1 Antwort

3

Ich hatte dieses Problem in der Vergangenheit auch, aber wir haben es nicht gelöst, indem wir die Assemblys signiert haben, sondern indem wir der caspol-Lizenz "LocalIntranet" volle Vertrauenswürdigkeit verliehen haben (don mit caspol oder der . net 2.0 sdk ) und unsere Dateiserver zu den lokalen Intranetsites in Windows hinzufügen.

Auf diese Weise müssen Sie nicht jeden Ordner caspolieren, aus dem Sie Code ausführen möchten, und Sie müssen nicht alle Assemblys signieren und mit dem Senden von Schlüsseln an IT arbeiten

    
aL3891 25.07.2011, 21:40
quelle