deemru / caproc
PHP библиотека для автоматизации работы с УЦ (Центр регистрации)
Requires
- php: >=7.4
- deemru/fetcher: ^1.0
This package is auto-updated.
Last update: 2025-05-26 12:12:03 UTC
README
PHP библиотека для автоматизации работы с Центром регистрации «КриптоПро УЦ» 2.0.
Описание
CAPROC предоставляет удобный PHP интерфейс для взаимодействия с API Центра регистрации КриптоПро УЦ (ЦР). Библиотека позволяет автоматизировать:
- Регистрация пользователей
- Выпуск и отзыв сертификатов
- Получение информации о выпущенных сертификатах
- Управление шаблонами сертификатов и папками
- Работа с запросами на сертификаты и отзыв
Архитектура подключения
Библиотека работает через защищенное mTLS соединение с ЦР. Для обеспечения прозрачности подключения используется stunnel-msspi
с TLS ключом оператора, который создает защищенный туннель между PHP клиентом и сервером ЦР. Это позволяет PHP приложению работать с API как с обычным HTTP соединением, в то время как stunnel-msspi
обеспечивает необходимую криптографическую защиту и аутентификацию по сертификату оператора ЦР.
Требования
- PHP >= 7.4
- Ключ и сертификат оператора в ЦР
- stunnel-msspi для обеспечения mTLS соединения
Установка
composer require deemru/caproc
Пример конфигурации stunnel-msspi
На основе стенда из образа Astra Linux.
output = stunnel.log
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
debug = 7
[https]
client = yes
accept = 127.0.0.1:8080
connect = astralab:443
sni = astralab
cert = tls-oper
verify = 0
Документация
Подробная документация по API доступна в папке docs:
- Обзор и введение - общее описание API и возможностей
- Форматы запросов - форматы PKCS#7 запросов на сертификаты и отзыв
- Сертификаты - работа с сертификатами
- Запросы на сертификаты - создание и управление запросами
- Шаблоны сертификатов - работа с шаблонами
- Папки - организация структуры папок
- Пользователи - управление пользователями
- Запросы на отзыв - отзыв сертификатов
- Сессия - аутентификация и информация о сессии
Примеры
Примеры использования библиотеки доступны в папке test - там находятся готовые скрипты, демонстрирующие различные сценарии работы с API ЦР.