Bonjour,
Je sais que ES fourni une api javascript, mais j'aimerais configurer moi même un service d'authentification via l'API REST.
J'ai configuré les CORS dans mon fichier elastisearch.yml, comme ceci :
http.port: 9200 http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-methods: "OPTIONS, HEAD, GET, POST, PUT, DELETE" http.cors.allow-headers: "X-Requested-With, X-Auth-Token, Content-Type, Content-Length, Accept, Authorization"
Le problème, c'est que je n'arrive toujours pas à faire passer mon header Authorization. Et je reçois cette erreur :
XMLHttpRequest cannot load http://192.168.1.2:9200/_shield/authenticate. Request header field Authorization is not allowed by Access-Control-Allow-Headers in preflight response.
Voici ma petite fonction pour tester l'authentification (je précise que je travail avec AngularJS) :
var authentication = function Authentication() { $http({ method: 'GET', url: 'http://192.168.1.2:9200/_shield/authenticate', headers: { 'Authorization': 'Basic YWRtaW46UG91ZXRwb3VldDYwOQ==' } }).then(function successCallback(response) { console.log(response); }, function errorCallback(response) { console.log(response); }); };
Y a t-il quelque chose que j'ai manqué ?
Merci d'avance pour votre aide
Morgan