Pergunta

Eu tenho dois aplicativos do SharePoint no mesmo farm.

O 1º está usando clássico a autenticação do windows com Ntlm fornecedor.

O 2º está usando a autenticação de declarações, com apenas o provedor de autenticação do Windows (Ntlm também).

Também estamos construindo uma aplicação java (na verdade, um liferay plugin, mas que está fora do escopo).Esta aplicação tem que pegar o conteúdo de aplicativo do SharePoint.

Esse é um trabalho para a primeira aplicação, mas não para o segundo (um com créditos).

Então a minha pergunta é:quando utilizar a autenticação de Declarações, com o provedor de autenticação Ntlm, o que são os pré-requisitos de qualquer aplicativo consome?

Foi útil?

Solução

Finalmente, encontramos uma solução, que consistiu em alterar a biblioteca de cliente.

Nós especialmente utilizar o componente descrito aqui : Suporte para NTLMv2 com Apache HttpClient usando JCIFS.

Um código de exemplo nós usados:

QueryServiceStub queryServiceStub = new QueryServiceStub("SHARE_POINT_ASMX_URL");
List authPrefs = new ArrayList(1);
authPrefs.add(AuthPolicy.NTLM);
AuthPolicy.registerAuthScheme(AuthPolicy.NTLM, JCIFS_NTLMScheme.class);
HttpTransportProperties.Authenticator auth = new HttpTransportProperties.Authenticator();
List<String> authScheme = new ArrayList<String>();
authScheme.add(HttpTransportProperties.Authenticator.NTLM);
auth.setUsername("USERNAME");
auth.setPassword("PASSWORD");
auth.setDomain("DOMAIN");
auth.setHost("SHAREPOINT_HOSTNAME");
auth.setAuthSchemes(authScheme);
queryServiceStub._getServiceClient().getOptions().setProperty(HTTPConstants.REUSE_HTTP_CLIENT, "true");
queryServiceStub._getServiceClient().getOptions().setProperty(HTTPConstants.AUTHENTICATE, auth);
List<Header> headers = new ArrayList<Header>();
Header header = new Header();
header.setName("X-FORMS_BASED_AUTH_ACCEPTED");
header.setValue("f");
headers.add(header);
queryServiceStub._getServiceClient().getOptions().setProperty(HTTPConstants.HTTP_HEADERS, headers);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top