Benutzer verwalten (betriebssystemunabhängig)

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
droptix
User
Beiträge: 521
Registriert: Donnerstag 13. Oktober 2005, 21:27

Kann man mit eingebauten Python-Mitteln Benutzer und Gruppen anlegen, bearbeiten und löschen?

Wenn nein, wie könnte man sowas noch realisieren (außer einen betriebssystemspezifischen Befehl aufzurufen)?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Nein, kann man nicht. Ist auch sehr aufwendig, so etwas Betriebssystem und Konfigurationsumabhängig zu machen. Es gibt ja zig Möglichkeiten: Windows mit lokaler Anmeldung, Windows mit Anmeldung über Active Directory, Linux & PAM/LDAP/Kerberos, *BSD, etc.
droptix hat geschrieben:Wenn nein, wie könnte man sowas noch realisieren (außer einen betriebssystemspezifischen Befehl aufzurufen)?
Die Betriebssystemspezifischen Programme nachbauen? Eigentlich wäre das Aufrufen dieser Programme genau der Weg der zu gehen ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Ich bin in dieser Hinsicht auch der Meinung von Leonidas. Das OS bringt entsprechende API-Calls oder Tools mit, also werden diese auch genutzt... und gut.
Wenn man auf vielen Platformen plattformabhaengige Sachen manipulieren will - wie also zB bei einer Benutzerverwaltung - dann muss man schon ein bisschen auf das jeweilige Betriebsystem eingehen.

Gruß
NKoehring
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
windner
User
Beiträge: 76
Registriert: Freitag 19. Oktober 2007, 11:25

Das OS bringt entsprechende API-Calls oder Tools mit
De facto beides.

Zumindest auf *ix sollte es aber trotzdem mit Bordmitteln gehn, weil's meistens nur Textdatein sind. Und sonst gibt's eingentlich nur Windows; damit hat man 99% der Softwarelandschaft erfasst.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

windner hat geschrieben:Zumindest auf *ix sollte es aber trotzdem mit Bordmitteln gehn, weil's meistens nur Textdatein sind.
Die zu editieren sind aber oft `root`-Rechte nötig. Da ist es einfacher einige Regeln in `sudo` einzurichten und diese dann über `sudo` in deinem Programm aufzurufen statt das Programm mit root-Rechten am laufen zu haben. Stell dir vor, dein Programm crasht während es `passwd` oder `shadow` schreibt. Vom Sicherheitsaspekt ist das vermutlich auch vorteilhafter.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
windner
User
Beiträge: 76
Registriert: Freitag 19. Oktober 2007, 11:25

Stimmt.

Btw ist mir neulich auf OS X folgendes aufgefallen:

Code: Alles auswählen

# cat /etc/passwd | wc
17 17 170 (oder so ähnlich, jedenfalls alles nur nicht leer)
# who am i
Franz
# cat /etc/passwd | grep -i franz
#
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

windner hat geschrieben:

Code: Alles auswählen

# cat /etc/passwd | grep -i franz
Useless use of `cat` ;)
Mac OS X verwaltet die lokalen Benutzer-Accounts und Gruppen nicht, wie üblich, in der /etc/passwd bzw. der /etc/group.

Diese werden bei Mac OS zentral in einem Verzeichnis (NetInfo Directory) hinterlegt, vergleichbar mit einem LDAP3-Dienst.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
windner
User
Beiträge: 76
Registriert: Freitag 19. Oktober 2007, 11:25

Ahhhhh.
Frage lieber nicht warum, wird schon einen Sinn haben...
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

wie wärs mit

Code: Alles auswählen

grep -i franz /etc/passwd
;)
Antworten