Python in Zope auch objektorientiert?

Django, Flask, Bottle, WSGI, CGI…
Antworten
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Hi,

bisher hab ich immer nur gelesen, dass man auf externe Methoden zugreifen kann. Ist es genauso gut möglich, in Pythonscripten Objekte von externen Klassen zu definieren oder muss ich das in einer externen Methode machen?

Thx & Gruß, Dussel
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

dusselmann hat geschrieben:Hi,

bisher hab ich immer nur gelesen, dass man auf externe Methoden zugreifen kann. Ist es genauso gut möglich, in Pythonscripten Objekte von externen Klassen zu definieren oder muss ich das in einer externen Methode machen?

Thx & Gruß, Dussel
Hi Dussel!

Das was man in einem *normalen* Python-Script im Zope importieren kann ist aus Sicherheitsgründen sehr eingeschränkt. Die Entwickler von Zope vertreten damit die Meinung, dass wenn jemand auf den Ordner Zugriff hat, in dem Zope oder eine Zope-Instanz installiert ist, dann kann er sowiso alles tun. Hat jemand aber keinen Zugriff darauf, dann handelt es sich evt. um einen nicht so vertrauenswürdigen Benutzer. Dieser Benutzer darf Python-Scripts erstellen und deren eingeschränkte Möglichkeiten nutzen.

Hier ein Link zu den frei geschalteten Modulen und zu einer Erklärung über die Codesicherheit in Zope:
http://zope1.free.de/plonebuch/PloneBuc ... tes-python

Das mit den externen Methoden funktioniert ziemlich einfach. Hier ein Link dazu:
http://zope1.free.de/plonebuch/PloneBuc ... -verwenden

Allgemeine Erklärung zu PythonScript: http://wiki.zope.org/zope2/PythonScript

Und hier noch eine Erklärung, wie du spezielle Module frei schalten kannst.
http://wiki.zope.org/zope2/HowToAddModu ... rictedCode

mfg
Gerold
:-)

Stichworte: external method externe methode

Edit: Einige kleine Änderungen am Text durchgefüht... Links aktualisiert.
Zuletzt geändert von gerold am Mittwoch 10. Januar 2007, 22:28, insgesamt 6-mal geändert.
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Hi,

danke für die nützlichen Links!

Ich hab das so verstanden, dass man in externen Methoden ALLE im System vorhandenen Module nutzen kann. Hatte ich das falsch verstanden?

Gruß, Dussel
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

dusselmann hat geschrieben: Ich hab das so verstanden, dass man in externen Methoden ALLE im System vorhandenen Module nutzen kann.
Hi Dussel!

Das hast du schon richtig verstanden. Aber mit dem letzen Link, den ich aufgezeigt habe, hast du *zusätzlich* dir Möglichkeit, Python-Module für die Verwendung in einem Python-Script frei zu schalten.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

cool, danke dir! :)
Antworten