Technische und ethische Frage zur Benutzerkontensteuerung
Hallo,
ich habe eine Frage zur UAC, da ich gestern fast aus allen Wolken gefallen bin, als ich erfahren habe, dass die Entwickler einer Server-Client-Software, die eines unserer Kunden einsetzt, Administratorrechte zum Ausführen sämtlicher Funktionen der Software nutzen zu können. Das klingt erst einmal übel. Schlimmer wird es wenn man erfährt, dass es sich dabei schlicht nur um eine einzige .EXE-Datei handelt, die nichts weiter tut als von der Server-Freigabe eine Datei zu kopieren und auf dem Client die entsprechende Datei zu überschreiben; nur eine einzige Datei wird kopiert! Hierbei handelt es sich um eine .MDB-Datei, die auf dem Client mit einer Access Runtime gestartet wird. Nur das Ausführen dieser .EXE-Datei, die nicht in "C:\Program Files (x86)" o.Ä. liegt, benüötigt erhöhte Rechte.
Also anstatt diese copy.exe so zu entwickeln, dass sie den Sicherheitsrichtlinien von Windows (in diesem Fall Windows 7) entsprechen und von der UAC beim Ausführen verschont bleibt, rät bzw. zwingt man die Nutzer dazu über Administratorrechte in Form einer deaktivierten Benutzerkontensteuerung (es geht nur deaktiviert; die beiden Zwischenstufen ändern nichts), ausschließlich damit das Update dieser Datei, das vielleicht alle paar Wochen einmalig notwendig ist, funktioniert.
Habe ich richtig gehandelt, indem ich gesagt habe, dass das dort nicht stattfinden wird und die UAC aktiviert bleibt? Ich habe selbst eine .BAT-Datei geschrieben, die genau denselben Zweck wie diese copy.exe erfüllt und es funktioniert tadellos, nur eben nicht aus dem Programm heraus, da man sich weigert für den Kunden den internen Pfad von copy.exe auf meine copy.bat zu ändern. Ist aber halb so wild, da man den Nutzern das nur so erklären muss; es sind dort nicht viele.
Ich verstehe das einfach nicht, dass Entwickler den Weg des geringsten Widerstands gehen und ihren Kunden diesen Weg auch noch aufzwingen mit einem herben Verlust der inneren Sicherheit im Netzwerk. Oder mache ich nur etwas falsch? Ist es wirklich so, wie der Vertreter der Software sagt, dass jeder seiner Kunden keine aktivierte UAC hat? Wie gewährleistet man da die Sicherheit und überhaupt Funktionalität? Wenn ich als normaler Domänenbenutzer eine ausgeschaltete UAC habe, dann kann ich entweder alles (Regestry ändern, CMD ausführen, etc.) machen oder ich kann eine Anwendung erst gar nicht starten, da entweder kein Administratorkennwort abgefragt wird oder überhaupt das AAM-Fenster zum Bestätigen des Vorgangs erscheint.
Ich hoffe nur dass ich mich irre und ich nur nicht weiß, wie ich Windows (7) sicher(er) machen kann ohne die UAC eingeschaltetet zu haben, sodass die Nutzer eben keine Administratorrechte haben, aber dennoch alle für sie notwendigen Anwendungen ausführen können.
Das ist für mich gerade ein ethisches Dilemma, da ich so langsam das Vertrauen in das Sicherheitsbewusstsein von Drittanbietersoftware verliere. Quick & Dirty ist keine Lösung weder in großen noch in kleinen Unternehmen. Und solange ich für den Kunden sein Netzwerk administriere findet das auch nicht statt.
Hat jemand ähnliche Erfahrungen?
Grüße Winary
ich habe eine Frage zur UAC, da ich gestern fast aus allen Wolken gefallen bin, als ich erfahren habe, dass die Entwickler einer Server-Client-Software, die eines unserer Kunden einsetzt, Administratorrechte zum Ausführen sämtlicher Funktionen der Software nutzen zu können. Das klingt erst einmal übel. Schlimmer wird es wenn man erfährt, dass es sich dabei schlicht nur um eine einzige .EXE-Datei handelt, die nichts weiter tut als von der Server-Freigabe eine Datei zu kopieren und auf dem Client die entsprechende Datei zu überschreiben; nur eine einzige Datei wird kopiert! Hierbei handelt es sich um eine .MDB-Datei, die auf dem Client mit einer Access Runtime gestartet wird. Nur das Ausführen dieser .EXE-Datei, die nicht in "C:\Program Files (x86)" o.Ä. liegt, benüötigt erhöhte Rechte.
Also anstatt diese copy.exe so zu entwickeln, dass sie den Sicherheitsrichtlinien von Windows (in diesem Fall Windows 7) entsprechen und von der UAC beim Ausführen verschont bleibt, rät bzw. zwingt man die Nutzer dazu über Administratorrechte in Form einer deaktivierten Benutzerkontensteuerung (es geht nur deaktiviert; die beiden Zwischenstufen ändern nichts), ausschließlich damit das Update dieser Datei, das vielleicht alle paar Wochen einmalig notwendig ist, funktioniert.
Habe ich richtig gehandelt, indem ich gesagt habe, dass das dort nicht stattfinden wird und die UAC aktiviert bleibt? Ich habe selbst eine .BAT-Datei geschrieben, die genau denselben Zweck wie diese copy.exe erfüllt und es funktioniert tadellos, nur eben nicht aus dem Programm heraus, da man sich weigert für den Kunden den internen Pfad von copy.exe auf meine copy.bat zu ändern. Ist aber halb so wild, da man den Nutzern das nur so erklären muss; es sind dort nicht viele.
Ich verstehe das einfach nicht, dass Entwickler den Weg des geringsten Widerstands gehen und ihren Kunden diesen Weg auch noch aufzwingen mit einem herben Verlust der inneren Sicherheit im Netzwerk. Oder mache ich nur etwas falsch? Ist es wirklich so, wie der Vertreter der Software sagt, dass jeder seiner Kunden keine aktivierte UAC hat? Wie gewährleistet man da die Sicherheit und überhaupt Funktionalität? Wenn ich als normaler Domänenbenutzer eine ausgeschaltete UAC habe, dann kann ich entweder alles (Regestry ändern, CMD ausführen, etc.) machen oder ich kann eine Anwendung erst gar nicht starten, da entweder kein Administratorkennwort abgefragt wird oder überhaupt das AAM-Fenster zum Bestätigen des Vorgangs erscheint.
Ich hoffe nur dass ich mich irre und ich nur nicht weiß, wie ich Windows (7) sicher(er) machen kann ohne die UAC eingeschaltetet zu haben, sodass die Nutzer eben keine Administratorrechte haben, aber dennoch alle für sie notwendigen Anwendungen ausführen können.
Das ist für mich gerade ein ethisches Dilemma, da ich so langsam das Vertrauen in das Sicherheitsbewusstsein von Drittanbietersoftware verliere. Quick & Dirty ist keine Lösung weder in großen noch in kleinen Unternehmen. Und solange ich für den Kunden sein Netzwerk administriere findet das auch nicht statt.
Hat jemand ähnliche Erfahrungen?
Grüße Winary
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 298161
Url: https://administrator.de/contentid/298161
Ausgedruckt am: 22.11.2024 um 04:11 Uhr
31 Kommentare
Neuester Kommentar
Hi.
Halt den Ball flach. Zum kopieren wird der Hersteller wohl kaum Adminrechte anfordern, Wenn doch, frag ihn, was das soll und lass es ihn abstellen, wenn Ihr im Vorfeld vereinbart habt, dass zum Betrieb keine Adminrechte benötigt werden.
Dein langer Text bettelt doch um Diskussion. Nur leider ist diese Diskussion uralt und hängt jedem Securitymensch zum Hals raus, soweit ich das wahrnehme (außer natürlich denen, die gerne viel schreiben und ihre Schlauheit kund tun).
Edit:
Was soll das bitte sein:
Halt den Ball flach. Zum kopieren wird der Hersteller wohl kaum Adminrechte anfordern, Wenn doch, frag ihn, was das soll und lass es ihn abstellen, wenn Ihr im Vorfeld vereinbart habt, dass zum Betrieb keine Adminrechte benötigt werden.
Dein langer Text bettelt doch um Diskussion. Nur leider ist diese Diskussion uralt und hängt jedem Securitymensch zum Hals raus, soweit ich das wahrnehme (außer natürlich denen, die gerne viel schreiben und ihre Schlauheit kund tun).
Edit:
Was soll das bitte sein:
zwingt man die Nutzer dazu über Administratorrechte in Form einer deaktivierten Benutzerkontensteuerung
UAC deaktiviert ist doch nicht das selbe wie Adminrechte an Nutzer vergeben.
Hi,
vollkommen unabhängig vom UAC: Eine Anwendung, welche in einem produktiven Netzwerk läuft, und nur dann funktioniert, wenn der Benutzer lokale Adminrechte hat, gehört ausgetauscht!
Und: Auch wenn UAC eingeschaltet ist, haben die Benutzer diese Adminrechte, wenn sie sie haben. Aktiviertes UAC bedeutet nur, das jedesmal, wenn ein Programm die Adminrechte des Benutzers in Anspruch nehmen will, dieser das erst bestätigen muss.
D.h., dass Dein offensichtlicher Glaube, dass aktiviertes UAC den Benutzern die Adminrechte deaktiviert, wenn sie Mitglieder der lokalen Administratoren sind, falsch ist.
E.
vollkommen unabhängig vom UAC: Eine Anwendung, welche in einem produktiven Netzwerk läuft, und nur dann funktioniert, wenn der Benutzer lokale Adminrechte hat, gehört ausgetauscht!
Und: Auch wenn UAC eingeschaltet ist, haben die Benutzer diese Adminrechte, wenn sie sie haben. Aktiviertes UAC bedeutet nur, das jedesmal, wenn ein Programm die Adminrechte des Benutzers in Anspruch nehmen will, dieser das erst bestätigen muss.
D.h., dass Dein offensichtlicher Glaube, dass aktiviertes UAC den Benutzern die Adminrechte deaktiviert, wenn sie Mitglieder der lokalen Administratoren sind, falsch ist.
E.
OK, jetzt wird da ein bisschen klarer.
Wenn die User keine lokalen Admins sind, und nur diese eine Funtion des Programms spinnt, wenn UAC aktiviert ist, dann würde ich im Interesse meiner Anwender einen "smarten" Betrieb sicherstellen wollen, also in den sauren Apfel beißen und UAC deaktivieren.
Du hast als Admin jederzeit die Möglichkeit über die Funktion "Als Administartor ausführen" oder "als anderer Benutzer ausführen" Programme zu starten, ohne den gerade interaktiv angemeldeten Benutzer abmelden zu müssen.
Und wenn ein Nicht-Admin Systemprogramme zwar starten, dort aber wegen fehlender Berechtigungen nichts ausrichten kann, dann ist das doch auch ok.
Wenn die User keine lokalen Admins sind, und nur diese eine Funtion des Programms spinnt, wenn UAC aktiviert ist, dann würde ich im Interesse meiner Anwender einen "smarten" Betrieb sicherstellen wollen, also in den sauren Apfel beißen und UAC deaktivieren.
Du hast als Admin jederzeit die Möglichkeit über die Funktion "Als Administartor ausführen" oder "als anderer Benutzer ausführen" Programme zu starten, ohne den gerade interaktiv angemeldeten Benutzer abmelden zu müssen.
Und wenn ein Nicht-Admin Systemprogramme zwar starten, dort aber wegen fehlender Berechtigungen nichts ausrichten kann, dann ist das doch auch ok.
Moin,
ich seh das recht pragmatisch: Wenn der Lieferant nicht auf den Kunden eingehen will, ist das die letzte Zeit der Lieferant gewesen.
Aber zu Deinem Problem:
Wenn die Aktion, durch eine einfache batch-datei im userkomtext ohen UAC zu triggern läuft und die Herstellerverseion eine abgeschaltete UAc erfordert, macht der herstelelr etwas falsch. Ich würde dem auch auf die Füßte treten.
Auch wenn UAc dem benutze rnciht mehr Rechte gewährt, als er ohnehin schon hat, ist es doch ein Hinweis, daß der User etwas tut, was erhöhte Rechte erfordert und man daher vorsichtig sein sollte.
Imho ist es daher durchaus legitim, dem Hersteller auf die Füße zu treten.
lks
PS: Wen Du die User trainieren kannst, dann trichter denen ein, daß sie einfach Deien BAT aufrufen sollen, wenn das nächste mal das UAC-fenster aufploppt-.
ich seh das recht pragmatisch: Wenn der Lieferant nicht auf den Kunden eingehen will, ist das die letzte Zeit der Lieferant gewesen.
Aber zu Deinem Problem:
Wenn die Aktion, durch eine einfache batch-datei im userkomtext ohen UAC zu triggern läuft und die Herstellerverseion eine abgeschaltete UAc erfordert, macht der herstelelr etwas falsch. Ich würde dem auch auf die Füßte treten.
Auch wenn UAc dem benutze rnciht mehr Rechte gewährt, als er ohnehin schon hat, ist es doch ein Hinweis, daß der User etwas tut, was erhöhte Rechte erfordert und man daher vorsichtig sein sollte.
Imho ist es daher durchaus legitim, dem Hersteller auf die Füße zu treten.
lks
PS: Wen Du die User trainieren kannst, dann trichter denen ein, daß sie einfach Deien BAT aufrufen sollen, wenn das nächste mal das UAC-fenster aufploppt-.
Dann verstehe ich den Zusammenhang nicht, dass wenn ich die UAC deaktiviere und neustarte. Ein normaler Domänenbenutzer danach z.B. regedit.exe starten und bearbeiten kann. Gilt auch für mmc.exe, mit der ich beispielsweise den Zertifikatsspeicher des lokalen Computers öffnen kann. Wenn das nichts mit der UAC zutun hat habe ich keine Ahnung was noch daran beteiligt sein soll. Das gilt selbst für einen neu erstellten Domänenbenutzer ohne zusätzliche Berechtigungen oder Gruppenzugehörigkeiten.
Ich glaube, du machst Dich da gerade selbst meschugge. Programm starten können heißt noch lange nicht, damit Änderungen vornehmen zu können. Das gilt auch für Regedit. Wo der Benutzer keine Rechte hat, kann er nichst schreiben oder löschen. Und das er z.B. die Zertifikate des lokalen Computers lesen kann, ist sogar notwendig, weil er sie sonst gar nicht nutzen könnte. Also kann er auch mit der MMC in den Zertifikatsspeicher schauen. Wenn Du das nicht willst, dann sperre per GPO für Nicht-Admins diverse Programme. Regedit, CMD, MMC usw.
Du musst Dich mal informieren, wie das funktioniert. Es ist doch so einfach. Regedit braucht nicht per se hohe Rechte. Die mmc auch nicht. Beide kannst Du als Nichtadmin eingeloggt starten. Schau bitte mal, ob Du nachlesen kannst, was ein Application-Manifest ist und belies Dich bezüglich runashighest und runasinvoker, dann hast Du die Basis, die Du brauchst.
Zitat von @Winary:
Ich habe selbst eine .BAT-Datei geschrieben, die genau denselben Zweck wie diese copy.exe erfüllt und es funktioniert tadellos,
Grüße Winary
Ich habe selbst eine .BAT-Datei geschrieben, die genau denselben Zweck wie diese copy.exe erfüllt und es funktioniert tadellos,
Grüße Winary
Dann leg doch diese BAT-Datei auf den Desktop, stell die Programmfenstergröße so ein, dass an der Seite ein schmaler Streifen des Desktop (mit der BAT) sichtbar bleibt. So kann der Nutzer darauf klicken.
Alternativ: Link auf den Desktop zur Bat. Link-"Eigenschaften" mit Tastenkombination belegen (die nicht von dem Programm verwendet wird / abgefangen wird) , und schon kann der Nutzer mittels Tastenkombination - auch wenn das Programm aktiv ist - die BAT aufrufen.
Gruß
Holger
Edit: Gelben Zettel mit der Tastekombi an den Monitor pappen !!!
Es ist ja auch nur dieser Kopiervorgang dieser einen Datei. Das entspricht vielleicht 0,0001% vom Umfang der ganzen Anwendung. Da kann ich als Entwickler doch nur deswegen keine Administratorrechte verlangen. Mehr ist das ja nicht was ich nicht verstehe.
@Winary: Du sagst selbst, dass es funktioniert, sobald UAC deaktiviert ist. So ist es doch?Und wir haben jetzt schon mehrmals geschrieben, das "UAC deaktivieren" ungleich "Admin-Rechte vergeben ist". Die Benutzer haben keine Admin-Rechte, bloß weil UAC deaktiviert wird. Kapierst Du das?
Denk doch mal nach:
Der "normale" Benutzer (99%) hat keine Admin-Rechte. UAC ist aber nur für Benutzer mit Admin-Rechten relevant.
Wenn Du also UAC deaktivierst, dann hat das auf 99% der Benutzer keine negativen Auswirkungen. Nur auf solche mit Admin-Rechten. Also z.B. Dich.
Edit. Und Du bist Admin für die Anwender, nicht umgekehrt.
Der "normale" Benutzer (99%) hat keine Admin-Rechte. UAC ist aber nur für Benutzer mit Admin-Rechten relevant.
Wenn Du also UAC deaktivierst, dann hat das auf 99% der Benutzer keine negativen Auswirkungen. Nur auf solche mit Admin-Rechten. Also z.B. Dich.
Edit. Und Du bist Admin für die Anwender, nicht umgekehrt.
Äh...bitte? UAC ist durch Datei- und Registryvirtualisierung weiterhin eine der wichtigsten Komponenten, wenn es um Kompatibilität von Legacy-Anwendungen geht. Und damit meine ich Komp. mit Benutzung durch Nichtadmins.
Könntest Du das bitte erläutern?https://msdn.microsoft.com/en-us/library/windows/desktop/bb648649%28v=vs ...
Dort steht lediglich, dass UAC die automatische (ohne Nachfrage) oder halb-automatische (mit Nachfrage) Elevierung steuert. Wenn eine Anwendung Admin-Rechte anfordert (wie Due schon geschrieben hast: "runashighest" oder auch "requireAdministrator", "highestAvailable"), dann wird versucht, den Prozess "anzuheben". Wenn der Benutzer diese Rechte hat, dann kommt die Frage, ob er das zulassen will. Wenn er die Rechte nicht hat, dann kommt der Dialog zur Anmeldung mit einem Admin-Konto, auch wenn man nicht explizit "ausführen als" auswählt.
Mehr lese ich da nicht. Die Datei- und Registryvirtualisierung bezieht sich auch nur auf Schreibvorgänge der lokalen Administratoren.
Zitat:
Benutzerkontensteuerung: Datei- und Registrierungsschreibfehler an Einzelbenutzerorte virtualisieren
Mit dieser Richtlinieneinstellung wird gesteuert, ob Schreibfehler in Anwendungen in definierte Orte in der Registrierung und im Dateisystem umgeleitet werden. Mit der Richtlinieneinstellung werden Anwendungen aufgefangen, die unter dem Administratorkonto ausgeführt werden, und von denen Laufzeitanwendungsdaten in "%Programme%, %Windir%, %Windir%\system32" oder "HKLM\Software\..." geschrieben werden.
Mit dieser Richtlinieneinstellung wird gesteuert, ob Schreibfehler in Anwendungen in definierte Orte in der Registrierung und im Dateisystem umgeleitet werden. Mit der Richtlinieneinstellung werden Anwendungen aufgefangen, die unter dem Administratorkonto ausgeführt werden, und von denen Laufzeitanwendungsdaten in "%Programme%, %Windir%, %Windir%\system32" oder "HKLM\Software\..." geschrieben werden.
Oder meinst Du was anderes?
emeriks, "virtuals store" sagt Dir nichts? Schau mal rein auf Deinem Rechner unter %localappdata%\VirtualStore
Dahin werden Schreibzugriffe von Anwendungen umgeleitet (z.B. nach c:\windows oder c:\progfiles), die sonst fehlschlagen würden wegen mangelnder Rechte. Ohne UAC wwird nichts umgeleitet, sondern Zugriff verweigert, Resultat: Anwendung läuft nicht/nicht rund ohne Adminrechte. Das selbe gibt es auch für die Registry.
Dahin werden Schreibzugriffe von Anwendungen umgeleitet (z.B. nach c:\windows oder c:\progfiles), die sonst fehlschlagen würden wegen mangelnder Rechte. Ohne UAC wwird nichts umgeleitet, sondern Zugriff verweigert, Resultat: Anwendung läuft nicht/nicht rund ohne Adminrechte. Das selbe gibt es auch für die Registry.
PS: Was Du zitierst ist im Original
%localappdata%\VirtualStore\Program Files (x86)\irfanview liegt bei mir eine i_view32.ini
Hätte ich die UAC aus, würde die ini nicht zur Verfügung stehen, sie könnte nicht gespeichert werden (es sei denn, irfanview lässt Einstellungen für alternative Pfade zu).
Du siehst, MS hat seine eigenen Policies mangelhaft beschrieben.
User Account Control: Virtualize file and registry write failures to per-user locations | This policy setting controls whether application write failures are redirected to defined registry and file system locations. This policy setting mitigates applications that run as administrator and write run-time application data to %ProgramFiles%, %Windir%, %Windir%\system32, or HKLM\Software| • Enabled: (Default) Application write failures are redirected at run time to defined user locations for both the file system and registry.
Und damit ebenso falsch. Beispiel: ich habe keine Adminrechte an meinem PC. Irfanview habe ich ausgeführt und irfanview möchte eine ini-Datei ins Programmverzeichnis schreiben. Das würde misslingen, der virtual store wurde benutzt, unter%localappdata%\VirtualStore\Program Files (x86)\irfanview liegt bei mir eine i_view32.ini
Hätte ich die UAC aus, würde die ini nicht zur Verfügung stehen, sie könnte nicht gespeichert werden (es sei denn, irfanview lässt Einstellungen für alternative Pfade zu).
Du siehst, MS hat seine eigenen Policies mangelhaft beschrieben.
Ohne die anderen Antworten gelesen zu haben:
1. *.cmd (früher *.bat) Datei schreiben die deine Kopie erledigt.
2. Google "Bat to Exe Converter" (Link zeigt auf ein Ergebnis der Suche)
4. blöde copy.exe durch schöne copy.exe ersetzen.
What's the problem?
Viele Grüße
pelzfrucht
1. *.cmd (früher *.bat) Datei schreiben die deine Kopie erledigt.
2. Google "Bat to Exe Converter" (Link zeigt auf ein Ergebnis der Suche)
4. blöde copy.exe durch schöne copy.exe ersetzen.
What's the problem?
Viele Grüße
pelzfrucht
Moin,
das ist leider in verschiedenen Umfeldern so der standard.
Primär weil die Softwarefirmen nicht programmieren können oder wollen.
Ich habe hier mal den Auszug einer Software die recht weit am Markt bei Zahnärzten verbreitet ist.
1. Jeder Benutzer benötigt lokale Administratorrechte
2. UAC muss deaktiviert sein
3. Es darf kein Antivirusprogramm installiert sein
Warum
Viele Medzinische Programme kommunizieren über eine INI-Dateien die sich historisch in c:\Windows befinden und auch nicht verschieben lassen.
Zusätzlich verschiedene Word-Makros bei denen sich sicherheitstechnisch mir die Fußnägel aufrollen.
Bei den Zahnärzten benötigen ca. 90% der PCs lokale Administratorrechte.
Und nein, den Anbieter der Röntgensoftware kann man nicht wechseln. Außerdem sind die anderen nicht besser.
Stefan
das ist leider in verschiedenen Umfeldern so der standard.
Primär weil die Softwarefirmen nicht programmieren können oder wollen.
Ich habe hier mal den Auszug einer Software die recht weit am Markt bei Zahnärzten verbreitet ist.
1. Jeder Benutzer benötigt lokale Administratorrechte
2. UAC muss deaktiviert sein
3. Es darf kein Antivirusprogramm installiert sein
Warum
Viele Medzinische Programme kommunizieren über eine INI-Dateien die sich historisch in c:\Windows befinden und auch nicht verschieben lassen.
Zusätzlich verschiedene Word-Makros bei denen sich sicherheitstechnisch mir die Fußnägel aufrollen.
Bei den Zahnärzten benötigen ca. 90% der PCs lokale Administratorrechte.
Und nein, den Anbieter der Röntgensoftware kann man nicht wechseln. Außerdem sind die anderen nicht besser.
Stefan
Und damit ebenso falsch. Beispiel: ich habe keine Adminrechte an meinem PC. Irfanview habe ich ausgeführt und irfanview möchte eine ini-Datei ins Programmverzeichnis schreiben. Das würde misslingen, der virtual store wurde benutzt, unter
%localappdata%\VirtualStore\Program Files (x86)\irfanview liegt bei mir eine i_view32.ini
Hätte ich die UAC aus, würde die ini nicht zur Verfügung stehen, sie könnte nicht gespeichert werden (es sei denn, irfanview lässt Einstellungen für alternative Pfade zu).
@dww, ich habe das eben exakt so reproduzieren können. Danke nochmal für den Wink.%localappdata%\VirtualStore\Program Files (x86)\irfanview liegt bei mir eine i_view32.ini
Hätte ich die UAC aus, würde die ini nicht zur Verfügung stehen, sie könnte nicht gespeichert werden (es sei denn, irfanview lässt Einstellungen für alternative Pfade zu).
Jedoch: Kann es sein, dass sich das auf INI-Dateien beschränkt? Jedenfalls kann ich auf diese Weise z.B. keine TXT aus so einem Verzeichnis mit Notepad ändern und an selber Stelle abspeichern. Mir ist so in Erinnerung, als wenn MS für das Lesen und Speichern von INI extra API anbietet. Man kennt das ja schon aus dem TS-Umfeld, wo solche INI's früher schon im %homeshare%\Windows gelandet sind.
@DerWoWusste
Habe mich eben hier belesen: Understanding and Configuring User Account Control
Es ist tatsächlich, wie Du schreibst, aber es gibt auch Einschränkungen, wo das nicht greift. So z.B. bei x64-Anwendungen und bei solchen, welche eine Mainfest Datei haben, welche die Elevierung gezielt anfordern.
Habe mich eben hier belesen: Understanding and Configuring User Account Control
Es ist tatsächlich, wie Du schreibst, aber es gibt auch Einschränkungen, wo das nicht greift. So z.B. bei x64-Anwendungen und bei solchen, welche eine Mainfest Datei haben, welche die Elevierung gezielt anfordern.