Руководство по безопасности
Узнайте, как реализовать безопасность корпоративного уровня для вашей системы управления лицензиями, используя лучшие практики и меры безопасности.
Обзор безопасности
Безопасность имеет первостепенное значение в системах управления лицензиями. В этом руководстве рассматриваются комплексные меры безопасности. для защиты ваших лицензий, данных клиентов и бизнес-операций.
Мы рассмотрим требования к шифрованию, аутентификации, авторизации, мониторингу и соответствию. чтобы обеспечить безопасность и надежность вашей системы лицензирования.
Столпы безопасности
Защита данных
- Сквозное шифрование
- Безопасное хранение данных
- Анонимизация данных
- Резервное копирование и восстановление
Контроль доступа
- Многофакторная аутентификация
- Управление доступом на основе ролей
- Управление ключами API
- Управление сеансами
Утверждение лицензии JWT (RS256)
Если Core API настроен с использованием ключей подписи, успешный POST /v1/licenses/verify и
POST /v1/licenses/validate-hardware ответы могут включать в себя
license_token (JWT), license_token_expires_at, и
license_jwks_uri. Интеграторы проверяют JWT офлайн используя открытые ключи от
GET /v1/licenses/jwks (ЖВКС). Никогда не отправляйте API частный ключ подписи внутри настольных, мобильных или браузерных приложений.
Асимметрично только в клиентских приложениях: встроить или получить общественный URL-адрес JWKS, разрешите JWK с помощью kid в заголовке JWT и проверьте RS256.
Общие секреты HMAC подходят для межсерверный обмен вебхуки, а не для широко распространенных двоичных файлов.
Обязательная проверка претензии: отклонять токены, если только token_use равно licensechain_license_v1 (предотвращает путаницу этого JWT с сеансом или другими токенами).
aud: если присутствует, соответствует вашей информационной панели идентификатор приложения. Ваш верификатор должен убедиться aud соответствует приложению, которое вы ожидаете перед разблокировкой функций.
TTL и обновление: Срок действия утверждения зависит от уровня продавца в API (lc_vt: базовый ≈ 15 минут, расширенный ≈ 1 час, индивидуальный ≈ 24 часа). До exp, вызовите проверку еще раз, чтобы получить новый токен. Кэшируйте JWKS на короткое время (например, минуты) и повторно извлекайте неизвестные данные. kid или сбой проверки после вращения.
Авторитетные проверки сервера: если принятия автономного JWT недостаточно (например, немедленный отзыв, применение политики на стороне приложения), позвоните
POST /v1/licenses/introspect с license_token.
API проверяет подпись + утверждения и возвращает данные в реальном времени. active Статус из базы данных.
Удаление из списка запрещенных: аутентифицированные серверные части могут отозвать определенный выданный JWT через
POST /v1/licenses/revoke-token (по символике jti).
После отзыва возвращается самоанализ active: false не без причины token_revoked.
Ссылка на претензию (неполная)
| Требовать | Значение |
|---|---|
| это | Эмитент (API); URL-адрес API по умолчанию |
| суб | Идентификатор записи лицензии |
| аудит | Идентификатор приложения (если установлен) |
| эксп/иат/нбф | Стандартные претензии времени JWT |
| Джти | Уникальный идентификатор токена для каждого выпуска |
| token_use | Должно быть licensechain_license_v1 |
| lc_vt | базовый | продвинутый | обычай |
| уровень_продавца | Строка уровня плана продавца |
| статус | Статус лицензии |
| hw_bound | Удовлетворен ли HWUID для этой проверки |
| план/особенности | Из метаданных лицензии, если они есть. |
| License_exp | Срок действия лицензии в секундах Unix (если установлен) |
См. также Лицензии и Справочник по API.
Шифрование
Шифрование данных
Все конфиденциальные данные шифруются с использованием стандартных алгоритмов шифрования.
Шифрование в состоянии покоя
- Шифрование AES-256 для базы данных
- Зашифрованное хранилище файлов
- Безопасное управление ключами
- Регулярная ротация ключей
Шифрование в пути
- TLS 1.3 для всех коммуникаций
- Закрепление сертификата
- Совершенная прямая секретность
- HSTS-заголовки
Безопасность API
Безопасная связь через API с надлежащей аутентификацией и авторизацией.
// API request with proper headers // Set authorization and content type // Include API version and request ID // Send license verification request
Аутентификация и авторизация
Многофакторная аутентификация
- Поддержка TOTP (одноразовый пароль на основе времени)
- SMS-верификация
- Аппаратные ключи безопасности (FIDO2/WebAuthn)
- Биометрическая аутентификация
- Резервные коды для восстановления аккаунта
Ролевой контроль доступа
- Детализированная система разрешений
- Командное управление доступом
- Разрешения на уровне ресурсов
- Контрольный журнал всех действий
- Регулярные проверки доступа
Управление ключами API
- Ключи API с ограниченной областью действия и ограниченными разрешениями
- Ротация и срок действия ключей
- Мониторинг использования и оповещения
- Возможности отзыва
- Ключи, зависящие от среды
Мониторинг и регистрация
Мониторинг безопасности
- Обнаружение угроз в режиме реального времени
- Алгоритмы обнаружения аномалий
- Мониторинг неудачных попыток входа в систему
- Оповещения о подозрительной активности
- Географический мониторинг доступа
Журнал аудита
- Комплексная регистрация активности
- Неизменяемые журналы аудита
- Проверка целостности журнала
- Долгосрочное хранение журналов
- Отчетность о соответствии
Реагирование на инциденты
- Автоматическое обнаружение инцидентов
- Процедуры эскалации
- Сценарии реагирования
- Анализ после инцидента
- Постоянное улучшение
Соответствие и стандарты
СОК 2 Тип II
- Ежегодный сторонний аудит
- Контроль безопасности, доступности и конфиденциальности
- Проверка целостности обработки
- Меры защиты конфиденциальности
- Постоянный мониторинг и улучшение
Соответствие GDPR
- Реализация прав субъектов данных
- Конфиденциальность по принципам дизайна
- Соглашения об обработке данных
- Право быть забытым
- Поддержка переносимости данных
ИСО 27001
- Система управления информационной безопасностью
- Оценка и управление рисками
- Реализация политики безопасности
- Регулярное обучение безопасности
- Процессы постоянного улучшения
Лучшие практики безопасности
Безопасность развития
- Практики безопасного кодирования и проверки кода
- Сканирование уязвимостей зависимостей
- Автоматизированное тестирование безопасности
- Безопасный жизненный цикл разработки
- Регулярное обучение безопасности для разработчиков.
Безопасность инфраструктуры
- Сегментация сети и межсетевые экраны
- Обнаружение и предотвращение вторжений
- Регулярные обновления и исправления безопасности
- Безопасное управление конфигурацией
- Аварийное восстановление и непрерывность бизнеса
Секреты оплаты, зеркала и вебхука
- Сохранить продукт
callbackSecretтолько на стороне сервера — используется для зеркального перенаправления HMAC и веб-перехватчиков Pay Merchant Center. - Никогда не вставлять
callbackSecretв пакетах внешнего интерфейса, мобильных приложениях или клиентских скриптах WooCommerce. - Используйте правильную модель подписи для каждого канала — Core API (руководство по вебхукам), Платить (торговые вебхуки), Зеркало (Зеркальный SDK).
- Ошибка закрытия при возврате зеркала: проверьте
signature, тогда позвони/api/checkout/mirror/validateпрежде чем предоставить доступ. - Поворот
callbackSecretчерез API продукта в случае утечки; как можно скорее обновите переменные окружения WooCommerce/Mirror SDK. - Для основных маршрутов аналитики API требуется
ADMINроль — не предоставляйте ключи API администратора приложениям, ориентированным на продавца.