Re: [zope-pt] allow_module e Privilégios Insuficientes

2008-07-15 Por tôpico José Henrique
2008/7/14 Alexandre Marinho [EMAIL PROTECTED]:
 Bom estou desenvolvendo um produto o qual necessita ler um arquivo xml
 que vem de outro site. Estou utilizando urllib e minidom. Para isso no
 __init__.py do produto adicionei as seguintes linhas:

 from Products.PythonScripts.Utility import allow_module
 allow_module(urllib)
 allow_module(xml.dom.minidom)

 Para poder habilitar os módulos, de acordo como o readme.txt em
 PythonScripts ensina.

 Aqui está o meu código:
 from urllib import urlopen
 from xml.dom.minidom import parse
 url = urllib.urlopen('http://www.site.com.br/home.xml')
 parsed = xml.dom.minidom.parse(url)

 as duas linha acima funcionam, mas ao tentar executar algo como na linha
 abaixo:
 root = parsed.childNodes[0]

 Recebo o erro de Privilégios Insuficientes!

 Não entendo como recebo somente o erro quando tento usar os chilNodes???
 Se eu importat o modulo e fazer parse do arquivo??? Não tem sentido!!!


Alexandre,

Se você está desenvolvendo um produto (python no file system) não há
necessidade de utilizar a receita descrita no readme.txt.  Isso só
seria necessário se você quisesse acessar os módulos via scripts
python, que residem no ZODB.

Entretanto, mesmo para produtos há uma série de regras que você deve
obedecer para se adequar aos mecanismos de segurança do Zope.
Recomendo a leitura do Zope Developer's Guide [1], principalmente o
capítulo 6 (Security).

Zénrique.

[1]  http://www.zope.org/Documentation/Books/ZDG/current


[zope-pt] allow_module e Privilégios Insuficientes

2008-07-14 Por tôpico Alexandre Marinho
Bom estou desenvolvendo um produto o qual necessita ler um arquivo
xml que vem de outro site. Estou utilizando urllib e minidom. Para isso
no __init__.py do produto adicionei as seguintes linhas:

from Products.PythonScripts.Utility import allow_module
allow_module(urllib)
allow_module(xml.dom.minidom)

Para poder habilitar os módulos, de acordo como o readme.txt em
PythonScripts ensina.

Aqui está o meu código:
from urllib import urlopen
from xml.dom.minidom import parse
url = urllib.urlopen('http://www.site.com.br/home.xml')
parsed = xml.dom.minidom.parse(url)

as duas linha acima funcionam, mas ao tentar executar algo como na linha
abaixo:
root = parsed.childNodes[0]

Recebo o erro de Privilégios Insuficientes!

Não entendo como recebo somente o erro quando tento usar os
chilNodes??? Se eu importat o modulo e fazer parse do arquivo??? Não
tem sentido!!!