Файл закрытого ключа Firebase как переменная среды

Файл закрытого ключа Firebase как переменная среды

Я совсем новичок в Ubuntu и разрабатываю проект на основе базы данных Firebase Firestore. Пытаюсь запустить службы на сервере Ubuntu 22.04. Я могу подключить базу данных Firestore (в Windows я могу сделать это также с помощью переменных среды) с файлом закрытого ключа, и я хочу сохранить этот файл в секрете. Чтобы добиться этого, создал файл с секретом и сослался на него в файле конфигурации службы, как здесь.

[Unit]
Description=myservice

[Service]
Type=simple
Restart=always
RestartSec=5sec
EnvironmetnFile=/etc/mysecrets/mysecret

[Install]
WantedBy=multi-user.target

Это работает для небольших переменных, таких как

MYSECRET=111111

Но не работает такой файл как следующий

    MYSECRET= {
  "type": "service_account",
  "project_id": "my-project-id",
  "private_key_id": "1234567890abcdef",
  "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDzq3MW0BWT4skj\n6pSG0ZXl...U6XyUrhRz\n-----END PRIVATE KEY-----\n",
  "client_email": "[email protected]",
  "client_id": "1234567890abcdef",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/my-project-id%40my-project-id.iam.gserviceaccount.com"
}

private_key будет иметь длину более 1700 символов \n.

Как мне создать безопасный секретный файл с такой большой информацией на сервере Ubuntu? Есть идеи?

PS: Это не настоящий и недействительный файл закрытого ключа.

решение1

Нравитьсямурусказал выше комментарий, одиночная квота решила мою проблему. Я только что набрал secret вот так и теперь работает как по маслу.

Этототвечатьрешил мою проблему.

MYSECRET= '{
  "type": "service_account",
  "project_id": "my-project-id",
  "private_key_id": "1234567890abcdef",
  "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDzq3MW0BWT4skj\n6pSG0ZXl...U6XyUrhRz\n-----END PRIVATE KEY-----\n",
  "client_email": "[email protected]",
  "client_id": "1234567890abcdef",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/my-project-id%40my-project-id.iam.gserviceaccount.com"
}'

Связанный контент