A solicitação HTTP não é autorizada com o esquema de autenticação do cliente 'Negociação'.

StackOverflow https://stackoverflow.com/questions/2251194

Pergunta

Estou tentando implantar/empacotar um projeto do Visual Studio com base em extensões do Visual Studio para o Windows SharePoint Services 1.3 (março de 2009 CTP), mas obtendo o seguinte erro!

A solicitação HTTP não é autorizada com o esquema de autenticação do cliente 'Negociação'. O cabeçalho de autenticação recebido do servidor foi 'Negociação, NTLM'

Eu sou capaz de acessar http://127.0.0.1:1378/spservice.svc através do navegador; O Serviço VSEWSS está sendo executado no SharePoint Central Administration V3 Pool de aplicativos cuja identidade é o serviço de rede. O SharePoint Services está instalado com configurações padrão. O serviço de rede é membro do Grupo de Administradores Locais.

A máquina é o Windows 2003 Standard Editon SP2 e faz parte do domínio e estou conectado a um usuário de domínio; Meu usuário é membro do Grupo de Administradores Locais do Machine e eu instalei o SharePoint Service com este login, que me fez membro de quase todos os grupos de segurança do SharePoint (Administrador de fazenda; administrador de coleta de sites etc)

Eu tentei StackOverflow e http://social.msdn.microsoft.com/forums/en-us/sharepointdevelopment fórum e tentei quase tudo sugerido em diferentes posts nesses dois; Mas nada disso funcionou até agora!

VSEWSS1.3.Log tem as seguintes entradas

2010/02/12 16:49:01    Error
Error: System.ServiceModel.Security.MessageSecurityException
System.ServiceModel.Security.MessageSecurityException: The HTTP request is unauthorized with client authentication scheme 'Negotiate'. The authentication header received from the server was 'Negotiate,NTLM'. ---> System.Net.WebException: The remote server returned an error: (401) Unauthorized.
   at System.Net.HttpWebRequest.GetResponse()
   at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
   --- End of inner exception stack trace ---

Server stack trace: 
   at System.ServiceModel.Channels.HttpChannelUtilities.ValidateAuthentication(HttpWebRequest request, HttpWebResponse response, WebException responseException, HttpChannelFactory factory)
   at System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory factory, WebException responseException)
   at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
   at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
   at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at Microsoft.SharePoint.Tools.SPServiceReference.ISPService.GetWeb(String url)
   at Microsoft.SharePoint.Tools.SharePointSolutions.SolutionDeployer.ValidateProjectDeployURL()
   at Microsoft.SharePoint.Tools.SharePointSolutions.SolutionDeployer.Deploy()
Foi útil?

Solução 2

Eu removi a máquina do domínio; VSEWSS desinstalado, SharePoint e IIS. Reinstale o IIS depois de remover a máquina do domínio. Depois de instalar o SharePoint e o VSEWSS; As coisas começaram a funcionar bem!

Outras dicas

Você também pode tentar usar o nome de host real do computador em vez do endereço de loopback (127.0.0.1). Se você usar localhost ou endereço de loopback, provavelmente não poderá fazer login usando Kerberos, o que causaria a falha de certos tipos de cenários de delegação.

O que pode estar acontecendo é que seu navegador pode estar "caindo" silenciosamente para usar o NTLM, e outros programas, como a implantação do VS, não se comportam dessa maneira - eles geralmente usam apenas Kerberos. Portanto, tente usar o nome do host em vez de loopback. Se isso não funcionar, você provavelmente tem um problema com o Kerberos em sua máquina. Se você está se sentindo muito duro, pode ler em Kerberos e baixar uma cópia do Wireshark e procurar as mensagens de erro da classe "KRB5" para ver exatamente o que está falhando, mas esse é um investimento de tempo muito grande.

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