Как закрыть SSL сессию в nginx при авторизации сертификатом?
Сломал всю голову над такой проблемой:
Имеем nginx 1.5.0 с включенным SSL и авторизацией пользователей через сертификаты (ssl_verify_client optional).
При входе через https происходит попытка авторизации через сертификат (не важно успешно или нет), после этого устанавливается ssl сессия и результат авторизации сертификата клиента сохраняется в нее.
Вопрос: Как закрыть сессию принудительно (unlogin короче), чтобы окно выбора сертификата опять появилось?!
Хитрый заголовок? Директива nginx? JavaScript со стороны браузера? Еще чтото?
В том то и беда что толком нигде не работает :) К примеру в таргет-браузере — Хроме.
Короче, «официального»/прямого метода нет.
Но я нашел хитропопый кроссбраузерный метод, в ближайшее время напишу статью.
Пока писать некогда, вот описание механизма — login.so/img/ssl.png
при передачи ответа в систему авторизации через AJAS используется уникальная ссылка вида GUID.имя_сервера.tld, что вызывает каждый раз создание новой SSL сессии