Enterprise Policy Generator

  • Hallo,
    bin neu hier und begeistert vom Policy Generator. Vielen Dank für die tolle Arbeit.
    Habe mal eine Verständnisfrage: wird die Datei policies.json bei jedem Aufruf von FF neu eingelesen und damit zwischenzeitlich evtl. durch User getätigte Änderungen wieder auf die gesetzten Einstellungen zurück gesetzt? So hätte ich es erwartet. Bei mir zeigt sich allerdings ein anderes Verhalten: habe unter anderem Proxy-Einstellungen vorbelegt. Wenn ich diese beim User verändere bleiben die Änderungen dauerhaft erhalten. Mache ich etwas falsch? Kann ich FF dazu zwingen die Datei jedesmal neu zu lesen und anzuwenden?

  • Hab gerade nochmal was probiert:

    man muss die Einstellungen vor Veränderungen durch den User schützen.
    [attachment=0]Proxyfehler.JPG[/attachment]

    Macht man das nicht, dann bleiben Änderungen vom User erhalten und werden nicht - was ich allerdings eigentlich erwarten würde - beim Neustart überschrieben.

    Ist das so gewollt oder ein Bug?


  • Hallo,

    das ist gewollt. Ansonsten würde es die Option zum Schützen vor Veränderungen nicht geben. ;) Es besteht ganz bewusst die Möglichkeit, einen Standard vorzugeben, den der Nutzer überschreiben kann.

    Was mich dabei nur wundert ist die Tatsache, dass Änderungen an den Proxyeinstellungen dann gar nicht mehr an den User übergeben werden außer ich sperre die Einstellungen.

    Anders gefragt: wie kann ich User, die abweichende Einstellungen getroffen haben über Änderungen der Unternehmens-Default-Einstellungen informieren?


  • Was mich dabei nur wundert ist die Tatsache, dass Änderungen an den Proxyeinstellungen dann gar nicht mehr an den User übergeben werden außer ich sperre die Einstellungen.

    Anders gefragt: wie kann ich User, die abweichende Einstellungen getroffen haben über Änderungen der Unternehmens-Default-Einstellungen informieren?

    Ich kenne das in Unternehmen eigentlich so, daß die Arbeits-PCs über einen Unternehmensserver gehen und auf diesem der Proxy eingestellt ist! Dadurch kann man im Browser einstellen was man will, der Server verwendet immer den Proxy und damit sind die Nutzer auch immer über diesen verbunden.

    Auch wenn das jetzt privat ist, als Beispiel kann ich das trotzdem verwenden:

    Ich stelle in meiner Fritzbox einen Proxy ein und alle damit verbundenen PCs gehen dadurch zwangsweise immer über diesen Proxy!

  • Ich habe die Arbeiten am großen Update für den Enterprise Policy Generator auf Version 5.0 begonnen. Wem Fehler oder Ungereimtheiten bekannt sind oder sonstiges Feedback hat, die nächsten Tage wäre eine gute Gelegenheit, das Feedback loszuwerden.

    Bereits umgesetzt:

    https://github.com/cadeyrn/enterp…one/15?closed=1

    Noch offen:

    https://github.com/cadeyrn/enterp…or/milestone/15

    Und um noch etwas ferner in die Zukunft zu sehen: Thunderbird unterstützt seit Version 68 ebenfalls Enterprise Policies. Der Enterprise Policy Generator 6.0 (Release-Datum: noch offen) wird erstmals auch Policies für Thunderbird unterstützen.

  • Betatester gesucht!

    Ich würde mich über den einen oder anderen Beta-Tester für den Enterprise Policy Generator 5.0 freuen.

    Download Enterprise Policy Generator 5.0 Beta 1:

    https://send.firefox.com/download/2ad14…xDmgxjxiDJgad9Q

    Die Vorabversion ist wie immer nicht signiert, d.h. testen über about:debugging oder in einer Vorabversion von Firefox mit deaktivierter Signaturpflicht.

    Enterprise Policy Generator 5.0 beinhaltet zahlreiche Veränderungen unter der Haube, welche notwendig waren, um neue Arten von Policies zu unterstützen. Mich interessiert natürlich vor allem, ob die neuen Policy-Typen funktionieren, vor allem die zwei komplexen Typen der neuen Policy "Die Installation und Deinstallation von Erweiterungen verwalten" sowie Policies vom "Preference"-Typ, welcher sich dahingehend unterscheidet, dass verschiedene voneinander unabhängige Optionen im Enterprise Policy Generator in eine gemeisame Policy fließen ("Preference" im Suchfeld findet entsprechend Policies). Auch interessiert mich, ob noch alle Übersetzungen vorhanden sind, weil hier ein bisschen was angepasst und verschoben wurde.

    Eine vollständige Liste einer Neuerungen bis hierhin findet ihr hier:

    https://github.com/cadeyrn/enterp…09/CHANGELOG.md

    Was in dieser Version noch fehlt:

    Die Version entspricht noch nicht der finalen Version. Es kommen noch 21 (!) weitere Policies vom Typ "Preference" dazu und sämtliche Übersetzungen fehlen. Die Liste der Änderungen wird mit Erscheinen der finalen Version ins Deutsche übersetzt.

  • Achja, und ich bräuchte bitte Meinungen zu folgendem Punkt: Der Enterprise Policy Generator zeigt immer an, wenn eine Policy erst ab einer bestimmten Version verfügbar ist, z.B. "verfügbar ab Firefox 70 oder höher, Firefox ESR 68.2 oder höher".

    Enterprise Policy Generator 5.0 unterstützt Firefox 60 ESR nicht mehr, da EOL, dementsprechend erscheinen keine Versionsangaben für Policies mehr, welche vor Firefox 68 / Firefox ESR 68 (z.B. Firefox 66, Firefox ESR 60.3) implementiert worden sind. Ich möchte einfach nicht, dass die komplette Oberfläche mit Versionsangaben überladen ist.

    Aber nun sehe ich zwei Optionen:

    a) Versionshinweise für alle Policies ab Firefox 69 und Firefox ESR 68.1 anzeigen

    b) Versionshinweise bereits für alle Policies ab Firefox 68 und Firefox ESR 68.0 anzeigen

    Derzeit ist a) implementiert. Das hat den Vorteil, dass viel weniger Versionshinweise erscheinen. Gerade in Firefox 68.0 sind echt viele neue Policies dazu gekommen. Dafür hätte b) den Vorteil, dass man sieht, welche Policies in Firefox 68 neu dazu kamen.

    Beide Optionen haben etwas für sich. Wie sieht hier das allgemeine Stimmungsbild dazu aus?

  • Derzeit ist a) implementiert. Das hat den Vorteil, dass viel weniger Versionshinweise erscheinen. Gerade in Firefox 68.0 sind echt viele neue Policies dazu gekommen. Dafür hätte b) den Vorteil, dass man sieht, welche Policies in Firefox 68 neu dazu kamen.

    Beide Optionen haben etwas für sich. Wie sieht hier das allgemeine Stimmungsbild dazu aus?

    EPG ist ja in erster Linie für das Unternehmensumfeld gedacht. Wie sieht denn da das Updateverhalten aus? Gibt es denn da eine höhere Wahrscheinlichkeit, dass Unternehmen noch bei Fx 68.0 und Fx 68.0 ESR verharren? Ich persönlich lasse automatisch aktualisieren, für mich sind Fx 68.0 und Fx 68.0 ESR veraltet, sozusagen nicht mehr existent. Da wäre Option b) bereits nutzloser Ballast. Und am 22. kommen bereits Fx 70 und Fx 68.2 ESR.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Gibt es hier den einen oder anderen Nutzer meiner Erweiterung Enterprise Policy Generator, der Konfigurationen lokal gespeichert hat und/oder sogar die Import-/Export-Funktion schon verwendet hat? Da ich gerade an einem großen Update auf Version 6.0 arbeite, bei dem es entfernte, veränderte und ersetzte Unternehmensrichtlinien gibt und ich ein aufwändiges System zur Datenmigration von Richtlinien implementiert habe, würde ich es begrüßen, falls sich jemand melden würde, um eine Vorab-Version zu testen. Das wäre ziemlich wichtig, weil nichts ärgerlicher als ein Datenverlust ist, und oft zeigen sich Probleme erst unter realen Bedingungen, egal wie gut man vorher testet.

  • Ich habe mal die Erweiterung Version 5.1.0 geladen in einem portablen Firefox und 2 Kofigurationen angelegt.

    Jetzt blick ich nicht mehr ganz durch. Ich muss im Installationsverzeichnis aber schon noch den Ordner "distribution" anlegen und dort die vorher exportierte Datei "policies.json" rein legen, oder?

    EDIT: ojee, steht ja drüber bei der Erweiterung, dass ich das genau so machen muss. *kopfklatsch*

    Wenn es dir mit der portablen Version reicht, kann ich gerne damit für dich ein wenig testen.

    EDIT2: was mir hier schonmal auffällt ist, dass ich keine Datei importieren kann, denn es gibt keine Datei die auf .policies endet sondern nur diese Datei die auf .json endet (policies.json) :/

    Hilfe auch im deutschsprachigen Matrix-Chat möglich oder im IRC-Chat
    Meine Anleitungstexte dürfen gerne "geklaut" und weiter verwendet/kopiert werden ;)

    Einmal editiert, zuletzt von Zitronella (8. August 2020 um 22:40)

  • Wenn es dir mit der portablen Version reicht, kann ich gerne damit für dich ein wenig testen.

    Da sage ich nicht nein, Tester sind immer gut. ;) Portabel oder nicht wird hier keine Rolle spielen, zumal es im Endeffekt nicht einmal primär darum geht, ob die Policies funktionieren oder nicht. Ich meine, wenn eine Richtlinie nicht den erwarteten Effekt hat, kann das natürlich auch ein Fehler in der Erweiterung sein, weil entweder die Beschreibung fehlerhaft ist oder ich mich in der Umsetzung irgendwie vertan habe und vielleicht zwei Optionen vertauscht habe. Solches Feedback nehme ich selbstverständlich auch dankend an. Für mich geht es nach den letzten Änderungen aber vor allem um die Fragen:

    a) Wenn eine Konfiguration vorher gespeichert wurde, funktioniert diese nach dem Update auf die neueste Version noch, fehlt irgendwas oder ist irgendwas zwar migriert worden, aber mit einem falschen Wert?

    b) Wenn eine Konfiguration vorher exportiert wurde, kann diese Datei nach dem Update immer noch importiert werden und falls ja, ist alles korrekt?

    Denn wenn eine Richtlinie nicht korrekt funktioniert, kann ich es jederzeit einfach korrigieren, sofern es sich um keinen Fehler in der Firefox-Implementierung handelt. Dann wäre es Mozillas Baustelle. Ein Fehler in der Daten-Migration bedeutet aber einen unwiderruflichen Datenverlust (wenn es kein Backup gibt).

    EDIT2: was mir hier schonmal auffällt ist, dass ich keine Datei importieren kann, denn es gibt keine Datei die auf .policies endet sondern nur diese Datei die auf .json endet (policies.json)

    Die Datei policies.json kann man nicht in die Erweiterung importieren und das aus einem Grund, der einem vielleicht nicht sofort klar ist, aber dann doch eigentlich recht naheliegend ist, wenn man sich Folgendes bewusst macht: Die Datei policies.json beinhaltet Anweisungen für Firefox. Firefox weiß dadurch, wie er sich in bestimmten Situationen verhalten soll, welche Funktionen abgeschaltet werden sollen usw. Ansonsten beinhaltet die Datei nichts weiter. Die Datei weiß nichts über den Enterprise Policy Generator. Das heißt, in der Datei policies.json gibt es keinerlei Information darüber, welche Felder in der Erweiterung wie ausgefüllt sein müssen, um dieser JSON-Ausgabe zu entsprechen.

    Die Datei, welche auf .policies entdet, ist eine Konfigurationsdatei vom Enterprise Policy Generator in einem ganz eigenen Dateiformat, welches nur von dieser Erweiterung verstanden wird. Der Inhalt dieser Datei sieht etwas kryptisch aus, beispielsweise so:

    Code
    eyJuYW1lIjoiVGVzdCIsInRpbWUiOiIyMDIwLTA4LTA4VDE3OjM3OjI1Ljc2OVoiLCJjb25maWd1cmF0aW9uIjp7ImFycmF5ZmllbGRzIjp7Ikluc3RhbGxBZGRvbnNQZXJtaXNzaW9uX0FsbG93IjpbIjUiLCI3IiwiMyIsIjQiXX0sImNoZWNrYm94ZXMiOnsiSW5zdGFsbEFkZG9uc1Blcm1pc3Npb24iOnRydWUsIkROU092ZXJIVFRQUyI6dHJ1ZSwiUHJlZmVyZW5jZV9uZXR3b3JrX0lETl9zaG93X3B1bnljb2RlIjp0cnVlLCJBcHBVcGRhdGVVUkwiOnRydWV9LCJpbnB1dCI6eyJJbnN0YWxsQWRkb25zUGVybWlzc2lvbl9BbGxvd181IjoiaHR0cHM6Ly93d3cuQSIsIkluc3RhbGxBZGRvbnNQZXJtaXNzaW9uX0FsbG93XzciOiJodHRwczovL3d3dy5CIiwiSW5zdGFsbEFkZG9uc1Blcm1pc3Npb25fQWxsb3dfMyI6Imh0dHBzOi8vd3d3LkMiLCJJbnN0YWxsQWRkb25zUGVybWlzc2lvbl9BbGxvd180IjoiaHR0cHM6Ly93d3cuRCIsIkROU092ZXJIVFRQU19Qcm92aWRlclVSTCI6Imh0dHA6Ly93d3cuYmluZy5jb20iLCJBcHBVcGRhdGVVUkxfVGV4dCI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5kZSJ9LCJzZWxlY3QiOnsiSW5zdGFsbEFkZG9uc1Blcm1pc3Npb25fRGVmYXVsdCI6ImZhbHNlIiwiRE5TT3ZlckhUVFBTX0VuYWJsZWQiOiJ0cnVlIiwiUHJlZmVyZW5jZV9uZXR3b3JrX0lETl9zaG93X3B1bnljb2RlX1NlbGVjdCI6InRydWUifX19

    Firefox kann damit nichts anfangen. Im Endeffekt ist das eine simple Base64-Repräsentation der Konfiguration, welche zurück konvertiert so aussieht:

    Der Inhalt sieht also völlig anders aus als in der Datei policies.json. Zum Vergleich, so sieht die daraus generierte Datei policies.json aus:

    Die .policies-Datei beinhaltet alle Informationen, welcher der Enterprise Policy Generator benötigt, um die Konfiguration in der Erweiterung exakt so abzubilden, wie sie bei der Eingabe ausgesehen hatte. Und der Enterprise Policy Generator kann daraus dann wieder die Datei policies.json generieren, weil die Erweiterung damit in genau den Zustand gebracht wird, als hätte man die Erweiterung ohne Import gerade benutzt, und ich zahlreiche Regeln implementiert habe, wie der Enterprise Policy Generator aus der Eingabe die Datei policies.json generieren muss, damit diese Mozillas Definition entspricht.

    Wenn man eine Konfiguration gespeichert hat, findet man im Dialog zum Laden der Konfigurationen eine Schaltfläche, um die .policies-Datei zu exportieren, die dann später wieder importiert werden kann.

    ----

    Ich werde voraussichtlich morgen einen Beta-Build zum Testen bereitstellen und dann nochmal schreiben, welche Richtlinien konkret betroffen sind, was das Testen hoffentlich erleichtert. Aber natürlich muss sich der Test nicht darauf beschränken. Es kann sich ja auch etwas ganz anderes, was auf den ersten Blick nichts damit zu tun hat, in einer unerwarteten Weise auswirken. Daher am besten einfach so testen, als würde man das Tool real nutzen. Ich muss aber erst noch eine Sache fertigstellen, damit die Version bereit für den Test ist.

  • Im Anhang befindet sich eine ZIP-Datei. Diese entpacken, darin gibt es dann eine XPI-Datei. Die nicht signierte Erweiterung kann über about:debugging temporär geladen werden. Ist der Enterprise Policy Generator noch nicht installiert, entspricht das einer Neuinstallation. Ist bereits eine ältere Version installiert (https://addons.mozilla.org/de/firefox/add…licy-generator/), kann ebenfalls die neue Version über about:debugging geladen werden. In dem Fall wird ein (temporäres) Update durchgeführt. Das ist insofern relevant, als dass sowohl beim Update als auch beim Import von zuvor exportierten Konfigurationen der Code-Pfad ausgeführt wird, welcher Datenmigrationen vornimmt. Sprich das generierte Ergebnis der Datei policies.json sollte in v5 und v6 jeweils anders aussehen.

    Folgende Datenmigrationen finden statt:

    a)

    Code
    "SearchEngines": { "DefaultPrivate": "Google" }

    Die Option, für den privaten Modus eine separate Suchmaschine einzustellen, wurde aus dem EPG entfernt, da es das Feature nach einigen Versionen noch immer nicht in eine finale Firefox-Version geschafft hat. Davon solllte also nichtst mehr zu sehen sein.

    b)

    Code
    "DisplayMenuBar": true

    Die Option, die Menüleiste standardmäßig anzuzeigen, war vorher nur eine Checkbox und ist jetzt eine Option mit vier Möglichkeiten. Das sollte wie folgt migriert werden:

    Code
    "DisplayMenuBar": "default-on"

    c)

    Code
    "DisableMasterPasswordCreation": true

    Sollte hinterher wie folgt aussehen:

    Code
    "PrimaryPassword": false

    d)

    Code
    "DisableBuiltinPDFViewer": true

    Sollte hinterher wie folgt aussehen:

    Code
    "PDFjs": { "Enabled": false }

    e) und der komplexeste Fall (ich zeige hier zwei Möglichkeiten):

    Code
    "InstallAddonsPermission": { "Allow": ["https://www.camp-firefox.de"], "Default": true }
    
    "InstallAddonsPermission": { "Allow": ["https://www.camp-firefox.de"], "Default": false }

    Sollte hinterher wie folgt aussehen:

    Code
    "ExtensionSettings": { "*" : { "install_sources": ["https://www.camp-firefox.de"], "installation_mode": "allowed" } }
    
    "ExtensionSettings": { "*" : { "install_sources": ["https://www.camp-firefox.de"], "installation_mode": "blocked" } }

    Es darf aber gerne auch alles andere getestet werden. Hier eine Übersicht über alle bisherigen Neuerungen:

    https://github.com/cadeyrn/enterp…ess-version-600

  • Diese entpacken, darin gibt es dann eine XPI-Datei

    Ich habe im Nightly getestet, indem ich die Einstellung xpinstall.signature.enabled auf false gesetzt habe. Wenn ich schon den Komfort einer XPI-Datei habe ... :) Oder ist about:debugging besser, abgesehen mal davon, dass es im finalen Firefox nicht anders geht?

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • also ich habe mal die Konfiguration, die ich vor dem Update auf die Version 6.0.0b1 geladen, danach nichts verändert und erneut den Button "Richtlinien generieren" gedrückt und danach erneut die policies.json herunter geladen und verglichen.

    Report.zip in Report.html ändern, dann kann man es übersichtlich im Browser ansehen

  • Das ist der Inhalt meiner policies.json. Ich habe nur zwei Einstellungen angewendet:

    JavaScript
    {
      "policies": {
        "DisplayMenuBar": "always",
        "HardwareAcceleration": false
      }
    }

    Das entspricht:

    JavaScript
    "policy_description_DisplayMenuBar": {
    "message": "Zeige die Menüleiste standardmäßig"
    },

    und

    JavaScript
    "policy_description_HardwareAcceleration": {
        "message": "Hardwarebeschleunigung deaktivieren"
      },

    Beides funktioniert.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Report.zip

    Danke für's Testen! Wie hast du die Datei denn gepackt? Auf macOS kann die Datei nämlich nicht entpackt werden:


    Oder ist about:debugging besser, abgesehen mal davon, dass es im finalen Firefox nicht anders geht?

    Neben der Tatsache, dass das auch im finalen Firefox funktioniert, ist der entscheidende Unterschied, dass es wirklich nur temporär ist, d.h. sobald du Firefox neu startest, ist die Erweiterung wieder weg, beziehungsweise die alte Version wieder installiert, wenn die Erweiterung vorher schon in einer älteren Version installiert war.