Внутреннее подписывание кода: ключевое распределение или сервер сертификата?

На всем протяжении Интернета можно найти вопросы и ответы относительно поддержки sqlite в PHP на Ядре Fedora, Red Hat и дистрибутивах CentOS. В то время как многие из них расходятся во мнениях в том, как пойти о включении поддержки, все они говорят то же самое о причине: пакеты для PHP на тех дистрибутивах компилируются без поддержки SQLite (к моему знанию, это не было встроено в эти дистрибутивы начиная с Ядра Fedora 4). К моему знанию нет никакого текущего об/мин для того, чтобы легко установить php-sqlite3.

Кроме того, не рекомендуется установить расширение PECL для SQLite, поскольку это удерживается от использования и больше не поддерживается.

Однако PHP на этих дистрибутивах действительно включает поддержку php-pdo, и можно использовать это для доступа sqlite базы данных. Первичными различиями являются строки подключения (Вы не используете sqlite_open, но вместо этого используете строку pdo - например: $db = new PDO('sqlite:/tmp/foo.db');). Список функций sqlite с помощью PDO может быть найден в Руководстве PHP. Я полагаю что, если Вы изменяете свой код для использования этих функций вместо функций в php-sqlite, что проблемы будут решены.

Если Вам нужна поддержка php-sqlite, и php-pdo не работает, можно попробовать следующее для перекомпиляции php с поддержкой php-sqlite. Загрузите источник для PHP из http://php.net/downloads.php и скомпилируйте его с поддержкой модуля SQLite.

tar xfvj php-5.3.2.tar.bz2 
cd php-5.3.2/ext/sqlite/
phpize
./configure
make
make install
/etc/init.d/httpd restart

1
задан 24 May 2012 в 22:05
2 ответа

Вы находитесь в сложной ситуации - обычно полезно иметь / проконсультироваться с кем-то, у кого есть опыт работы с PKI, потому что это легко, ммм, облажаться по-крупному. С учетом сказанного, есть довольно много ресурсов, доступных для общественного потребления, и MS улучшила ADCS с момента появления Server 2000.

Чтобы использовать сертификаты подписи кода, вам понадобится инфраструктура CA, отдельная от распространения сертификатов / ключей. Без сервера сертификатов (размещенного или собственного) нет ключей для распространения. Я предполагаю, что вы сравниваете размещенную службу с собственной.

Я бы порекомендовал рассмотреть размещенные / управляемые решения, если ваша организация не имеет навыков / опыта, чтобы разворачивать свои собственные. Это особенно важно, если вы планируете подписать код, который будет распространяться среди общественности. Такие компании, как Symantec (владеет Verisign, Thawte и GeoTrust), Entrust, Comodo, GoDaddy, DigiCert и любые другие общедоступные центры сертификации (CA) будут предлагать сертификаты подписи кода за годовую плату. Преимущество в том, что вам просто нужно выяснить, где его разместить и сколько сертификатов подписи кода вам нужно. Стоимость будет немного выше, чем при распространении собственного кода, но если вы собираетесь распространять общедоступный код, то это ваш лучший вариант. Во всяком случае, я бы рекомендовал взглянуть на продукты Verisign, потому что они лучше всего совместимы с устаревшими хранилищами ключей. Новые центры сертификации могут поддерживать 99% современных браузеров, но могут не работать правильно со старыми версиями или с другими хранилищами ключей - например, JKS.

Если код предназначен для внутреннего использования и стоимость управляемого ЦС слишком высока, вы можете развернуть собственную инфраструктуру. Это включает в себя настройку CA (ADCS, на основе OpenSSL, RSA, Entrust) и создание канала распространения. Групповая политика упрощает распространение сертификатов ЦС, а также регистрацию сертификатов. Брайан Комар опубликовал несколько книг о службах сертификации Microsoft. Komar предлагает исчерпывающий обзор по этому вопросу, поэтому я рекомендую кому-то получить копию, прежде чем они начнут настраивать вашу собственную инфраструктуру CA.

HTH

2
ответ дан 3 December 2019 в 21:48

Если вам просто нужна информация для подписи кода, я работаю с Брюсом, и он подготовил серию статей по этой теме. http://ssl.entrust.net/blog/?p=908

Если вам требуется полное развертывание PKI, есть варианты для локального и управляемого обслуживания. Я скажу, что, работая в Entrust, мы были бы рады помочь, где можем, но как минимум я хотел бы поделиться блогами Брюса о подписи кода, которые могут помочь в сборе информации.

Удачи

0
ответ дан 3 December 2019 в 21:48

Теги

Похожие вопросы