Приватні сторінки приватного репортажу Github


244

Не вдалося знайти нічого в документації на github, а також тут на SO. Але мені було цікаво, чи може бути http://foo.github.comприватне сховище з іменем, fooяке є доступним, лише один мав доступ до самого fooсховища.

Я пам’ятаю, що читав щось про сторінки github, які завжди є загальнодоступними, але, здається, цього більше не знаю.

І дивно, що я, здається, не можу знайти ще когось, хто задає питання.


2
Я гадаю, що не так багато людей використовують Github для розміщення приватних репостів. Або, принаймні, дуже мало хто з них використовує gh-сторінки.
Сіддхартха Редді

Я думаю , що тепер правильна відповідь повинна бути stackoverflow.com/a/54340540/1168342
Fuhrmanator

Відповіді:


219

Я підняв підтримку щодо Github і отримав відповідь, яка підтверджує той факт, що ВСІ сторінки є загальнодоступними. Зараз я попросив їх додати примітку до help.github.com/pages.


6
Чи повинні ваші сторінки Repo бути загальнодоступними, щоб сторінки GitHub працювали?
Денніс

34
@Dennis: Ні, це не так - ваше репо може бути приватним. Але опубліковані сторінки будуть загальнодоступними, і GitHub не має вбудованого способу обмеження доступу до перегляду, щоб дозволити їх бачити лише учасники приватного репо.
Мерлін Морган-Грехем

6
FYI, це можна побачити ДУЖЕ ЧИСТО тут
Дерек

//, Контроль доступу - дуже цікаве питання для Github. Мені подобається, що це привертає деяку увагу, @kashyap! Дякую.
Натан Басанес

Додавання до коментарів @Derek Adair вище. На сайті написано: "Увага! Сайти GitHub Pages доступні для всіх в Інтернеті, навіть якщо їх сховища є приватними. Якщо у вашому сховищі сторінки є конфіденційні дані, ви можете видалити їх перед публікацією."
Джей Кілін

62

Відповідно до документації GitHub Pages :

Усі сховища проектів готові використовувати генератор для публікації. Однак зауважте, що приватні сховища публікуватимуть загальнодоступні сторінки.

Так ні, наразі немає можливості створити приватні сторінки GitHub із приватного сховища GitHub.

Редагувати:

Просте вирішення

Вирішення для деяких ситуацій, які можуть бути корисними, - це просто перейменувати репо на щось, що не є форматом сторінок GitHub, хоча ви хочете, щоб воно було приватним (наприклад, на етапі розробки), і коли ви готові оприлюднити його, потім виправте ім’я. Очевидно, це все ще не допомагає, якщо ви шукаєте спосіб опублікувати сторінки, які мають автентифікацію, але якщо ви просто хочете приховати проект GH-сторінок, поки він працює, це може допомогти.

Фактична програма Auth Wrapper для Jekyll (сторінки GitHub)

Крім того, існує проект під назвою Jekyll Auth, який GitHubber @benbalter зробив для такого використання. Jekyll Auth забезпечує основну обгортку аутентифікації для проектів jekyll, включаючи сторінки GitHub. Дивіться README репо для використання.


1
Схоже, що перша посилання стара. help.github.com/articles/what-is-github-pages тепер має подібне попередження.
radicaledward101

14

Page.github.com згадує:

Сторінки Github розміщуються безкоштовно та легко публікуються через наш сайт,

Не згадуючи ніколи про контроль доступу.

Сторінка допомоги GitHub не кажучи вже про який - або ACL або.
Їм найкраще керувати у відділенні gh-сторінок , а ними можна керувати у власному підмодулі .
Але знову ж таки, без будь-яких обмежень у плані видимості, колись опублікованих GitHub.


14
Справді. Усі сторінки є загальнодоступними. Я отримав відповідь (про квиток підтримки) від github, що підтверджує це.
кашяп

13

Багато відповідей застаріли (придбання до Майкрософт / безкоштовні приватні репозиції). Про це було написано після оголошення безкоштовних приватних репостів.

Сторінки Github недоступні для безкоштовних приватних репостів для приватних осіб, як це показано в налаштуваннях репо:

введіть тут опис зображення

2020 рік (самий базовий план зараз "Команда"):

оновіть команду github або опублікуйте цю репозіорію, щоб увімкнути Сторінки


5
Це облом. Реклама з дзвіночками звітує про вільну доступність приватних репостів, але вони масово зменшують їх функціональність.
Роберт Естівілл

9

Існує стаття з робочою ідеєю про те, як вимагати авторизації oAuth перед динамічним завантаженням статичного вмісту:

Забезпечення веб-сайту, який працює на сторінках Github, за допомогою резервного JSON у приватному сховищі

Вміст повинен зберігатися в секретному сховищі GitHub, а глядач має доступ до читання. Сторінки GitHub зберігають лише обслуговуваний JS-код.


Це набагато краще, ніж використання hasdocs, тому що вам не потрібно давати дозвіл на репост ненадійному сторонній програмі.
Томмз

8

Як зазначено вище, сторінки Github не підтримують цю функціональність. У мене виникло те саме питання, коли наша команда вирішила розмістити проектну документацію (статичний HTML) всередині та приватно.

Я в кінцевому підсумку створив службу https://www.privatehub.cloud Це в основному простий проксі-сервер з автентифікацією Github OAuth, тому він просто повертає вміст вашого сховища GitHub з належним MIME-типом. За дизайном, лише ті, хто має доступ foo, зможуть переглядати fooвміст у https://bar-foo.privatehub.cloud. З функціональної точки зору ви можете думати про це як прості сторінки GitHub із вбудованою автентифікацією.

На жаль, Github OAuth не дозволяє запитувати read-onlyдоступ до приватних репостів, тому сервер потребує повного доступу (очевидно, він нічого не пише на ваше репо). Оскільки API GitHub дозволяє отримувати файли лише 1 Мб, сервіс не може повертати більші файли. Однак я знайшов, що послуга цілком підходить для невеликих проектів для внутрішньої документації або постановочної версії веб-сайту.


1
Примітка: ця послуга тепер мертва (або потенційно тимчасово
Джейсон Аксельсон,

1

Якщо натиснути адміністратора на приватному репо-сервері та прокрутити вниз до частини про сторінки, він пише, що він буде відкритим. Пізніше я перевірю, чи можливий .htaccess control чи подібне, але я не сподіваюся на це.


1
Метод .htaccess не працює. Якщо є якісь корисні пропозиції, повідомте мене :)
Rohde Fischer

Я нічого не міг знайти. Я думаю, це питання наразі закрите.
кашяп

0

ви можете використовувати GitLab . Ви можете визначити приватні проекти, і всі об'єкти схожі на Github.


Приватні сторінки ще не доступні на головному веб-сайті GitLab (лише в локальних примірниках) ... можливо, до середини травня 2019 року (див. < Gitlab.com/gitlab-com/gl-infra/infrastructure/isissue/5576> ).
rivy

-3

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

Демонстрація

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.