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 еще хуже.

Вы должны определить, какую безопасность вы хотите иметь. Какую цель или сценарий угрозы вы хотите защитить?

Другие вопросы по тегам