Возможность проверить успешность auth_basic авторизации

Vadim A. Misbakh-Soloviov nginx на mva.name
Ср Фев 14 17:28:56 UTC 2018


Всем привет.
У меня тут возникла необходимость в проверке успешности auth_basic авторизации 
(каковая, например, есть для client_certificate ($ssl_client_verify)).

У меня была идея сделать (средствами NginX) basic-авторизацию (в одном и том 
же локейшне) необязательной, но принципиально применимой. И в случае 
предоставления логина-пароля — обрабатывать этот кейс (а точнее - использовать 
содержимое $remote_user для определённых целей).

Логичным решением мне показалось использовать `satisfy any`+`allow all`
+`auth_basic`.

Однако в данном случае при предоставлении неправильного пароля в $remote_user 
всё равно оказывается переданное имя пользователя. Что является немного не тем 
результатом, на который я рассчитывал, но с этим можно было бы смириться (в 
конце концов, никто и не говорил, что директива содержит имя только в случае 
успешной авторизации), если бы был способ проверить успешность авторизации. А 
такового я не нашёл (возможно, плохо искал).

В общем, подскажите пожалуйста:

1) есть ли способ узнать, была ли авторизация успешной? Может, я и в самом 
деле слепой и не вижу в документации того, что там есть?

2) может быть, есть иной способ добиться того, что я хотел кроме `satisfy any`
+`allow all`?

Заранее спасибо!


Подробная информация о списке рассылки nginx-ru