Autor Thema: Theorie: Mögliche Benutzerreaktion auf Dateisystem-Idee  (Gelesen 17098 mal)

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
Hi.

Ich hatte in den letzten Tage ein paar Gedanken zum Thema "Benutzer - DAU - Profi - ..." im Zusammenhang mit Datenzugriff.

Ich möchte von einigen anderen Personen die Ahnung von dem Gebiet OS Entwicklung haben mal wissen, wo die Grenzen für Verständnis stecken, ihrer Meinung nach.

Beispielsweise: Das Dateisystem erlaubt NIEMANDEN in OS-Daten, Programmdaten, treiber einzusehen. Der einzig sichtbare Teil des Dateisystems wären halt die Benutzerdateien. Der Rest wird geschützt vom System verwaltet und ist und bleibt nicht einsehbar.

-> Wie das ganze zu realisieren wäre lasse ich mal aussen vor, es geht mir rein um die Theorie, wie der Benutzer sich verhalten KÖNNTE. <-

Ich sperre den Benutzer sozusagen in die eigenen Dateien ein. Höher berechtigte Benutzer "root, Admin, whatever...", können natürlich in alle Dateien der Benutzer einsehen.

Ich denke mal das erklärt meinen Gedanken.
Ich wäre mir aber nicht sicher wie der Benutzer bei so einem Konzept reagiert? Kein Vertrauen, weil er nicht alles sieht? (Verschwörungstheorie ^^) --- Zufriedenheit - da es sehr einfach und übersichtlich zu bedienen wäre...

Für Meinungen / Kritik wäre ich Dankbar.

Silver

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 22. December 2005, 12:37 »
Das wäre eine gute Idee, denn so wäre das System auch gegenüber Viren viel sicherer.
Ich als Benutzer würde mich nicht aufregen, sofern man das System über ein einziges gut strukturiertes Einstellungsmenü mit vielen Einstellungen konfigurieren kann.

Ich werds warscheihnlich auch irgendwie so machen.

Gruss
Nooooooooos

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 22. December 2005, 13:45 »
THX für die Antwort.

Ziel ist es, dem Benutzer eine einfache Struktur vorzulegen. Diese einfache Struktur soll natürlich weniger Angriffsfläche als ein aufwändiges Dateisystem bieten, da ja nur die Benutzerdateien "öffentlich" liegen und durch ein sehr simples Rechtesystem geschützt werden (das ist in meinem Plan noch nicht ausgereift - ich mache mir z.Zt. eher sorgen zu meinem Jetzigen "Ideen-Stand" die interne umsetzung zu machen.

Nur mit den vielen Einstellungen bin ich auf dem Kriegspfad (Muss der Benutzer denn wirklich jedes Detail einstellen dürfen / können?). Was würdest du denn an "vielen Einstellungen" vermissen?

Silver

Legend

  • Beiträge: 635
    • Profil anzeigen
    • http://os.joachimnock.de
Gespeichert
« Antwort #3 am: 22. December 2005, 17:00 »
Nun ja, beim Dau könnte ich mir auch Verwirrung vorstellen wenn es mal so (wenn er es normal benutzt) und mal so (wenn er doch mach als "Admin" arbeiten muss) aussieht.
*post*

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #4 am: 22. December 2005, 18:00 »
Nutzer, die sich ein bisschen besser auskennen, werden es warscheinlich einfach praktisch finden, ihr System so anzupassen, dass sie schnell und unkompliziert arbeiten können.

Man könnte ja zwei Einstellungsmenüs machen, eins für Anfänger, dies gern einfach haben und eins für Professionelle Nutzer.

Gruss
Nooooooooos

T0ast3r

  • Gast
Gespeichert
« Antwort #5 am: 22. December 2005, 19:22 »
huhu, mach doch einfach 2 Root Directorys; eins fürs System und das andere fürn User;
So mach ichs und so stehts auch in meinen aktuellen Tutorial über Dateisysteme (OS developing Theorie I)

Und dann könntest du ev. im User Root Directory ein Ordner (z. B. C:\System) mit dem System Root Directory linken.

lg,

Toaster

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
« Antwort #6 am: 22. December 2005, 19:44 »
@Legend:

ROOT Ansicht:
/Benutzer A
- /Eigene Dateien
- /Programmdaten (Vielleicht versteckt & nur über Netzwerk als Root einsehbar)
/Benutzer B
- /Eigene Dateien
- /Programmdaten (Vielleicht versteckt & nur über Netzwerk als Root einsehbar)
/Öffentlich
- /Eigene Dateien
- /Programmdaten (Vielleicht versteckt & nur über Netzwerk als Root einsehbar)
/Netzwerkumgebung
/DVD-Laufwerk
/DVD-Brenner
/USB-Stick

Benutzeransicht "Benutzer A":
/Eigene Dateien
/Programmdaten (Vielleicht versteckt & nur über Netzwerk als Root einsehbar)
/Öffentlich
- /Eigene Dateien
- /Programmdaten (Vielleicht versteckt & nur über Netzwerk als Root einsehbar)
/Netzwerkumgebung
/DVD-Laufwerk
/DVD-Brenner
/USB-Stick

Natürlich alles als Tree ansicht.

So sollte das nicht verwirren. Der Admin / Root bekommt keine Eigenen Dateien um zu verhindern, dass er als normaler Account genutzt wird. Auch der Admin sollte sich einen normalen Benutzer anschaffen.


@nooooooooos:
So wie oben dargestellt ist es schnell zugänglich, effizient und der Benutzer kann seine Dateien und Verzeichnisse unterhalb von "Eigene Dateien" selber verwalten wie er möchte.


@T0ast3r:
Wie gesagt, wie das intern aussehen soll bin ich mir noch ganz und gar nicht sicher. Ich überlege schon seit Tagen rum wie sich die Daten am effizientesten legen lassen, und zwar so, dass sie von mir (oder sonstigen OS Entwicklern) unkompliziert genutzt werden können (also die Nutzung leicht und effizient programmieren lässt).
Nur dass der Benutzer halt im Dateisystem nichts vom System und den Programmen wiederfindet. Dazu wird es in der Konfiguration "ala Systemsteuerung" Einträge geben, Programme zu entfernen, Systemeinstellungen zu verändern (die sowieso in /Benutzername/Programmdaten/System bzw im AllUsers / Öffentlich Ordner (oder ähnlich) liegen.

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #7 am: 22. December 2005, 20:34 »
Ich glaube, wie das ganze intern verwaltet wird, ist relativ egal. Das entscheidene in dieser Frage ist eher, wie das Dateisystem dem Benutzer präsentiert wird. Windows macht es ja vor: Der Desktop liegt zwar in irgendeinem Unterverzeichnis herum, wird aber von den Benutzern trotzdem als oberste Ebene angesehen, weil er eben so präsentiert wird.

Wie der Verzeichnisbaum jetzt aber konkret aussehen muß, kann man sich sicher beliebig lang streiten.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
« Antwort #8 am: 23. December 2005, 00:00 »
Zitat von: taljeth
Ich glaube, wie das ganze intern verwaltet wird, ist relativ egal. Das entscheidene in dieser Frage ist eher, wie das Dateisystem dem Benutzer präsentiert wird. Windows macht es ja vor: Der Desktop liegt zwar in irgendeinem Unterverzeichnis herum, wird aber von den Benutzern trotzdem als oberste Ebene angesehen, weil er eben so präsentiert wird.

Wie der Verzeichnisbaum jetzt aber konkret aussehen muß, kann man sich sicher beliebig lang streiten.

Da hast du irgendwie recht. Wenn ich meine Idee / Konzept so realisieren würde, würden sich die Benutzer langsam daran anpassen, solange es wirklich nicht nach Verschwörung, etc, aussieht.

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #9 am: 23. December 2005, 00:39 »
Was ich auf keinen Fall machen würde, ist den normalen Benutzern jeden Zugriff auf die System- und Programmdateien zu verbieten. Ansonsten landen am Ende alle Programme bei den Daten, weil jeder Zugriff auf alles haben will, egal, ob er sich eigentlich genug damit auskennt. Die einzige Möglichkeit, das zu verhindern, wäre, in dem Datenverzeichnis grundsätzlich keine Programme auszuführen. Dann wiederum stelle ich es mir relativ problematisch vor, Software auf diesem System zu entwickeln...

Gegen den Benutzer arbeiten und ihn künstlich einschränken, funktioniert nicht, denn dann wird er immer um die Sicherheitsmechanismen herumarbeiten.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
« Antwort #10 am: 23. December 2005, 10:38 »
Eigentlich wollte ich jetz mit so nem Kommentar werfen wie "Hast du alles gelesen?" Aber da ist mit eingefallen, dass ich diese Informationen nicht geschrieben hatte.... Sollte eigentlich der zweite Post werden, aber ich hatte mich aus irgend einem vergessenen Grund dafür entschieden, es nicht zu schreiben. Also dacht ich ich hätts geschrieben aber ... ^^:

Ich nenne das Dateisystem nicht Dateisystem, sondern Festplatten-Management-System. Das Dateisystem ist einer von 3 Bereichen (Der einzige direkt sichtbare).
Das Betriebssystem ist ein Teil (Modulare erweiterung (Treiber, etc), und die Programme ("Programm-Packete") bilden den zweiten. Der Zweck ist, dass diese nicht sichtbar sind und nicht zum "Dateisystem gehören". Programm-packete werden durch einen vom System bereitgestellten Installer hinzugefügt.
Das Nachteil ist klar: jedes noch so kleine Programm (auch selbstgeschrieben) muss beim Betriebssystem registriert werden. Der Vorteil wenn nur registrierte Programme ausgeführt werden können: Maximale Sicherheit und leichtes Management (u.A. Rechteverwaltung durch Root).

Sry, dass ich vergessen habe das zu cshreiben. Ich denke über das Konzept so viel nach, und ich bin von Natur aus so zerstreut... Lassen wir das ^^

So, jetz nochmal deine Meinung taljeth (und die anderen) ;)

THX

Silver

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #11 am: 23. December 2005, 12:23 »
Zitat von: SilverKnight

Das Nachteil ist klar: jedes noch so kleine Programm (auch selbstgeschrieben) muss beim Betriebssystem registriert werden. Der Vorteil wenn nur registrierte Programme ausgeführt werden können: Maximale Sicherheit und leichtes Management (u.A. Rechteverwaltung durch Root).


Sehr unpraktisch, finde ich... Das garantiert zwar fast 100%ige Sicherheit vor Viren, allerdings wird so auch niemand für dein System entwickeln, vorallem keine Hobby-Coder oder so. Und du musst ständig dein OS updaten. Oder zumindest die Tabelle, in der alle registrierten Programme stehen. Das bremst die Entwicklung/Benutzung eines OS enorm. Sollte es aber trotzdem "groß" werden, so wird man schnell Hacks finden, die die Tabelle entsprechend manipulieren um neue Programme installieren zu können.
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
« Antwort #12 am: 23. December 2005, 12:35 »
Zitat von: joachim_neu
Sehr unpraktisch, finde ich... Das garantiert zwar fast 100%ige Sicherheit vor Viren, allerdings wird so auch niemand für dein System entwickeln, vorallem keine Hobby-Coder oder so. Und du musst ständig dein OS updaten. Oder zumindest die Tabelle, in der alle registrierten Programme stehen. Das bremst die Entwicklung/Benutzung eines OS enorm. Sollte es aber trotzdem "groß" werden, so wird man schnell Hacks finden, die die Tabelle entsprechend manipulieren um neue Programme installieren zu können.


Wo genau siehst du die Propleme beim Entwickeln?

Legend

  • Beiträge: 635
    • Profil anzeigen
    • http://os.joachimnock.de
Gespeichert
« Antwort #13 am: 23. December 2005, 12:46 »
Na ja - um ein Programm zu testen entwickel ich es, kompilier es dann, muss dann Administrator werden um es zu installieren und kann es dann erst ausführen? Und das für jeden einzelnen Build?
*post*

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
« Antwort #14 am: 23. December 2005, 13:03 »
Das ist mir auch im Kopf. Ich überlege schon krampfhaft eine Lösung ohne das Konzept komplett überarbeiten zu müssen. Vielleicht nen Modus den der Root anschalten kann wo es auch erlaubt ist, WindowsEXE oder Linux* zu starten... Was weiss ich. Muss ma drüber nachdenken.

SilverKnight

  • Beiträge: 20
    • Profil anzeigen
Gespeichert
« Antwort #15 am: 23. December 2005, 13:06 »
Oder wie wäre es mit Patches? Man entwickelt ein Programm neu, compiliert zum Packet, installiert, testet, erstellt weiter, compiliert, erstellt n Patch vom Original zum NeuPacket (automatisiert vielleicht (Script, etc)) und patcht dann die Anwendung. Wäre auch ne ersparnis (vielleicht alles direkt automatisieren, wenn das OS erkennt dass das Programm Debugbar ist, oder sowas.....
*aufschreib*

Muss ma Ideen sammeln und vergleichen

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #16 am: 23. December 2005, 16:03 »
Zitat von: Legend
Na ja - um ein Programm zu testen entwickel ich es, kompilier es dann, muss dann Administrator werden um es zu installieren und kann es dann erst ausführen? Und das für jeden einzelnen Build?


Achso, ich dachte man müsste das Teil dann beim Entwickler des OS "registrieren", damit der das in seine Tabelle aufnimmt...
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

nooooooooos

  • Beiträge: 734
    • Profil anzeigen
Gespeichert
« Antwort #17 am: 23. December 2005, 17:01 »
Du könntest es ja so machen, dass eine Programmdatei (z.B .com) eine ganz normale Datei ist, wie eine Textdatei usw. Aber wenn man sie anklickt wird sie nicht gestartet, sondern ein Installer (vom OS bereitgestellt) gestartet, welcher sie in die Tabelle aufnimmt.
Dann wäre es einfacher für Entwickler.

Gruss
Nooooooooos

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #18 am: 23. December 2005, 19:02 »
Hm, den größten Teil des Aufwands beim Kompilieren/Installieren kann sicher eine Entwicklungsumgebung übernehmen. Aber wenn ich bei jedem Kompiliervorgang das Adminpaßwort eingeben müßte, würde ich mir leicht verarscht vorkommen. Und wenn die Paßworteingabe nicht nötig wäre, wäre das ganze Sicherheitskonzept schon wieder unterhöhlt.

Darf man übrigens mal nach der "Zielgruppe" fragen? In einem echten Mehrbenutzersystem würdest du Softwareentwicklung komplett unterbinden, denn da hat garantiert nicht jeder Adminrechte. Außerdem möchten die meisten Benutzer wohl ab und zu auch mal selbst kleinere Programme installieren, die der Admin nicht vorgesehen hat - in meinem Homeverzeichnis in der Uni liegt da auch das ein oder andere rum.

Eine mögliche Lösung wäre es, jedem Benutzer neben einem Daten-Verzeichnis auch ein Programm-Verzeichnis zur Verfügung zu stellen, in das er installieren kann. Das wäre dann aber eine Lösung, die ausschließlich auf die Übersichtlichkeit abzielt, die Sicherheit wäre wieder dahin. Nur: Wenn du eine solche Möglichkeit nicht schaffst, werden deine Benutzer rebellieren und entweder ein anderes System benutzen oder sich irgendwelche Tools besorgen, die das erledigen. ;)


Nachtrag: Ja, ich weiß, wer lesen kann... Wenn du also sowieso für die Benutzer ein privates Programmverzeichnis vorsiehst, brauchen wir über die Sicherheitsthematik natürlich nicht mehr reden. Und da sehe ich dann auch einen Widerspruch in deinen Aussagen.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

Legend

  • Beiträge: 635
    • Profil anzeigen
    • http://os.joachimnock.de
Gespeichert
« Antwort #19 am: 23. December 2005, 19:36 »
Zitat von: joachim_neu
Zitat von: Legend
Na ja - um ein Programm zu testen entwickel ich es, kompilier es dann, muss dann Administrator werden um es zu installieren und kann es dann erst ausführen? Und das für jeden einzelnen Build?


Achso, ich dachte man müsste das Teil dann beim Entwickler des OS "registrieren", damit der das in seine Tabelle aufnimmt...


Nun, das wär dann halt noch schlimmer.
Ich glaub der Teil lohnt sich nur für System auf denen nicht entwickelt werden soll. Kurz um, ich glaub Entwickler werden sowas abschalten müssen.
*post*

 

Einloggen