Danke für den Hinweis. Leider ist die Situation nicht so rosig, wie dargestellt. Einige Klarstellungen hierzu:
Man muss unterscheiden zwischen Sandboxing und App Sandboxing. Sandboxing an sich gibt es in der Tat schon lange in Mac OS X und hat sich bewährt.
App Sandboxing ist dagegen neu und funktioniert erst ab Mac OS X Lion oder höher. Der Unterschied ist, dass sich nicht ein laufendes Programm selber in eine Sandbox steckt, die dann maßgeschneidert ist, sondern dass in das Programm nun ein "Beipackzettel" eingebaut ist, in dem bestimmte (von Apple fest vorgegebene!) Programmeinschränkungen ein- oder ausgeschaltet werden. Beim Start des Programms steckt das Betriebssystem das Programm in eine passende App Sandbox, die anhand dieser Einschränkungsliste aufgebaut wird. Zusätzlich wird im Privatordner des aufrufenen Benutzers ein neuer Pseudo-Privatordner angelegt, in den dann alle Teile aus dem echten Privatordner hineinkopiert oder -gelinkt werden, die das Programm sehen darf.
Die von Apple vorgegebenen Definitionen von Programmeinschränkungen heißen "Entitlements".
Der simulierte Privatordner heißt "Sandbox Container".
Diese neue Art Sandbox führt also zu zwei wichtigen Änderungen:
1) In älteren Betriebssystemen wird die Liste der Entitlements ignoriert. Dort läuft eine App dann ohne Sandbox.
2) Die App Sandbox ist nicht mehr maßgeschneidert, sondern muss sich an den von Apple vordefinierten Entitlements orientieren.
Punkt (2) ist sehr, sehr kritisch, denn die in Lion vorhandene Auswahl von Entitlements ist zum einen sehr unausgereift, zum anderen ist an bestimmten Definitionen abzusehen, dass Apple offenbar plant, Apps (i.S.v. Mac App Store-Programmen) in Zukunft noch viel weiter einzuschränken, als dies heute schon der Fall ist.
Mit den jetzigen Entitlements ist es z.B. schon verboten, dass sich Apps gemeinsame Einstellungen (Benutzerpräferenzen) teilen. Wenn in zwei Apps eines Herstellers also eine Komfortfunktion vorhanden war, dass z.B. Farb- und Schrifteinstellungen der einen App automatisch in die andere übernommen werden konnten, so wird das ab März 2012 gesperrt sein. Jede App darf nur noch ihre eigenen Einstellungen sehen.
Weitere Einschränkungen betreffen z.B. das Senden jeglicher Apple Events. Das wird das Aus für Apps bedeuten, die beispielsweise iTunes oder QuickTime fernsteuern.
Auch das Scannen von Dateisystemen könnte in Zukunft für Apps verboten sein. Virenscanner oder Programme, die Speicherplatzverbraucher auf den Festplatten suchen, oder auch bereits Programme, die Spotlight verwenden, werden dann (nach heutigem Kenntnisstand) aus dem App Store fliegen.
Apple selbst hat es im Moment erst bei zwei Apps geschafft, sie in eine App Sandbox-Version umzuprogrammieren: TextEdit und Vorschau. Und es gibt Sonderfälle, wo beide Apps aufgrund der Sandbox fehlerhaft arbeiten.
Safari läuft nicht in einer App Sandbox. Stattdessen verwendet Safari einen Hilfsprozess mit dem Namen "WebProcess", der in einer normalen Sandbox läuft.
Die Fragen der Entwickler "wie kann ich in Zukunft eine App entwickeln, die die bisher übliche, Mac-artige Funktionalität XYZ erbringt, wenn es kein Entitlement gibt, das dies erlaubt?" wurde bisher von Apple nach dem Motto beantwortet "Keine Ahnung. Schreibt einen Bug Report, dann kümmern wir uns darum, vielleicht aber auch nicht".
Das hat natürlich extremen Unmut unter App-Entwicklern ausgelöst. Manche sollen sogar die Mac-App-Entwicklung aufgegeben haben.
Apple hatte vor, die App-Sandboxing-Pflicht zum 1. November 2011 einzuführen. Damit sind sie gescheitert. Die Sache wurde bis auf Weiteres auf den 1. März 2012 verschoben.