• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

programm durch User nicht beenden..

dd3oc

Braeburn
Registriert
11.02.08
Beiträge
44
Hi macuser,

wie kann ich unter MAC OSX (10.5.3) erreichen, dass ein Standard-User ein automatisch gestartetes Programm nicht beenden kann. Ich schreibe diese Applikation selber und im Programm gib es kein Quit. Aber der User hat die Möglichkeit über "Sofort beenden" das Programm zu beenden.
Wie ist das zu verhindern?

Klemens
 

Dr.Apfelkern

Jerseymac
Registriert
18.04.07
Beiträge
454
In dem das Programm mit Rechten eines Root gestartet wird. Das ist der Super-Administrator des Systems und hat vorrangig die selben Rechte wie die im Hintergrund laufenden Applicationen die man im Dock nicht sehen, starten und beenden kann, nur z.B. im Tool "Aktivitätsanzeige" oder im Terminal per Befehl "kill". Ein Standard-User hat keine Root-Rechte, daher wird er dieses Programm nachher auch nicht beenden können.
 

dd3oc

Braeburn
Registriert
11.02.08
Beiträge
44
Hi,

ja, so ungefähr hätte ich mir das vorgestellt. Wie sieht die praktische Umsetzung aus? Wie kann ich erreichen, dass ein Programm nur mit ROOT Rechten gestartet wird, wenn sich nur ein bestimmter User mit Standard-Rechten anmeldet?

Klemens
 

Dr.Apfelkern

Jerseymac
Registriert
18.04.07
Beiträge
454
In dem du dein Terminal als Administrator startest und dort den Befehl eingibst:

Code:
sudo su

und Entertaste. Dein Admin-Passwort wird dann verlangt. Einfach eintippen und wieder Enter. Man sieht das Kennwort nicht, es wird bei der Eingabe nicht angezeigt.

Damit bist du nun Root, obwohl dieser im System nicht aktiviert ist. Man kann ihn auch direkt aktivieren über das Programm "Verzeichnisdienste" wenn man länger als Root arbeiten möchte. Ist aber im Normalfall nicht nötig.

Nun ziehst du dein Programm im Finder direkt ins Terminal und gibst wiederum die Entertaste zur Bestätigung ein. Dein Programm wird nun unter Root gestartet.

Man kann natürlich das Ganze auch unter dem Dienst Cron oder Launchd erledigen. Es gibt noch mehr Möglichkeiten. Da ich dich aber so einschätze, dass du im Grunde gar nichts darüber weißt, rate ich dir von dieser Art Programmstarts auszuführen eh ab. Benutze zur Verwaltung niederer Accounts einfach die Kindersicherung (Systemeinstellungen), wobei man Standard-Accounts einfach und gezielt Programmrechte zuweisen oder aberkennen kann.
 

pepi

Cellini
Registriert
03.09.05
Beiträge
8.740
"Sofort beenden" kannst Du nicht verhindern. Ich frage mich allerdings erstmal, was Dein Programm tut, und warum Du glaubst, daß Du es vor dem bösen User so schützen mußt.
Gruß Pepi