Cabeçalho de autorização faltando no django rest_framework, o apache é responsável?
Eu consegui estenderTokenAuthentication
e eu tenho um modelo de trabalho ao usar a sessão de solicitação para armazenar meus tokens, no entanto, quando tento passarAuthorization
como um parâmetro de cabeçalhocomo descrito aqui, Notei que minhas respostas voltam sem a variável META HTTP_AUTHORIZATION. Eu também notei que se eu passar "Authorization2" como um parâmetro de cabeçalho que é visível no pedido:
{
'_content_type': '',
'accepted_media_type': 'application/json',
'_request': <WSGIRequest
path:/api/test_auth/,
GET:<QueryDict: {}>,
POST:<QueryDict: {}>,
COOKIES:{
'MOD_AUTH_CAS_S': 'ba90237b5b6a15017f8ca1d5ef0b95c1',
'csrftoken': 'VswgfoOGHQmbWpCXksGUycj94XlwBwMh',
'sessionid': 'de1f3a8eee48730dd34f6b4d41caa210'
},
META:{
'DOCUMENT_ROOT': '/etc/apache2/htdocs',
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTPS': '1',
'HTTP_ACCEPT': '*/*',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate,sdch',
'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8',
'HTTP_AUTHORIZATION2': 'Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4c',
...
Meu primeiro palpite é que o cabeçalho de autorização está sendo removido pelo apache e li algumas perguntas de S / O que afirmam que o apache descartará o valor se ele não corresponder à autorização básica e autenticar, mas não tenho idéia de como permite que o cabeçalho de autorização passe através do Django e do WSGIRequest. Alguém sabe como resolver esse problema?
Eu também uso mod_auth_cas e mod_proxy, se isso mudar alguma coisa ..