Desativar autenticação para solicitações OPTIONS no Tomcat

1

Eu tenho uma API protegida por autenticação básica. Quando quero fazer solicitações AJAX contra a API, o navegador envia uma solicitação OPTIONS que não carrega o cabeçalho Authorization para que ele seja rejeitado e, portanto, minha chamada AJAX não é permitida pelo navegador.

Eu tentei configurar o Tomcat para não autenticar as solicitações OPTIONS, mas não consegui que funcionasse.

Alguém para me ajudar a conseguir funciona?

Obrigado :)

    
por OyoKooN 01.10.2015 / 11:37

2 respostas

0

você deve escrever uma lista branca para sua porpose

para obter mais informações, consulte: A não utilização de métodos HTTP no Tomcat faz distinção entre maiúsculas e minúsculas

    
por 01.10.2015 / 12:15
0

Talvez esta resposta ajude. Em suma, temos que configurar o servidor Tomcat para encaminhar o pedido para o CorsFilter mesmo quando não autenticado, usando algo como isto:

<security-constraint>
    <web-resource-collection>
        <url-pattern>/*</url-pattern>
        <http-method>OPTIONS</http-method>
    </web-resource-collection>
    <!-- no auth-constraint here -->
</security-constraint>

Certifique-se de não incluir o elemento "auth-constraint". Então, o seguinte exemplo NÃO TRABALHA:

<security-constraint>
    <web-resource-collection>
        <url-pattern>/*</url-pattern>
        <http-method>OPTIONS</http-method>
    </web-resource-collection>
    <auth-constraint/><!-- this will prevent OPTIONS request -->
</security-constraint>
    
por 17.08.2018 / 12:21