work-license-server 1.0.4 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/crypto.js +7 -5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "work-license-server",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "Лицензионный сервер, биллинг ЮKassa, боты поддержки (MAX, Telegram, VK) и лендинг ПАК WORK (work.odant.org)",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
package/src/crypto.js CHANGED
@@ -15,8 +15,8 @@ export const LICENSE_PROTOCOL = 'WORK-LIC-v1';
15
15
  * Вшиты в клиентский код odant-work; закрытые ключи хранятся исключительно на боевом сервере work.odant.org
16
16
  * и холодном резервном носителе Правообладателя (никогда не публикуются в npm и репозиториях).
17
17
  */
18
- export const ODANT_AUTHORITY_PUBLIC_KEY = 'MCowBQYDK2VwAyEAdlQSj+pC3IOt60vo3lXkzpd0DFU4ZmADqEYQsW1+mRA=';
19
- export const ODANT_BACKUP_PUBLIC_KEY = 'MCowBQYDK2VwAyEA8xJ9r7V4kM2pN6qL1wZ5tB3cF0yH8gD4sE7uA9vK2mQ=';
18
+ export const ODANT_AUTHORITY_PUBLIC_KEY = 'MCowBQYDK2VwAyEApVwPnoJcmUKLq4CLh7KdVHg1o5hfPiM7Lj9Eyq/VRdU=';
19
+ export const ODANT_BACKUP_PUBLIC_KEY = 'MCowBQYDK2VwAyEAdlQSj+pC3IOt60vo3lXkzpd0DFU4ZmADqEYQsW1+mRA=';
20
20
  export const TRUSTED_AUTHORITY_PUBLIC_KEYS = Object.freeze([
21
21
  ODANT_AUTHORITY_PUBLIC_KEY,
22
22
  ODANT_BACKUP_PUBLIC_KEY,
@@ -68,12 +68,14 @@ export function loadOrCreateAuthorityKeys(keyFilePath, { allowGenerateInProd = f
68
68
  catch { /* создадим заново ниже */ }
69
69
  }
70
70
 
71
- if (process.env.NODE_ENV === 'production' && !allowGenerateInProd) {
71
+ if (process.env.WORK_REQUIRE_AUTHORITY_ENV === '1' && !allowGenerateInProd) {
72
72
  throw new Error(
73
- 'Безопасность: в production-режиме запрещена автогенерация случайных ключей лицензирования. '
74
- + 'Задайте секретный ключ правообладателя в переменной окружения WORK_AUTHORITY_PRIVATE_KEY.'
73
+ 'Безопасность: требуется явно заданный секретный ключ правообладателя в переменной окружения WORK_AUTHORITY_PRIVATE_KEY.'
75
74
  );
76
75
  }
76
+ if (process.env.NODE_ENV === 'production') {
77
+ console.warn('[work.odant.org] WORK_AUTHORITY_PRIVATE_KEY не задан в окружении — используется локальный ключ контейнера.');
78
+ }
77
79
 
78
80
  const pair = crypto.generateKeyPairSync('ed25519');
79
81
  const keys = {