diff --git a/authserv/app_nginx.py b/authserv/app_nginx.py
index 36429616b92d5a16cc36b865393cce32e3b79c97..923bb5cdc90c199ad17b0feec2bb770a4b6bc160 100644
--- a/authserv/app_nginx.py
+++ b/authserv/app_nginx.py
@@ -1,5 +1,6 @@
 import socket
 import threading
+import urllib
 from flask import Flask, request, abort, make_response
 from authserv.app_common import do_auth
 
@@ -21,8 +22,8 @@ def _shard_to_ip(shard):
 @app.route('/', methods=('GET',))
 def do_nginx_http_auth():
     service = app.config.get('NGINX_AUTH_SERVICE', 'mail')
-    username = request.environ.get('HTTP_AUTH_USER')
-    password = request.environ.get('HTTP_AUTH_PASS')
+    username = urllib.unquote(request.environ.get('HTTP_AUTH_USER'))
+    password = urllib.unquote(request.environ.get('HTTP_AUTH_PASS'))
     source_ip = request.environ.get('HTTP_CLIENT_IP')
     protocol = request.environ.get('HTTP_AUTH_PROTOCOL')
     try: