OwnCloud OpenID аутентификация пользователя

7094
Jason Kleban

Я использую Службы Google для учетных записей пользователей и электронной почты моей организации. Очень удобно, чтобы наши пользователи использовали OpenID Google для входа на различные веб-сайты, включая StackExchange, без необходимости создавать и поддерживать ДАЖЕ ДРУГОЙ пароль.

OwnCloud выглядит как отличный проект для совместного использования файлов, и у меня установлен экземпляр. Предположительно, OwnCloud поддерживает аутентификацию OpenID вместо пользовательских имен пользователей и паролей, но я не могу найти никакой документации о том, как это настроить. Я включил приложения "OpenID user backend" и "Поддержка внешних пользователей" в своем экземпляре owncloud, но я не могу понять, как их использовать - особенно для Open Apps Google Apps (и без включения Google+ для OpenID)

Немного запутанно узнать, предназначена ли поддержка OpenID для использования экземпляра OwnCloud в качестве полномочия OpenID или, как мне нужно, для принятия OpenID для входа в систему.

Кроме того, даже если бы я знал, как войти в веб-приложение, я также хочу использовать толстый клиент OwnCloud (windows) и продолжать использовать OpenID для входа в систему с помощью этой программы. Я не рассматриваю это как вариант.

Я бы назначил награду за это, но у меня нет очков. Кто-нибудь хочет открыть награду за это?

12
При обычном входе в систему вы видите новую опцию в разделе «Личные / Настройки», которая позволяет вам войти в провайдера openid? Paul 11 лет назад 0
Да, но я не могу понять, что туда поставить. Кажется, не имеет значения, что я вставил, но я также не знаю, как это должно быть - OpenId Служб Google странный, и никакое предположение не меняет поведение. Jason Kleban 11 лет назад 0

3 ответа на вопрос

2
rpet

Не ожидайте, что экран входа в систему изменится.

После настройки моего локального пользователя OwnCloud с идентификатором у моего провайдера OpenID браузер перенаправляется на мой сервер авторизации сразу после отправки моего идентификатора OpenID на страницу входа в OwnCloud, поэтому эта часть процесса работает нормально.

К сожалению, процесс входа не удался, потому что, наконец, я снова перенаправлен на страницу входа в OwnCloud (кстати, не выдает никакой ошибки)

Обновление (24 апреля 2013 г.):

Я начал изучать код и обнаружил, что OwnCloud использует, class.openid.v3.phpкоторый, похоже, не поддерживает OpenID v2.0 (см. Https://stackoverflow.com/questions/6724729/has-any-one-got-class -openid-php-working-with-google-openid )

(Обратите внимание, что это очень предварительная информация. Возможно, файл, class.openid.v3.phpпоставляемый с OwnCloud, был обновлен для поддержки последней версии OpenID. На самом деле, http://openid.net/developers/libraries/ говорит, что «Простой класс OpenID PHP» совместим с 2.0)

Вы должны войти в свой OwnCloud с учетной записью пользователя, а затем также войти в свой OpenID? Я понимаю, что тогда у вас ничего не получится, но вы говорите, что вам придется войти в систему дважды? Jason Kleban 11 лет назад 0
Нет, вам не нужно заходить дважды. То, что я говорю: 1. Я пытаюсь войти в систему с моей идентификацией OpenID в моем экземпляре OwnCloud 2. OwnCloud перенаправляет на портал аутентификации пользователей в моем университете 3. Я вхожу в систему, используя свой портал авторизации с моими учетными данными университета 4. Мой Портал auth перенаправляет обратно на OwnCloud 5. По какой-то пока неизвестной причине OwnCloud не распознает процесс аутентификации и снова показывает свой экран входа в систему. rpet 11 лет назад 0
Как вы делаете шаг 1? Как OwnCloud должен определять разницу между локальным именем пользователя и OpenID? Какой формат OpenID вы вводите на экране входа? Разве это не то, что вы уже ввели в личные настройки в OwnCloud? Jason Kleban 11 лет назад 0
Я предполагаю, что OwnCloud ищет авторизованные идентификаторы OpenId в пользовательской базе данных. В любом случае, дело в том, что мне нужно было только объявить `http: // yo.rediris.es / soy / userid @ my.domain` в моем профиле пользователя, выйти из системы и снова войти в систему с этим идентификатором. В зависимости от браузера может потребоваться ввести также поддельный пароль. rpet 11 лет назад 0
0
Kevin Cox

Согласно этому посту, вы вводите свой URL-адрес OpenID в поле имени пользователя.

Если вы входите в систему с помощью Google, это либо URL вашего профиля Google+, либо https://www.google.com/accounts/o8/id (для всех аккаунтов).

Извините, я не смог проверить это, но я не запускаю экземпляр owncloud.

Ну, я могу положить в https: // www.google.com / accounts / o8 / id`, и он «сохраняет» его, но ничего не происходит. Больше никаких вариантов нет, и экран входа не меняется. Jason Kleban 11 лет назад 0
Извините, но, как я уже сказал, у меня нет экземпляра owncloud. Желаем удачи в поиске решения. Kevin Cox 11 лет назад 0
0
sventechie

Одна из альтернатив, которую я исследовал, заключалась в использовании параметров «внешней аутентификации», особенно аутентификации SMTP для Gmail. Это также не сработало должным образом. Другой альтернативой было использование OAuth 2.0, но это включало нацеливание всего моего домена приложений Google на внешний сервер.

Похоже, в настоящее время существует несколько готовых плагинов для ownCloud. Использование альтернативной аутентификации также запрещает вам обмениваться данными между пользователями и, как правило, не имеет функций.