Python, scripts do IIS e contas de usuário

2

Esta não é uma questão sobre meu problema específico, pois tenho mais ou menos solução, mas sobre IIS / Python e contas de usuário em geral.

Eu tenho scripts python que estou executando com o IIS 7.5 (Mercurial usando o script hgweb.wsgi). Um dos plugins (largefiles) está recebendo problemas de permissão para ler e gravar arquivos.

O script estava tentando gravar arquivos em um diretório temporário, verificando as variáveis de ambiente APPDATA e LOCALAPPDATA , que estavam retornando C:\Windows\System32\config\systemprofile\AppData\Local , e falhando devido a permissões.

Eu tentei imprimir a variável de ambiente USERNAME , mas independentemente do usuário definido na Identidade do pool de aplicativos do IIS, ela sempre retornou MACHINENAME$

Então, como posso executar scripts python no IIS para que as variáveis de ambiente apontem para o local de origem do usuário correto? Ou isso é apenas um erro do desenvolvedor (Hg não tinha o problema de permissões, apenas a extensão largefiles)?

Além disso, quando eu originalmente tinha os repositórios em C:/Data , os arquivos gravados por largefiles nesse diretório tinham um ícone de cadeado e as permissões eram SYSTEM : controle total e Administrators : controle total, com o proprietário definido como Administrators (o grupo, não o usuário administrador). Depois de escrever o arquivo, ele não podia mais ser lido. Mesmo se eu desse Everyone controle total do diretório C:/Data , novos arquivos ainda seriam bloqueados, a menos que eu editasse manualmente as permissões. Novamente, Hg não teve esse problema, apenas os arquivos escritos por arquivos grandes.

    
por carpat 03.07.2012 / 17:19

1 resposta

0

Tente usar o Process Monitor para chegar ao fim dos problemas de permissões.

Você pode usar a ferramenta para ver qual usuário está tentando acessar o arquivo como o processo e outros detalhes importantes que são úteis para a solução de problemas de permissões do IIS.

    
por 03.07.2012 / 18:02