X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/ab92b051d6f09f1b3e670ecd39e8c96ed34570db..3a9428dd1db2fd393dd90cd3ffc744c0bf45fe28:/services/api/app/middlewares/arvados_api_token.rb diff --git a/services/api/app/middlewares/arvados_api_token.rb b/services/api/app/middlewares/arvados_api_token.rb index acdc485811..2c240984c6 100644 --- a/services/api/app/middlewares/arvados_api_token.rb +++ b/services/api/app/middlewares/arvados_api_token.rb @@ -25,6 +25,7 @@ class ArvadosApiToken reader_tokens = nil if params["remote"] && request.get? && ( request.path.start_with?('/arvados/v1/groups') || + request.path.start_with?('/arvados/v1/api_client_authorizations/current') || request.path.start_with?('/arvados/v1/users/current')) # Request from a remote API server, asking to validate a salted # token. @@ -43,7 +44,7 @@ class ArvadosApiToken auth = nil [params["api_token"], params["oauth_token"], - env["HTTP_AUTHORIZATION"].andand.match(/(OAuth2|Bearer) ([-\/a-zA-Z0-9]+)/).andand[2], + env["HTTP_AUTHORIZATION"].andand.match(/(OAuth2|Bearer) ([!-~]+)/).andand[2], *reader_tokens, ].each do |supplied| next if !supplied