Softwareverteilung - Plugins zentral verwalten

German support forum

Moderators: white, Hacker, Stefan2

Post Reply
derhoeppi
Junior Member
Junior Member
Posts: 5
Joined: 2018-07-02, 08:48 UTC

Softwareverteilung - Plugins zentral verwalten

Post by *derhoeppi »

Hallo,

ich kämpfe mit der Konfiguration, die ich via Softwareverteilung mitgeben möchte. Mein Ziel ist es den Benutzer nur die Plugin-Verwaltung abzunehmen, so dass sie alle anderen Dinge über die Konfiguration selbst bestimmen können. Dazu habe in der wincmd.ini im Programmverzeichnis in der Sektion Configuration ein RedirecSection und UseIniInProgramDir verwendet. Darunter habe ich die Sektionen der Plugins. Wenn ich das so installiere und ausführe, sieht zwar der Benutzer die Plugins, aber er kann die Konfiguration des Layouts und Display nicht mehr ändern, weil er einen Schreibfehler seiner benutzerspezifischen wincmd.ini gemeldet bekommt. Nehme ich das UseIniInProgramDir raus, kann der User alles veränder, sieht aber nicht die Plugins. folglich muss er Sie sich selber hinzufügen.
Gibt es eine Möglichkeit das Zentral zu machen?
User avatar
Dalai
Power Member
Power Member
Posts: 9364
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

UseIniInProgramDir ist nur für portable TC-Konfigurationen sinnvoll, nicht für fest installierte TCs - unter der Annahme, dass ein TC in einem für Nutzer nicht schreibbaren Verzeichnis wie z.B. in %ProgramFiles% installiert ist, und Nutzer Änderungen an den TC-Einstellungen vornehmen sollen können/dürfen.

Deine recht ausführlichen Beschreibung lässt leider noch einige Punkte offen. Sollen die Clients alle Plugins haben oder soll jeder Benutzer selbst entscheiden können, welche Plugins (und wo) installiert werden? Wie's aussieht, liegt TC auf den Clients in einem für Nutzer nicht schreibbaren Verzeichnis - berücksichtigst du dies für die Plugin-Konfigurationen? Die meisten Plugins speichern ihre Einstellungen in dem Verzeichnis, wo die wincmd.ini liegt. Kannst du mal ein konkretes Beispiel geben, wo TC, die Plugins und die Einstellungen jeweils liegen sollen und ob diese Orte von den Nutzern beschrieben werden können (sollen)?

Welche wincmd.ini wird benutzt, wenn du UseIniInProgramDir nicht setzt?

Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
derhoeppi
Junior Member
Junior Member
Posts: 5
Joined: 2018-07-02, 08:48 UTC

Post by *derhoeppi »

Hallo Dalai,

den TC installiere ich unter "%ProgramFiles%\TotalCommander". Darin erstelle ich ein Verzeichnis Plugins und darin wiederum einen wfx Verzeichnis in dem sich, die von mir bereitgestellten Plugins befinden. Bisher haben die Benutzer nur Anforderungen für die File System Plugins gestellt. Testen tue ich derzeit mit dem SFTP und WebDAV Plugin. Meine Hoffnung ist das die Konfiguration, die benutzerspezifisch ist, über den Parameter RedirectSection der wincmd.ini (im TC Verzeichnis) im Abschnitt [FileSystemPlugins64] darauf abziehlt die Konfiguration im AppData Verzeichnis des Benutzers zu speichern, weil er dort die Schreibrechte hat.

Ich mag die wincmd.ini im TC Verzeichnis ungern für jeden Benutzer schreibbar machen. Ich stelle mir dann ein Update des TC bzw. das globale Verteilen weiterer Plugins sehr schwierig vor, weil ich die wincmd.ini parsen müsste um einen Eintrag hinzu zufügen oder zu entfernen.

Gruß
Dirk
User avatar
Dalai
Power Member
Power Member
Posts: 9364
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Ich muss nochmals nachhaken: Möchtest du den Nutzern ermöglichen, dass sie selbst Plugins installieren können? Wenn ja, ist die Idee der Umleitung von [FileSystemPlugins] der richtige Weg, aber allein nicht ausreichend. Warum? Die meisten Plugins speichern ihre Einstellungen entweder in den vom TC vorgegebenen Dateien (lsplugin.ini, fsplugin.ini usw), die im selben Verzeichnis liegen wie die wincmd.ini. Andere Plugins speichern ihre Einstellungen in ihrem Plugin-Verzeichnis.

Konkret am Beispiel von SFTP: Das Plugin selbst wird im Abschnitt [FileSystemPlugins] der wincmd.ini definiert, also dem TC bekannt gemacht, die SFTP-Verbindungen selbst stehen aber in sftpplug.ini, die im selben Verzeichnis wie die wincmd.ini liegt. Die Umleitung des Abschnitts nützt also nichts.

Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
derhoeppi
Junior Member
Junior Member
Posts: 5
Joined: 2018-07-02, 08:48 UTC

Post by *derhoeppi »

Hallo Dalai,
eigentlich wollte ich heute morgen eine Rückmeldung geben, dass es mir gelungen ist die Plugins in der wincmd.ini zentral zu definieren und die User können noch ihre Einstellungen vornehmen. Eigentlich genau das was ich möchte. Die User sollen keine weiteren Plugins installieren können, aber sie sollen sie nutzen dürfen.

Bei einem Test bin ich genau auf das Problem beim SFTP Plugin gestoßen. Es möchte in meinem Fall im TC Programm Verzeichnis die sftplug.ini anlegen. Dort hat der normale Benutzer keine Berechtigung also passiert gar nichts.
Die Frag die ich mir in diesem Zusammenhang jedoch stelle ist, warum für diesen Punkte nicht der globale Configurationsparameter AternateUserIni ausgewertet wird um eben die Konfigs in dem Verzeichnis der UserIni abzulegen.

Alternativ könnte man den Plugins auch eine separate Konfiguration mitgeben, in der festgelegt wird an welcher Stelle die Plugin.ini abgelegt wird.

Aktuell weiß ich nicht wie ich mein Vorhaben noch umsetzen kann. Vermutlich kann ich gar keine Plugins zentral vorgeben und dem Benutzer alles überlassen. Für eine verwaltete Umgebung ist das irgendwie inakzeptabel.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Das Plugin legt die sftpplug.ini immer im selben Verzeichnis an, in dem auch die Datei wincmd.ini liegt. Wenn das nicht geht, können Sie das Plugin selber ändern, es ist Open Source.
Author of Total Commander
https://www.ghisler.com
User avatar
Dalai
Power Member
Power Member
Posts: 9364
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

derhoeppi wrote:Aktuell weiß ich nicht wie ich mein Vorhaben noch umsetzen kann.
Konkret auf das SFTP-Plugin bezogen: Du kannst den Benutzern Schreibrechte* auf die sftpplug.ini geben. Das ist das Verfahren, was ich selbst für andere TC-Plugins benutze, deren Einstellungen von den Benutzern verwaltet werden können sollen. Das funktioniert auch dann, wenn die Plugins ihre Einstellungen im eigenen Plugin-Verzeichnis ablegen. SetACL bietet sich zum automatisierten Setzen der Berechtigungen an.

*) Das Recht "Schreiben" genügt, "Ändern" braucht es nicht, denn man beachte, dass "Ändern" das Recht "Löschen" beinhaltet!

Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
derhoeppi
Junior Member
Junior Member
Posts: 5
Joined: 2018-07-02, 08:48 UTC

Post by *derhoeppi »

Hallo Dalai,
danke für den Tipp zum Setzen der Berechtigung mit SetACL. Aus meiner Sicht ist das jedoch nicht praktikabel. Wenn sich ein anderer Nutzer an dem Rechner anmeldet, hat er Zugriff auf die Einträge vom Hauptnutzer. Das würde bei uns etwas Stress auslösen. Ich denke die Plugins werde ich als Dateien bereitstellen, aber die User müssen sich die Plugins selber in ihrer Config einfügen. Das finde ich zwar bei so einem genialen Tool wie den TC schade, aber vielleicht kann man ja irgendwo einen FeatureRequest stellen, der genau dieses Problem für größere Umgebungen mit zentral verwalteten Systemen behebt.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Der Ort der sftpplug.ini ist bewusst derselbe wie der Ort der wincmd.ini: Wenn Firmen nicht wollen, dass User die wincmd.ini ändern, dann ist es eher unwahrscheinlich, dass sie dem Benutzer ein frei konfiguriertes SFTP erlauben. Normalerweise kommen dann in die sftpplug.ini die in der Firma erlaubten Verbindungen, fertig. ansosnten könnte ja jemand Geschäftsgeheimnisse an einen fremden Server schicken.
Author of Total Commander
https://www.ghisler.com
derhoeppi
Junior Member
Junior Member
Posts: 5
Joined: 2018-07-02, 08:48 UTC

Post by *derhoeppi »

Das der Ort der sftpplug.ini gleich der wincmd.ini stört mich ja nicht weiter, aber warum ist es nicht der Ort der AlternateUserIni? Es müsste ja nicht mal fix sein, aber vielleicht gäbe es eine Möglichkeit den Ort der Plugin-Ini's irgendwo zu konfigurieren. Das mit den Geschäftsgeheimnissen, die auf einen anderen SFTP Server kopiert werden mag ich bezweifeln, weil es voraussetzen würde das jemand Port 22 nach außen freigibt. Und wer das für alle macht, handelt eh unwissentlich und stört sich auch nicht an der Sicherheit der gesamten Konfigurationsdateien.
Das SFTP Plugin ist jedoch nur ein Bespiel. Wenn sich die Plugins alle so verhalten, kann ich leider keine zentrale Bereitstellung der Plugins realisieren. Das wiederum ist für die Usability unschön. Wenns es bereits konfiguriert wäre, würden die Mitarbeiter sich vielleicht keine Workarounds ausdenken und für jedes (eigentlich vorhande Plugin) eine andere Software anfordern.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

warum ist es nicht der Ort der AlternateUserIni
Das wäre eine Möglichkeit. Allerdings kann man via RedirectSection auch einzelne Abschnitte umlenken, da gäbe es dann wieder ein Problem.
Author of Total Commander
https://www.ghisler.com
Post Reply