@LuckyLuke79: Es ist in .NET selbst nicht möglich, den Zugriff auf einzelne Eigenschaften für bestimmte Objekte zu verhindern. Mag sein, dass IronPython das unterstützt, das müsstest selbst in dessen Dokumentation nachschlagen, ich kenne IronPython nicht.
Falls nicht, kannst Du die Skripte in eine eigene Anwendungsdomäne (siehe "System.AppDomain") laden. Anwendungsdomänen sind so etwas wie unabhängige Programmteile, und die Laufzeitumgebung verhindert den Zugriff auf Objekte einer anderen Anwendungsdomäne. Damit Deine Skripte trotzdem auf Objekte des Programms zugreifen können, musst Du
für jedes Objekt, dass einem Skript zur Verfügung gestellt werden soll, eine Wrapper-Klasse implementieren, die von "MarshalByRefObject" ableitet. Der Rückgabewerte jeder Methode und jeder Eigenschaft, die ein solches Objekt exportiert, muss ebenfalls von "MarshalByRefObject" ableiten.
Je nachdem, wie viele Klassen Dein Programm hat, wird das sehr aufwendig. Zudem sind manche Dinge dann effektiv unmöglich, da Skripte niemals auf ursprünglichen Objekte zugreifen können, und auch keine Objekte direkt aus ihrer Domäne in das Programm injizieren können. Mithin ist die Vererbungshierarchie über die Grenze der Anwendungsdomäne hin anders, und Skripte können beispielsweise keine Knöpfe in der GUI anzeigen, eben da sie kein "Button"-Objekt in das Programm injizieren können.
Ich sehe die Sache allerdings ebenso wie deets: Ein lokal installiertes GUI-Programm unterliegt ohnehin keiner Kontrolle, und kann so ziemlich alles veranstalten, selbst wenn Du den Zugriff auf einige Eigenschaften einschränken könntest. Der Praktikant könnte mit einem Skript beispielsweise auch einfach das Benutzerverzeichnis der „Dame“ löschen, oder nur die Desktop-Verknüpfung Deines Programms durch eine auf Solitär ersetzen, usw. Das ließe sich zwar mit den Mittel des .NET Frameworks ebenfalls verhindern, doch das ist dann sehr aufwendig, weil Du eine Whitelist mit erlaubten Operationen definieren musst.
Mehr noch, wenn Du Deinem Praktikanten derartige Scherze zutraust, dann hast Du schon den ersten Fehler begangen, wenn Du ihn überhaupt an die Computer zugreifen lässt. Denn für die obig beschrieben Scherze braucht man nicht mal ein Skript, das geht auch direkt im Windows Explorer