NextCloud в качестве поставщика Oauth

Я заметил, что в некоторых текущих версиях NextCloud есть пункт меню администратора для добавления клиентов Oauth 2.0. Это дает вам идентификатор клиента и секрет клиента, как и следовало ожидать, а также принимает URL-адрес перенаправления. Теперь вопрос в том, как мне это использовать. Я нашел только одно упоминание об этом в Интернете, и это это .

В настоящее время я использую прокси Oauth2 от Bitly на github, который можно найти здесь . Мой веб-сервер - Nginx, и я запускаю NextCloud 12. У меня есть еще одно внутреннее приложение, которое я также размещаю, оно запускается вместе с пустой установкой GitLab, и эта установка GitLab используется в качестве обратного прокси-сервера Oauth 2 для аутентификации до добраться до нашего внутреннего программного обеспечения.

Любая помощь или указатели были бы замечательными, это кажется очень мощной функцией NextCloud, которая, похоже, не имеет никакой поддержки / документации.

Чтобы быть немного более конкретным, я постараюсь лучше объяснить свой текущая настройка и то, как я хотел бы, чтобы она выглядела.

Текущая:

У меня есть 3 "дочерних сайта", если хотите:

  • GitLab: www.site.com/subsiteA/
  • NextCloud : www.site. com / subsiteB /
  • InternalSite: www.site.com/subsiteC/

Пользователь переходит на www.site.com/subsiteC и возвращается к логину GitLab по адресу www.site.com/subsiteA/ . После успешного входа в систему они возвращаются на www.site.com/subsiteC/ .

Аналогичным образом, если вы перейдете на www.site.com/subsiteB/ , вы будете проксированы через www.site.com/subsiteA/ , однако пользователю все равно придется входить в систему через NextCloud.

(Переход на дочерний сайтA приведет вас прямо к GtiLab)

Ideal Настройка:

  • NextCloud: www.site.com/subsiteA/
  • InternalSite: www.site.com/subsiteB/

Если вы перейдете на www.site.com/ subsiteB / вы попали через subsiteA , но это все. В этой настройке нет необходимости входить в GitLab перед входом в NextCloud.

1
задан 10 July 2017 в 22:29
1 ответ

Nextcloud добавил в свою документацию раздел об OAuth2 .

Вам понадобится различная информация как о ваших клиентских приложениях, так и о Nextcloud. Вот самые важные сведения о nextcloud:

  • Конечная точка авторизации: SERVER / apps / oauth2 / authorize
  • Конечная точка токена: SERVER / apps / oauth2 / api / v1 / token
  • URL профиля можно получить как JSON: SERVER / ocs / v2.php / cloud / user? format = json ( пример вывода )
  • Информация профиля затем сохраняется в ocs .data.id , ocs.data.display-name , ocs.data.email и некоторые другие.

Я написал два руководства:

Возможно, это хорошее начало для ваших нужд конфигурации. Если вы встретите какие-либо другие хорошие руководства, не забудьте упомянуть их в комментариях!

0
ответ дан 4 December 2019 в 04:48

Теги

Похожие вопросы