Satis http basic auth - передать учетные данные
Я установил удовлетворительный частный композитор менеджер пакетов. Satis работает на "packages.asc.company", я защитил сайт с помощью обычной HTTP-аутентификации apache2 и могу открыть его в браузере, введя учетные данные http basic auth.
Теперь мой вопрос: как я могу передать учетные данные composer для доступа к сайту удовлетворительным и самым безопасным способом при запуске, например, "Обновление composer"?
В настоящее время я зарегистрировал только одного пользователя с паролем в файле apache.htpasswd, и мне нужно где-то передать его учетные данные, чтобы можно было соединиться с composer для удовлетворения.
Есть два случая, когда мне нужно подключиться с:
1) Из проекта в процессе разработки
2) От Дженкинса в процессе непрерывной интеграции.
3) Редактировать: SSL
Сейчас я пытаюсь использовать openssl для защиты учетных данных при входе в систему. В моем linux, где работает apache, я создал закрытый ключ и файл.crt (см. Apache SSL. В моем linux я могу открыть удовлетворительное страница пакетов с https, и я даже перенаправляю http на https, все работает (я использую свой собственный сертификат, генерирующий с openssl, потому что это внутреннее приложение, и мне не нужен доверенный ca).
Теперь, когда я переключаюсь на свою Windows из Linux vm (здесь я пишу код) и пытаюсь запустить обновление композитора, я получаю следующее сообщение об ошибке: (файл hosts настроен правильно)
[Composer \ Downloader \ TransportException] Не удалось загрузить файл " https://packages.asc.company/packages.json": сбой операции SSL с кодом 1. Сообщения об ошибках OpenSSL: ошибка:14090086: процедуры SSL:SSL3_GET_SERVER_CERTIFICATE: сертификат Сбой проверки не удалось включить шифрование не удалось открыть поток: операция не удалась
Что я упустил? Я довольно новичок в ssl, но читаю целый день информацию об этом и не могу заставить его работать.
С сайта getcomposer удовлетворительно, у меня есть эта информация, но я не знаю, как ее использовать.
{
"repositories": [
{
"type": "composer",
"url": "https://example.org",
"options": {
"ssl": {
"local_cert": "/home/composer/.ssl/composer.pem"
}
}
}
]
}
С уважением.
1 ответ
Для этого есть страница документации.
Composer будет работать с добавлением имен пользователей в URL-адрес Satis. У меня работает, я просто хотел обойти бесполезный пароль по умолчанию в локальной сети. Есть аккаунт только для чтения, и я им воспользовался.
Дополнительно: у каждого разработчика в компании есть учетная запись на сервере репозитория, и нет особого смысла в защите загруженных ZIP-файлов с еще большей безопасностью. Сам Composer в настоящее время не поддерживает какие-либо методы подписывания кода или сравнения хэшей, поэтому нет никакого способа узнать, был ли пакет подделан, где он был сохранен или во время передачи.
Согласно документам, отсутствие указания учетных данных в URL заставит Composer запрашивать их, или вы можете добавить их в auth.json
, С другой стороны: сохранение паролей в виде открытого текста в отдельном файле не самая лучшая идея, а передача их без использования HTTPS еще хуже.
Вы должны определить, какую безопасность вы хотите иметь. Какую цель или сценарий угрозы вы хотите защитить?