O ASP clássico é executado representando o usuário autenticado no servidor na sessão HTTP. Você precisa conceder aos usuários que estão se autenticando para executar a permissão clássica do aplicativo ASP ou permitir acesso anônimo.
Se você já tentou "Usuários autenticados" e não está funcionando, então eu diria que você não está tendo problemas de permissão de arquivo.
O que você quer dizer quando diz "... o arquivo ASP tenta invocar o webservice ..."? Você está dizendo que o script ASP está fazendo uma solicitação HTTP de volta ao servidor? Em caso afirmativo, as credenciais do usuário não serão transmitidas nessa solicitação porque "Autenticação integrada do Windows" não fornece ao servidor uma senha em texto sem formatação para usar ao autenticar em outros servidores (ou em si).
Editar:
Por seu comentário, como declarado acima, o servidor não terá credenciais para autenticar o usuário, pois a autenticação integrada do Windows não fornece ao servidor uma senha em texto sem formatação para passar a outros servidores (ou a ele próprio, que é outro servidor neste caso).
Três coisas que você pode tentar:
-
Se você conseguir que o WebService.asmx permita o acesso anônimo, sua chamada HTTP servidor-para-si deverá funcionar (você precisará permitir explicitamente o acesso anônimo permitindo que o IUSR_xxx leia o arquivo e modificando a configuração "Acesso anônimo e controle de autenticação" para "Acesso anônimo" no próprio arquivo por meio do snap-in do console de gerenciamento do IIS, pois esse arquivo herdará as configurações "Autenticação integrada do Windows" ativadas e desativadas "Acesso anônimo" do diretório em que está).
-
Se o controle que você está usando para fornecer a solicitação HTTP suportar de forma transparente as credenciais do usuário conectado ao servidor remoto, você poderá habilitar a "Autenticação básica" no script ASP clássico (que fornece a servidor uma senha de texto sem formatação para passar para outros servidores) para que o controle de solicitação HTTP possa passar essa senha de texto sem formatação durante a solicitação para WebService.asmx. Você vai querer exigir SSL no acesso ao script ASP clássico, nesse ponto, para manter as senhas de texto simples fora do fio.
-
Por fim, você pode codificar apenas algumas credenciais de autenticação básica no script ASP clássico e habilitar a autenticação básica no arquivo WebService.asmx. Isso significa que o WebService.asmx sempre verá o acesso do mesmo usuário.
Nada disso é uma solução muito boa. Você está correndo para um problema "clássico" que vimos com "ASP clássico" ao tentar autenticar em uma camada de back-end (banco de dados, etc) como o usuário que autenticou para executar o script ASP clássico.