MaxiStyle
Новичок
SSL: modulus из строки
На сайте организована авторизация по клиентским сертификатам, при чем у юзера может быть несколько сертификатов, но на разнах рабочих местах, мне необходимо в зависимости от ключа сертификата определять с какого рабочего места зашел юзер.
Для этого я переменную $_SERVER[SSL_CLIENT_CERT]) отдаю bash-скрипту на сервере. В скрипте необходимо извлечь из сертификата modulus и отдать обратно в php. PHP получает этот ключ и на основании его опряделят набор атрибутов для юзера.
php...
bash...
openssl x509 -in $1 -noout -modulus
Проблема в том, что извлекать ключ из строки нельзя, эта строка должна быть в файле, в тоже время сохранять предварительно в файл не рационально. Подскажите как мне получить этот ключ?
На сайте организована авторизация по клиентским сертификатам, при чем у юзера может быть несколько сертификатов, но на разнах рабочих местах, мне необходимо в зависимости от ключа сертификата определять с какого рабочего места зашел юзер.
Для этого я переменную $_SERVER[SSL_CLIENT_CERT]) отдаю bash-скрипту на сервере. В скрипте необходимо извлечь из сертификата modulus и отдать обратно в php. PHP получает этот ключ и на основании его опряделят набор атрибутов для юзера.
php...
PHP:
$x = ereg_replace("\n$","",$_SERVER[SSL_CLIENT_CERT]);
$x = "'".ereg_replace("\n","&#&",$x)."'";
$x = ereg_replace("\&#\&$","",$x);
exec("/www/apache2/cgi-bin/read_ssl2www ".$x, $xx, $return);
//в итоге в $xx[0] должен быть ключ
openssl x509 -in $1 -noout -modulus
Проблема в том, что извлекать ключ из строки нельзя, эта строка должна быть в файле, в тоже время сохранять предварительно в файл не рационально. Подскажите как мне получить этот ключ?