Pergunta

Por favor, note: Em cada passo que eu descrevo abaixo eu estou logado como a mesma conta de usuário do domínio

.

Eu tenho uma aplicação web que controla um serviço em um computador remoto (via ServiceController ). Quando eu conectar ao site remotamente e tentar controlar o serviço, recebo um InvalidOperationException: Acesso negado.

Eu sei que CAN trabalho, porque quando eu ligar para o site a partir do servidor web (desktop remoto, login como meu usuário de domínio, em seguida, abra a página da Web), ele funciona como esperado.

Tenho configurado o IIS e ASP.NET para exigir autenticação do Windows e representação. Eu registro a corrente fio do principal quando isso falhar, e eu vejo que o segmento está sendo executado sob minha identidade se eu estou conectando remotamente ou do próprio servidor.

Eu tentei forçar IIS para utilizar a autenticação Kerberos, a autenticação NTLM e os dois ao mesmo tempo; se minhas principais relatórios sua AuthenticationType como "Negociar" ou "NTLM" não importa. Nenhum deles funciona quando eu conectar remotamente (da minha máquina local)

Outra coisa estranha sobre isso é que, se eu sou depuração da minha máquina local / conectar ao servidor remoto, ele trabalha o tempo todo! Mas eu não sou de depuração, ele falhar cada vez!

O que o diabo poderia estar acontecendo aqui?

Foi útil?

Solução

Seu cenário é delegação e não a representação. A delegação é difícil de alcançar e depende de muitas coisas que são feitas direito.

Um lugar para começar seria Kerberos de autenticação e delegação solução de problemas de

David Wang blogue é um recurso muito útil sobre questões thous.

Outras dicas

"Outra coisa estranha sobre isso é que, se eu sou depuração da minha máquina local / conectar ao servidor remoto, ele trabalha o tempo todo! Mas eu não sou de depuração, ele falhar cada vez!"

Essa é uma clara indicação de que você tem problemas de permissão. Quando você executa no depurador você estiver executando como o usuário conectado, quando você não está depurando ele é executado como tudo o IIS está definido para utilização (Serviço de rede por padrão). Tente definir (temporariamente!) O Ativar acesso anônimo usando sua conta de domínio como o usuário e ver se isso funciona. Se isso acontecer, então isso significa que seu IIS não está configurado adequadamente para representar (e provavelmente está funcionando como NETWORK SERVICE).

Permissão IIS pode ser um pouco c h para afinar correctamente ... Boa sorte!

P / S: Isso parece mais como uma questão de administração de rede do que uma programação (veja https://stackoverflow.com/questions/321618/stackoverflow-is-for-programming-questions-here-are-some-better-forums-for-your # 321756 )

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top