Witajcie!
Chciałbym poradzić się was w kwestii rozwiązań problemu strony, do której dostęp będzie ograniczony do grupy użytkowników posiadających certyfikat prywatny zainstalowany w przeglądarce.
Sprawa wewnętrznego CA oraz mechanizmu dystrybucji certyfikatów, jest już rozwiązana.
Strona ma też swój certyfikat dla https.
Generalnie mamy dwa adresy:
- http://domena.pl
- https://domena.pl

W tej chwili konfiguracja ssl na apache wygląda następująco:

http://domena.pl
- tu mamy virtualhost, który wskazuje na folder strona_http i tam leży kawałek strony nie zawierający specyficznych danych;

https://domena.pl
- tu mamy virtualhost, który wskazuje na inny folser strona_https;
- jeżeli użytkownik ma certyfikat, trafia do folderu strona_https gdzie jest strona z zawartością specyficzną;
- jeżeli użytkownik nie ma certyfikatu, konfiguracja ssl przekierowuje go do http://domena.pl

W takiej konfiguracji jest kilka problemów:
- trzeba zajmować się stroną https i jej okrojoną wersją http, co jest niewygodne;
- użytkownik trafiający na https bez certyfikatu nie widzi co się stało;
- użytkownik trafiający na http nie widzi, że potrzebny jest my certyfikat (oczywiście można to napisać na stronie, ale nie o to tu chodzi);

Wydaje się, że najwygodniej było by mieć jednego virtualhosta https i sztywne przekierowanie z http na https, czyli zawsze mamy połączenie ssl.
Wtedy sprawdzanie certyfikatu przerzucić na poziom php i z jednego folderu strona_https wyświetlać tą samą stronę z różnymi poziomami dostępu.

Proszę o wasze rady, które rozwiązanie polecacie i jakie macie pomysły na sprawdzanie poziomów dostępu z i bez ceftyfikatu prywatnego.

(M.)