Как героку гарантирует, что только владельцы приложений могут сделать толчок к голому репо героку?

Heroku имеет действительно аккуратный механизм развертывания. Он пользуется популярным инструментом git. Для развертывания все пользователи должны сделать это

git push heroku master

Я читаю https://devcenter.heroku.com/articles/authentication с надеждой что-то настроить, чтобы я мог отказаться от ftp и использовать git push для развертывания обновлений на моем не-героку веб-сервере.

Как heroku гарантирует, что только авторизованные пользователи могут 'git push' к heroku?

2 ответа

Решение

Сегодня Heroku использует проприетарное программное обеспечение, которое прослушивает TCP-соединения по SSH и HTTP и понимает только протокол GIT.

Это означает, что мы можем легко выполнить аутентификацию, проверив заголовки HTTP или закрытый ключ SSH, отправленный при открытии соединения, и отклонив его при необходимости.

Мы не использовали гитолит уже несколько лет.
Вы должны быть в состоянии достичь чего-то подобного на своем собственном сервере довольно легко, хотя.
Используя докку например.

Heroku, возможно, использовал gitosis ( устаревший с 2009 года) или gitolite, но это больше не так.

Вы можете нажать (через https или ssh), если вы являетесь владельцем приложения или соавтором.
Вы действительно можете передать владение приложением.

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