Re: Re[16]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
10.04 больше уже даже не поддерживается, не знаю что тут посоветовать можно попробовать на более старые mysql драйвера откатываться 2015-04-09 14:07 GMT+06:00 Alexey Terekhov deadl...@mail.ru: :) ждем... по возник вопрос: У меня установлен: mysql Версия сервера: 5.1.73-0ubuntu0.10.04.1 в общем, обновил java, решил запустить 3.0.4 на ubuntu 10.04 без sql установилась... с mysql беда: om ругается на проблемы у mysql-connector-5.1.34(или 35 на обоих пробовал).jar 57 сообщений... с базами и правами вроде как все норм. может ли это быть связанно с древней версией mysql сервера? --- С уважением, Алексей Терехов. +7 926 076 15 20 Четверг, 9 апреля 2015, 12:41 +06:00 от Maxim Solodovnik solomax...@gmail.com: бывает :) новый билд строится сейчас WBR, Maxim (from mobile, sorry for the typos) On Apr 9, 2015 4:51 AM, Alexey Terekhov deadl...@mail.ru https://e.mail.ru/compose/?mailto=mailto%3adeadl...@mail.ru wrote: с 3.0.5.r1672122 у меня беда. удалил 3.0.4 поставил 3.0.5 не могу добавить или изменить пользователя выкидывает на internal error ставил с mysql использовал и mysql-connector-java-5.1.34 и 35 устанавливал без базы то же самое. не могу регистрировать, добавлять, изменять пользователей. однако настройки конфигурации и oauth2 менять можно. --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 21:55 +06:00 от Maxim Solodovnik solomax...@gmail.com https://e.mail.ru/compose/?mailto=mailto%3asolomax...@gmail.com: может надо просто прав (Permissions) добавить: https://api.yandex.com/oauth/doc/dg/tasks/register-client.xml 2015-04-08 21:44 GMT+06:00 Maxim Solodovnik solomax...@gmail.com https://e.mail.ru/compose/?mailto=mailto%3asolomax...@gmail.com: отлично, спасибо правильно ли я понимаю что яндекс не отдаёт email? 2015-04-08 21:08 GMT+06:00 Alexey Terekhov deadl...@mail.ru https://e.mail.ru/compose/?mailto=mailto%3adeadl...@mail.ru: Понял :) Вот ответ с какой-то инфой на те запросы. Если нужно, могу от разных логинов инфу скинуть. yandex: {first_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440, last_name: \u041c\u0430\u043b\u044e\u0442\u0438\u043d, display_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, emails: [], old_social_login: uid-3qmd6pky, default_email: , real_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, birthday: 1982-03-12, default_avatar_id: 312668714, login: uid-3qmd6pky, sex: male, id: 312668714}/td/tr/table google: { id: 100571430989931346920, email: coaching@gmail.com https://e.mail.ru/compose/?mailto=mailto%3acoaching@gmail.com, verified_email: true, name: Коучинг Центр, given_name: Коучинг, family_name: Центр, link: https://plus.google.com/100571430989931346920;, picture: https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAI/AAA/4252rscbv5M/photo.jpg , gender: male, locale: ru } facebook: {id:869800643078717,email:dead\u0040mail.ru ,first_name:Alexey,gender:male,last_name:Terekhov,link:https:\/\/ www.facebook.com \/app_scoped_user_id\/869800643078717\/,locale:ru_RU,name:Alexey Terekhov,timezone:3,updated_time:2015-04-06T14:25:40+,verified:true}/td/tr/table --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 20:45 +06:00 от Maxim Solodovnik solomax...@gmail.com https://e.mail.ru/compose/?mailto=mailto%3asolomax...@gmail.com: по правде говоря хотелось бы получить нормальный список параметров позволяющих получить login (username) email first name last name если есть какие-то другие полезные поля то и их тоже хаки не очень интересны, нужно не обходить, а решать проблему 2015-04-08 19:39 GMT+06:00 Alexey Terekhov deadl...@mail.ru https://e.mail.ru/compose/?mailto=mailto%3adeadl...@mail.ru : `oauth_servers` 1. В место email указываю id, чтобы не было конфликтов. работает. login_param_name указываю id. (эх, сюда бы префикс в начало...) если id совпадут будет ошибка. :( 2. В яндеск при подключении нужно открыть доступ к яндекс.паспорт, иначе яндекс не даст first_name и т.п. и будет ошибка. Этот общий для всех!!! `request_token_attributes`='code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri}grant_type=authorization_code' Название `firstname_param_name`, `lastname_param_name`, `email_param_name`, `login_param_name`, `request_info_url`, `request_key_url`, `request_token_url` Yandex 'first_name', 'last_name', 'id', 'id', '
Re: Re[14]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
бывает :) новый билд строится сейчас WBR, Maxim (from mobile, sorry for the typos) On Apr 9, 2015 4:51 AM, Alexey Terekhov deadl...@mail.ru wrote: с 3.0.5.r1672122 у меня беда. удалил 3.0.4 поставил 3.0.5 не могу добавить или изменить пользователя выкидывает на internal error ставил с mysql использовал и mysql-connector-java-5.1.34 и 35 устанавливал без базы то же самое. не могу регистрировать, добавлять, изменять пользователей. однако настройки конфигурации и oauth2 менять можно. --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 21:55 +06:00 от Maxim Solodovnik solomax...@gmail.com: может надо просто прав (Permissions) добавить: https://api.yandex.com/oauth/doc/dg/tasks/register-client.xml 2015-04-08 21:44 GMT+06:00 Maxim Solodovnik solomax...@gmail.com: отлично, спасибо правильно ли я понимаю что яндекс не отдаёт email? 2015-04-08 21:08 GMT+06:00 Alexey Terekhov deadl...@mail.ru: Понял :) Вот ответ с какой-то инфой на те запросы. Если нужно, могу от разных логинов инфу скинуть. yandex: {first_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440, last_name: \u041c\u0430\u043b\u044e\u0442\u0438\u043d, display_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, emails: [], old_social_login: uid-3qmd6pky, default_email: , real_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, birthday: 1982-03-12, default_avatar_id: 312668714, login: uid-3qmd6pky, sex: male, id: 312668714}/td/tr/table google: { id: 100571430989931346920, email: coaching@gmail.com, verified_email: true, name: Коучинг Центр, given_name: Коучинг, family_name: Центр, link: https://plus.google.com/100571430989931346920;, picture: https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAI/AAA/4252rscbv5M/photo.jpg , gender: male, locale: ru } facebook: {id:869800643078717,email:dead\u0040mail.ru ,first_name:Alexey,gender:male,last_name:Terekhov,link:https:\/\/ www.facebook.com \/app_scoped_user_id\/869800643078717\/,locale:ru_RU,name:Alexey Terekhov,timezone:3,updated_time:2015-04-06T14:25:40+,verified:true}/td/tr/table --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 20:45 +06:00 от Maxim Solodovnik solomax...@gmail.com: по правде говоря хотелось бы получить нормальный список параметров позволяющих получить login (username) email first name last name если есть какие-то другие полезные поля то и их тоже хаки не очень интересны, нужно не обходить, а решать проблему 2015-04-08 19:39 GMT+06:00 Alexey Terekhov deadl...@mail.ru : `oauth_servers` 1. В место email указываю id, чтобы не было конфликтов. работает. login_param_name указываю id. (эх, сюда бы префикс в начало...) если id совпадут будет ошибка. :( 2. В яндеск при подключении нужно открыть доступ к яндекс.паспорт, иначе яндекс не даст first_name и т.п. и будет ошибка. Этот общий для всех!!! `request_token_attributes`='code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri}grant_type=authorization_code' Название `firstname_param_name`, `lastname_param_name`, `email_param_name`, `login_param_name`, `request_info_url`, `request_key_url`, `request_token_url` Yandex 'first_name', 'last_name', 'id', 'id', ' https://login.yandex.ru/info?format=jsonoauth_token={$access_token }' ' https://oauth.yandex.ru/authorize?response_type=codeclient_id={$client_id } ' ' https://oauth.yandex.ru/token ' Google 'given_name', 'family_name', 'id', 'id' ' https://www.googleapis.com/oauth2/v1/userinfo?access_token={$access_token } ' ' https://accounts.google.com/o/oauth2/auth?redirect_uri={$redirect_uri}response_type=codeclient_id={$client_id}scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile https://accounts.google.com/o/oauth2/auth?redirect_uri=%7B$redirect_uri%7Dresponse_type=codeclient_id=%7B$client_id%7Dscope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile https://accounts.google.com/o/oauth2/auth?redirect_uri=%7B$redirect_uri%7Dresponse_type=codeclient_id=%7B$client_id%7Dscope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile ' ' https://accounts.google.com/o/oauth2/token '
Re[14]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
с 3.0.5.r1672122 у меня беда. удалил 3.0.4 поставил 3.0.5 не могу добавить или изменить пользователя выкидывает на internal error ставил с mysql использовал и mysql-connector-java-5.1.34 и 35 устанавливал без базы то же самое. не могу регистрировать, добавлять, изменять пользователей. однако настройки конфигурации и oauth2 менять можно. --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 21:55 +06:00 от Maxim Solodovnik solomax...@gmail.com: может надо просто прав (Permissions) добавить: https://api.yandex.com/oauth/doc/dg/tasks/register-client.xml 2015-04-08 21:44 GMT+06:00 Maxim Solodovnik solomax...@gmail.com: отлично, спасибо правильно ли я понимаю что яндекс не отдаёт email? 2015-04-08 21:08 GMT+06:00 Alexey Terekhov deadl...@mail.ru: Понял :) Вот ответ с какой-то инфой на те запросы. Если нужно, могу от разных логинов инфу скинуть. yandex: {first_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440, last_name: \u041c\u0430\u043b\u044e\u0442\u0438\u043d, display_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, emails: [], old_social_login: uid-3qmd6pky, default_email: , real_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, birthday: 1982-03-12, default_avatar_id: 312668714, login: uid-3qmd6pky, sex: male, id: 312668714}/td/tr/table google: { id: 100571430989931346920, email: coaching@gmail.com, verified_email: true, name: Коучинг Центр, given_name: Коучинг, family_name: Центр, link: https://plus.google.com/100571430989931346920;, picture: https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAI/AAA/4252rscbv5M/photo.jpg , gender: male, locale: ru } facebook: {id:869800643078717,email:dead\u0040mail.ru ,first_name:Alexey,gender:male,last_name:Terekhov,link:https:\/\/ www.facebook.com\/app_scoped_user_id\/869800643078717\/,locale:ru_RU,name:Alexey Terekhov,timezone:3,updated_time:2015-04-06T14:25:40+,verified:true}/td/tr/table --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 20:45 +06:00 от Maxim Solodovnik solomax...@gmail.com: по правде говоря хотелось бы получить нормальный список параметров позволяющих получить login (username) email first name last name если есть какие-то другие полезные поля то и их тоже хаки не очень интересны, нужно не обходить, а решать проблему 2015-04-08 19:39 GMT+06:00 Alexey Terekhov deadl...@mail.ru : `oauth_servers` 1. В место email указываю id, чтобы не было конфликтов. работает. login_param_name указываю id. (эх, сюда бы префикс в начало...) если id совпадут будет ошибка. :( 2. В яндеск при подключении нужно открыть доступ к яндекс.паспорт, иначе яндекс не даст first_name и т.п. и будет ошибка. Этот общий для всех!!! `request_token_attributes`='code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri}grant_type=authorization_code' Название `firstname_param_name`, `lastname_param_name`, `email_param_name`, `login_param_name`, `request_info_url`, `request_key_url`, `request_token_url` Yandex 'first_name', 'last_name', 'id', 'id', ' https://login.yandex.ru/info?format=jsonoauth_token={$access_token }' ' https://oauth.yandex.ru/authorize?response_type=codeclient_id={$client_id } ' ' https://oauth.yandex.ru/token ' Google 'given_name', 'family_name', 'id', 'id' ' https://www.googleapis.com/oauth2/v1/userinfo?access_token={$access_token } ' ' https://accounts.google.com/o/oauth2/auth?redirect_uri={$redirect_uri}response_type=codeclient_id={$client_id}scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile https://accounts.google.com/o/oauth2/auth?redirect_uri=%7B$redirect_uri%7Dresponse_type=codeclient_id=%7B$client_id%7Dscope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile ' ' https://accounts.google.com/o/oauth2/token ' Facebook 'first_name', 'last_name', 'id', 'id' ' https://graph.facebook.com/me?access_token={$access_token }' ' https://www.facebook.com/dialog/oauth?client_id={$client_id}redirect_uri={$redirect_uri}scope=emailresponse_type=code ' ' https://graph.facebook.com/v2.3/oauth/access_token ' --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 17:58 +06:00 от Maxim Solodovnik solomax...@gmail.com : ну я жду тогда параметры
Re: Re[8]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
ну я жду тогда параметры добавляю это всё в параметры по умолчанию и заливаю строю билд и можно тестить :) у меня почти всё проверить не выйдет так что буду рад помощи с тестированием билд появится тут: https://builds.apache.org/view/M-R/view/OpenMeetings/job/Openmeetings%203.0.x/ 2015-04-08 17:41 GMT+06:00 Alexey Terekhov deadl...@mail.ru: Ура... нашел нужный запрос для facebook!!! вот корректный, в настройках по умолчанию старый, который дает access_token не json как все, а в виде параметра url. https://graph.facebook.com/v2.3/oauth/access_token; - это вернет access_token в json Ok. сейчас этим и занимаюсь. :) инфы готовой много, нужно проверять и хочу собрать в короткий формат. но в целом вот сложности: vk.com возвращает данные в виде: response: [ { uid: 205387401 , first_name: 'Tom' , last_name: 'Cruise' } ] ! нужно из ответа убрать убрать первых 11 символов и последний. возможно найду вариант в другом формате получить, например xls. mail.ru и (одноклассники) для запроса данных просит sing который нужно ГЕНЕРИРОВАТЬ sign=hex_md5('app_id={client_id}method=users.getInfosecure=1session_key={access_token}{secret_key}') 1. Чуть позже скину свои настройки для сетей (facebook, yandex, google). 2. С vk.com и mail.ru скорее всего через костыль, вряд ли есть смысл под них что-то делать в OM. возможно эти системы когда-нибудь сделают нормальный ответ и их можно будет прописать. 3. Доп. параметры, пол, день рождение, телефон и прочее, что возвращают сети прошу добавить их в бушующих версиях. + или какая-нибудь копка в профиле заполнить данные из соц.сети (если вход через сеть). --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 16:38 +06:00 от Maxim Solodovnik solomax...@gmail.com: ну Вы напишите какие поля какой провайдер предоставляет и как они называются (если это возможно) и я поправлю чтобы нормально работало 2015-04-08 15:05 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Спасибо за ответы!!! Получается так: 1. OAutch - в целом работает хорошо, однако желательно в будущем улучшить обработчик ошибок. internal error поменять, на что-нибудь более понятное. 2. Для кривых соц.сетей использовать внешний обработчик который вернет системе поля: login,email,fist_name,last_name. * было бы неплохо расширить список полей обрабатываемых от OAuth2 (тел для sms,дата рождения и т.п.) 3. Думаю для входа через OAutch 3.0.4 сегодня можно и нужно! прописать префиксы сети к login так как два одинаковых логин приведут к internal error. а поле email делать пустым, это должно решить вопрос с входом из соц.сетей но мы теряем связь с этими пользователями, нет возможности им написать на email. или попробовать добавить к email префикс - но такой адрес может не пройти валидацию и привести к новым ошибкам. ! в 3.0.2 пользователь может менять в профиле emal адрес на любой свободный. + думаю необходим flag в config разрешающий использовать одинаковые email для разных типов входов и идентифицировать их как разных пользователей в системе. сопоставлять при авторизации e-mail с типом входа. то есть, может быть N одинаковых e-mail для N разных типов входов - каждый тип входа + email уникальный аккаунт. + в последствии реализовать в профиле управление входами, объединение аккаунтов с различных входов. Ушел дописывать свой костыль, думаю добавить вход через mail.ru. если кому-нибудь интересе вход, еще через что-нибудь кроме: yandex,google,facebook,vk.com,mail.ru - пишите. так как мне этих 5 систем хватит. По результату, думаю завтра, опишу свои настройки OAuth2 для нормальных сетей и входы/обработка/выводы костыля для кривых может кому-нибудь пригодится. --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 11:52 +06:00 от Maxim Solodovnik solomax...@gmail.com : 1) по поводу ошибки я думаю что вот это https://issues.apache.org/jira/browse/OPENMEETINGS-1196 она 2) логин с одним мылом и разными провайдерами - хороший вопрос, надо подумать 3) request_method может быть 0 == post и 1 == get. тут недоглядели, надо было сохранять этот енум по именам 4) доп поля, сейчас не достаются, но это можно, patches are welcome :) ну я так думаю что internal error надо починить к релизу 3.0.5 (будет через неделю примерно) а остальное подумать и сделать к следующей версии помощь в тестировании будет очень кстати :) 2015-04-08 7:13 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Доброй ночи. в OM 3.0.4 google работает прописал ключи и в путь... yandex нужно изменить 'email_param_name' и 'login_param_name' с 'default_email' на 'login'. (так как в ответе от яндекса нет default_email). facebook, vk.com решил через костыль. :) в admin/oauth2 request_key_url=http://localhost/crutch.php
Re: Re[6]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
ну Вы напишите какие поля какой провайдер предоставляет и как они называются (если это возможно) и я поправлю чтобы нормально работало 2015-04-08 15:05 GMT+06:00 Alexey Terekhov deadl...@mail.ru: Спасибо за ответы!!! Получается так: 1. OAutch - в целом работает хорошо, однако желательно в будущем улучшить обработчик ошибок. internal error поменять, на что-нибудь более понятное. 2. Для кривых соц.сетей использовать внешний обработчик который вернет системе поля: login,email,fist_name,last_name. * было бы неплохо расширить список полей обрабатываемых от OAuth2 (тел для sms,дата рождения и т.п.) 3. Думаю для входа через OAutch 3.0.4 сегодня можно и нужно! прописать префиксы сети к login так как два одинаковых логин приведут к internal error. а поле email делать пустым, это должно решить вопрос с входом из соц.сетей но мы теряем связь с этими пользователями, нет возможности им написать на email. или попробовать добавить к email префикс - но такой адрес может не пройти валидацию и привести к новым ошибкам. ! в 3.0.2 пользователь может менять в профиле emal адрес на любой свободный. + думаю необходим flag в config разрешающий использовать одинаковые email для разных типов входов и идентифицировать их как разных пользователей в системе. сопоставлять при авторизации e-mail с типом входа. то есть, может быть N одинаковых e-mail для N разных типов входов - каждый тип входа + email уникальный аккаунт. + в последствии реализовать в профиле управление входами, объединение аккаунтов с различных входов. Ушел дописывать свой костыль, думаю добавить вход через mail.ru. если кому-нибудь интересе вход, еще через что-нибудь кроме: yandex,google,facebook,vk.com,mail.ru - пишите. так как мне этих 5 систем хватит. По результату, думаю завтра, опишу свои настройки OAuth2 для нормальных сетей и входы/обработка/выводы костыля для кривых может кому-нибудь пригодится. --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 11:52 +06:00 от Maxim Solodovnik solomax...@gmail.com: 1) по поводу ошибки я думаю что вот это https://issues.apache.org/jira/browse/OPENMEETINGS-1196 она 2) логин с одним мылом и разными провайдерами - хороший вопрос, надо подумать 3) request_method может быть 0 == post и 1 == get. тут недоглядели, надо было сохранять этот енум по именам 4) доп поля, сейчас не достаются, но это можно, patches are welcome :) ну я так думаю что internal error надо починить к релизу 3.0.5 (будет через неделю примерно) а остальное подумать и сделать к следующей версии помощь в тестировании будет очень кстати :) 2015-04-08 7:13 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Доброй ночи. в OM 3.0.4 google работает прописал ключи и в путь... yandex нужно изменить 'email_param_name' и 'login_param_name' с 'default_email' на 'login'. (так как в ответе от яндекса нет default_email). facebook, vk.com решил через костыль. :) в admin/oauth2 request_key_url=http://localhost/crutch.php request_token_attributes=code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri} request_token_url= http://localhost/crutch.php?access_token={$access_token} OM обращается к моему скрипту php, скрипт на запрос 1 POST. возвращает access_token в JSON формате на запрос 2 GET. возвращает login,email,firs_name,last_name в JSON формате задача скрипта получить данные от соц. сетей и вернуть их в нужном формате в OpenMeeting. Думаю это важный BUG или ВОПРОС: по Русски: если я зарегистрировался через email + login + password, то попытка зайти через соц.сеть в которой указан мой email приведет к internat error! к тому же приведет если в ответе от соц. сети будет login который уже есть в системе = internat error. или например у меня один email указан в google и контакте, я смогу заходить только через то, через что был первый вход, другую кинет в internat error. = в системе не может быть более одного пользователя с login или email. то есть email и login должны быть уникальными, исключение пустые (возможно одна запить где email= и login=; неограниченно email=, login=random() или email=random(), login=) но если login задан, такого второго быть не может! 1. если к логин можно прикрутить префикс, то как быть с email - ВОПРОС. 2. Возможность заходить через e-mail и соц. сети одному и тому же пользователю. - как идентифицировать, что это один и тот же человек из разных систем, а не злоумышленник зарегился под чужой email в контакте и пробует зайдет с правами админа. ДОП. ВОПРОСЫ: 1. В таблице `oauth_servers` есть поле `request_method` типа int Используется ли оно, если да, то какие возможны значения? 2. Кроме login,email,firs_name,last_name - может ли система еще что-нибудь принять, например phone, photo и т.п. или нужно в базе через костыль ковыряться? Мои соображения: Я думаю, что тут ключевым является требования к безопасности и
Re[8]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
Ура... нашел нужный запрос для facebook!!! вот корректный, в настройках по умолчанию старый, который дает access_token не json как все, а в виде параметра url. https://graph.facebook.com/v2.3/oauth/access_token; - это вернет access_token в json Ok. сейчас этим и занимаюсь. :) инфы готовой много, нужно проверять и хочу собрать в короткий формат. но в целом вот сложности: vk.com возвращает данные в виде: response: [ { uid: 205387401 , first_name: 'Tom' , last_name: 'Cruise' } ] ! нужно из ответа убрать убрать первых 11 символов и последний. возможно найду вариант в другом формате получить, например xls. mail.ru и (одноклассники) для запроса данных просит sing который нужно ГЕНЕРИРОВАТЬ sign=hex_md5('app_id={client_id}method=users.getInfosecure=1session_key={access_token}{secret_key}') 1. Чуть позже скину свои настройки для сетей (facebook, yandex, google). 2. С vk.com и mail.ru скорее всего через костыль, вряд ли есть смысл под них что-то делать в OM. возможно эти системы когда-нибудь сделают нормальный ответ и их можно будет прописать. 3. Доп. параметры, пол, день рождение, телефон и прочее, что возвращают сети прошу добавить их в бушующих версиях. + или какая-нибудь копка в профиле заполнить данные из соц.сети (если вход через сеть). --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 16:38 +06:00 от Maxim Solodovnik solomax...@gmail.com: ну Вы напишите какие поля какой провайдер предоставляет и как они называются (если это возможно) и я поправлю чтобы нормально работало 2015-04-08 15:05 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Спасибо за ответы!!! Получается так: 1. OAutch - в целом работает хорошо, однако желательно в будущем улучшить обработчик ошибок. internal error поменять, на что-нибудь более понятное. 2. Для кривых соц.сетей использовать внешний обработчик который вернет системе поля: login,email,fist_name,last_name. * было бы неплохо расширить список полей обрабатываемых от OAuth2 (тел для sms,дата рождения и т.п.) 3. Думаю для входа через OAutch 3.0.4 сегодня можно и нужно! прописать префиксы сети к login так как два одинаковых логин приведут к internal error. а поле email делать пустым, это должно решить вопрос с входом из соц.сетей но мы теряем связь с этими пользователями, нет возможности им написать на email. или попробовать добавить к email префикс - но такой адрес может не пройти валидацию и привести к новым ошибкам. ! в 3.0.2 пользователь может менять в профиле emal адрес на любой свободный. + думаю необходим flag в config разрешающий использовать одинаковые email для разных типов входов и идентифицировать их как разных пользователей в системе. сопоставлять при авторизации e-mail с типом входа. то есть, может быть N одинаковых e-mail для N разных типов входов - каждый тип входа + email уникальный аккаунт. + в последствии реализовать в профиле управление входами, объединение аккаунтов с различных входов. Ушел дописывать свой костыль, думаю добавить вход через mail.ru. если кому-нибудь интересе вход, еще через что-нибудь кроме: yandex,google,facebook,vk.com,mail.ru - пишите. так как мне этих 5 систем хватит. По результату, думаю завтра, опишу свои настройки OAuth2 для нормальных сетей и входы/обработка/выводы костыля для кривых может кому-нибудь пригодится. --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 11:52 +06:00 от Maxim Solodovnik solomax...@gmail.com : 1) по поводу ошибки я думаю что вот это https://issues.apache.org/jira/browse/OPENMEETINGS-1196 она 2) логин с одним мылом и разными провайдерами - хороший вопрос, надо подумать 3) request_method может быть 0 == post и 1 == get. тут недоглядели, надо было сохранять этот енум по именам 4) доп поля, сейчас не достаются, но это можно, patches are welcome :) ну я так думаю что internal error надо починить к релизу 3.0.5 (будет через неделю примерно) а остальное подумать и сделать к следующей версии помощь в тестировании будет очень кстати :) 2015-04-08 7:13 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Доброй ночи. в OM 3.0.4 google работает прописал ключи и в путь... yandex нужно изменить 'email_param_name' и 'login_param_name' с 'default_email' на 'login'. (так как в ответе от яндекса нет default_email). facebook, vk.com решил через костыль. :) в admin/oauth2 request_key_url=http://localhost/crutch.php request_token_attributes=code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri} request_token_url= http://localhost/crutch.php?access_token={$access_token } OM обращается к моему скрипту php, скрипт на запрос 1 POST. возвращает access_token в JSON формате на запрос 2 GET. возвращает login,email,firs_name,last_name в JSON формате задача скрипта получить данные от соц. сетей и вернуть их в нужном формате в OpenMeeting. Думаю это важный BUG или ВОПРОС: по Русски: если я зарегистрировался
Re[6]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
Спасибо за ответы!!! Получается так: 1. OAutch - в целом работает хорошо, однако желательно в будущем улучшить обработчик ошибок. internal error поменять, на что-нибудь более понятное. 2. Для кривых соц.сетей использовать внешний обработчик который вернет системе поля: login,email,fist_name,last_name. * было бы неплохо расширить список полей обрабатываемых от OAuth2 (тел для sms,дата рождения и т.п.) 3. Думаю для входа через OAutch 3.0.4 сегодня можно и нужно! прописать префиксы сети к login так как два одинаковых логин приведут к internal error. а поле email делать пустым, это должно решить вопрос с входом из соц.сетей но мы теряем связь с этими пользователями, нет возможности им написать на email. или попробовать добавить к email префикс - но такой адрес может не пройти валидацию и привести к новым ошибкам. ! в 3.0.2 пользователь может менять в профиле emal адрес на любой свободный. + думаю необходим flag в config разрешающий использовать одинаковые email для разных типов входов и идентифицировать их как разных пользователей в системе. сопоставлять при авторизации e-mail с типом входа. то есть, может быть N одинаковых e-mail для N разных типов входов - каждый тип входа + email уникальный аккаунт. + в последствии реализовать в профиле управление входами, объединение аккаунтов с различных входов. Ушел дописывать свой костыль, думаю добавить вход через mail.ru. если кому-нибудь интересе вход, еще через что-нибудь кроме: yandex,google,facebook,vk.com,mail.ru - пишите. так как мне этих 5 систем хватит. По результату, думаю завтра, опишу свои настройки OAuth2 для нормальных сетей и входы/обработка/выводы костыля для кривых может кому-нибудь пригодится. --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 11:52 +06:00 от Maxim Solodovnik solomax...@gmail.com: 1) по поводу ошибки я думаю что вот это https://issues.apache.org/jira/browse/OPENMEETINGS-1196 она 2) логин с одним мылом и разными провайдерами - хороший вопрос, надо подумать 3) request_method может быть 0 == post и 1 == get. тут недоглядели, надо было сохранять этот енум по именам 4) доп поля, сейчас не достаются, но это можно, patches are welcome :) ну я так думаю что internal error надо починить к релизу 3.0.5 (будет через неделю примерно) а остальное подумать и сделать к следующей версии помощь в тестировании будет очень кстати :) 2015-04-08 7:13 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Доброй ночи. в OM 3.0.4 google работает прописал ключи и в путь... yandex нужно изменить 'email_param_name' и 'login_param_name' с 'default_email' на 'login'. (так как в ответе от яндекса нет default_email). facebook, vk.com решил через костыль. :) в admin/oauth2 request_key_url=http://localhost/crutch.php request_token_attributes=code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri} request_token_url=http://localhost/crutch.php?access_token={$access_token} OM обращается к моему скрипту php, скрипт на запрос 1 POST. возвращает access_token в JSON формате на запрос 2 GET. возвращает login,email,firs_name,last_name в JSON формате задача скрипта получить данные от соц. сетей и вернуть их в нужном формате в OpenMeeting. Думаю это важный BUG или ВОПРОС: по Русски: если я зарегистрировался через email + login + password, то попытка зайти через соц.сеть в которой указан мой email приведет к internat error! к тому же приведет если в ответе от соц. сети будет login который уже есть в системе = internat error. или например у меня один email указан в google и контакте, я смогу заходить только через то, через что был первый вход, другую кинет в internat error. = в системе не может быть более одного пользователя с login или email. то есть email и login должны быть уникальными, исключение пустые (возможно одна запить где email= и login=; неограниченно email=, login=random() или email=random(), login=) но если login задан, такого второго быть не может! 1. если к логин можно прикрутить префикс, то как быть с email - ВОПРОС. 2. Возможность заходить через e-mail и соц. сети одному и тому же пользователю. - как идентифицировать, что это один и тот же человек из разных систем, а не злоумышленник зарегился под чужой email в контакте и пробует зайдет с правами админа. ДОП. ВОПРОСЫ: 1. В таблице `oauth_servers` есть поле `request_method` типа int Используется ли оно, если да, то какие возможны значения? 2. Кроме login,email,firs_name,last_name - может ли система еще что-нибудь принять, например phone, photo и т.п. или нужно в базе через костыль ковыряться? Мои соображения: Я думаю, что тут ключевым является требования к безопасности и левел пользователя в системе. например: авторизация через соц. сети доступна только для левел гость. если нет особых требований к гостям, то пропускать в систему и идентифицировать по email переданному от сети. ведь соц. сетях обычно требуют подтверждения email. * логин от соц. сетей делать уникальным
Re: Re[12]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
может надо просто прав (Permissions) добавить: https://api.yandex.com/oauth/doc/dg/tasks/register-client.xml 2015-04-08 21:44 GMT+06:00 Maxim Solodovnik solomax...@gmail.com: отлично, спасибо правильно ли я понимаю что яндекс не отдаёт email? 2015-04-08 21:08 GMT+06:00 Alexey Terekhov deadl...@mail.ru: Понял :) Вот ответ с какой-то инфой на те запросы. Если нужно, могу от разных логинов инфу скинуть. yandex: {first_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440, last_name: \u041c\u0430\u043b\u044e\u0442\u0438\u043d, display_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, emails: [], old_social_login: uid-3qmd6pky, default_email: , real_name: \u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u041c\u0430\u043b\u044e\u0442\u0438\u043d, birthday: 1982-03-12, default_avatar_id: 312668714, login: uid-3qmd6pky, sex: male, id: 312668714}/td/tr/table google: { id: 100571430989931346920, email: coaching@gmail.com, verified_email: true, name: Коучинг Центр, given_name: Коучинг, family_name: Центр, link: https://plus.google.com/100571430989931346920;, picture: https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAI/AAA/4252rscbv5M/photo.jpg , gender: male, locale: ru } facebook: {id:869800643078717,email:dead\u0040mail.ru ,first_name:Alexey,gender:male,last_name:Terekhov,link:https:\/\/ www.facebook.com\/app_scoped_user_id\/869800643078717\/,locale:ru_RU,name:Alexey Terekhov,timezone:3,updated_time:2015-04-06T14:25:40+,verified:true}/td/tr/table --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 20:45 +06:00 от Maxim Solodovnik solomax...@gmail.com: по правде говоря хотелось бы получить нормальный список параметров позволяющих получить login (username) email first name last name если есть какие-то другие полезные поля то и их тоже хаки не очень интересны, нужно не обходить, а решать проблему 2015-04-08 19:39 GMT+06:00 Alexey Terekhov deadl...@mail.ru : `oauth_servers` 1. В место email указываю id, чтобы не было конфликтов. работает. login_param_name указываю id. (эх, сюда бы префикс в начало...) если id совпадут будет ошибка. :( 2. В яндеск при подключении нужно открыть доступ к яндекс.паспорт, иначе яндекс не даст first_name и т.п. и будет ошибка. Этот общий для всех!!! `request_token_attributes`='code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri}grant_type=authorization_code' Название `firstname_param_name`, `lastname_param_name`, `email_param_name`, `login_param_name`, `request_info_url`, `request_key_url`, `request_token_url` Yandex 'first_name', 'last_name', 'id', 'id', ' https://login.yandex.ru/info?format=jsonoauth_token={$access_token }' ' https://oauth.yandex.ru/authorize?response_type=codeclient_id={$client_id } ' ' https://oauth.yandex.ru/token ' Google 'given_name', 'family_name', 'id', 'id' ' https://www.googleapis.com/oauth2/v1/userinfo?access_token={$access_token } ' ' https://accounts.google.com/o/oauth2/auth?redirect_uri={$redirect_uri}response_type=codeclient_id={$client_id}scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile https://accounts.google.com/o/oauth2/auth?redirect_uri=%7B$redirect_uri%7Dresponse_type=codeclient_id=%7B$client_id%7Dscope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile ' ' https://accounts.google.com/o/oauth2/token ' Facebook 'first_name', 'last_name', 'id', 'id' ' https://graph.facebook.com/me?access_token={$access_token }' ' https://www.facebook.com/dialog/oauth?client_id={$client_id}redirect_uri={$redirect_uri}scope=emailresponse_type=code ' ' https://graph.facebook.com/v2.3/oauth/access_token ' --- С уважением, Алексей Терехов. +7 926 076 15 20 Среда, 8 апреля 2015, 17:58 +06:00 от Maxim Solodovnik solomax...@gmail.com : ну я жду тогда параметры добавляю это всё в параметры по умолчанию и заливаю строю билд и можно тестить :) у меня почти всё проверить не выйдет так что буду рад помощи с тестированием билд появится тут: https://builds.apache.org/view/M-R/view/OpenMeetings/job/Openmeetings%203.0.x/ 2015-04-08 17:41 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Ура... нашел нужный запрос для facebook!!! вот корректный, в настройках по умолчанию старый, который дает access_token не json как все, а в виде параметра url. https://graph.facebook.com/v2.3/oauth/access_token - это вернет access_token в json Ok. сейчас этим и занимаюсь. :) инфы готовой много, нужно проверять и хочу собрать в короткий формат. но в целом вот сложности: vk.com возвращает данные в виде: response: [ { uid: 205387401 , first_name: 'Tom' , last_name:
OAuth2 openmt 3.0.4 for facebook, vk.com etc
Добрый день, Сообщество! :) Возникли у меня сложности с OAuth2 (пробовал в 3.0.2 и в 3.0.4 - не решено ) сейчас речь будет о: openmeetings 3.0.4 + MariaDB на Ubuntu 14.04.2 server поставлена по инструкции для ububtu-14.04.1-desktop-amd64 (https://cwiki.apache.org/confluence/download/attachments/27838216/Installation%20OpenMeetings%203.0.x%20on%20Ubuntu%2014.04.pdf?version=6modificationDate=1425048449000api=v2) добавил sudo apt-get install software-properies-common и все действия в /opt через sudo, а так чистая система поставленная по инструкции. 1. прописал домены в facebook и vk.com в facebook в настройках куча всего + тестовое app и т.п. отдельный вопрос что там нужно ставить и как. прописал в admin/config application.base.url=http://{MYDOMEN}:5080/openmeetings/ 2. проверил работу полученных Client_ID и Client_secret через php. !!! Особенности(отличие от facebook) vk.com: querty №1: https://oauth.vk.com/authorize?client_id={ID}scope=emailresponse_type=coderedirect_uri={URI}; если успех, вернет код и email! querty №2: https://oauth.vk.com/access_token?client_id={ID}client_secret={SECRET}redirect_uri={URI}code={CODE}; если успех, вернет access_token в формате json (facebook возвращает в виде параметров url) querty №3: https://api.vk.com/method/users.get?uids={UIDS}access_token={TOKEN}fields=sex,bdate,city...; если успех, вернет в формате json (facebook, так же на q№3 возвращает в формате json) = прописав в OAuth2 новую настройку 4 vk.com, после авторизации через vk.com и возврата в openmt - internal error. предположу, что из-за разного формата ответа на 2й вопрос. fb: ?a=Xb=Y vk: {a:X,b:y} и важно, vk.com отдает e-mail на 2м запросе, в 3м - где пользовательские данные адреса нет!!! 3. В итоге прописал ключи полученные в yandex, facebook и настройки vk.com с ключами. результат = ни один из 3х не работает. в логах у vk.com ошибка в получении данных. а вот с facebook в начале все как бы нормально, запрашивает code, по коду получает token. из брауузера выглядит так: вход через fb = соглашаюсь на передачу = возвращает на страницу ввода логина и пасс, в url содержится ?code=... концовка лога. (полная часть в входа через facebook в приложении) DEBUG 04-06 22:35:03.927 o.a.wicket.Page:871 [http-nio-0.0.0.0-5080-exec-2] - ending request for page [Page class = org.apache.openmeetings.web.pages.auth.SignInPage, id = 12, render count = 1], request org.apache.wicket.protocol.http.servlet.ServletWebRequest@4b7dfc3 DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:207 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' released lock to page with id '12' DEBUG 04-06 22:35:03.930 o.a.w.p.AsynchronousDataStore$PageSavingRunnable:354 [Wicket-PageSavingThread] - Saving asynchronously: Entry [sessionId=E0991D1744CA99FEB6BDBE919E11E65F, pageId=12]... DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:358 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' notifying blocked threads DEBUG 04-06 22:35:03.930 o.a.w.p.DiskDataStore:186 [Wicket-PageSavingThread] - Storing data for page with id '12' in session with id 'E0991D1744CA99FEB6BDBE919E11E65F' То есть нажимаю войти через fb = в fb Возможно есть какие-нибудь решение? Хотя бы от любой системы залогиниться, я смогу на php написать прокси, который вернет в нужном формате данные для openmeetings например от vk.com Много пользователей в России пользуются vk.com и не хочется их терять. :) P.S. есть еще 3.0.2 под ubuntu 10.4, кстати 3.0.3 и 3.0.4 на 10.4 не запустились (red5.sh чего-то ругнулся..) в ней (3.0.2) авторизация так же не проходит. Спасибо! --- С уважением, Алексей Терехов. +7 926 076 15 20
Re: OAuth2 openmt 3.0.4 for facebook, vk.com etc
фейсбук и контакт проверить не могу (нет учёток) проверял гугел - работает нормально 3.0.3 и 3.0.4 скорее не запустились потому что им для работы нужна java7 может быть кто-то пробовал настроить и поделится опытом? 2015-04-07 15:44 GMT+06:00 Alexey Terekhov deadl...@mail.ru: Добрый день, Сообщество! :) Возникли у меня сложности с OAuth2 (пробовал в 3.0.2 и в 3.0.4 - не решено ) сейчас речь будет о: openmeetings 3.0.4 + MariaDB на Ubuntu 14.04.2 server поставлена по инструкции для ububtu-14.04.1-desktop-amd64 ( https://cwiki.apache.org/confluence/download/attachments/27838216/Installation%20OpenMeetings%203.0.x%20on%20Ubuntu%2014.04.pdf?version=6modificationDate=1425048449000api=v2 ) добавил sudo apt-get install software-properies-common и все действия в /opt через sudo, а так чистая система поставленная по инструкции. 1. прописал домены в facebook и vk.com в facebook в настройках куча всего + тестовое app и т.п. отдельный вопрос что там нужно ставить и как. прописал в admin/config application.base.url=http://{MYDOMEN}:5080/openmeetings/ 2. проверил работу полученных Client_ID и Client_secret через php. !!! Особенности(отличие от facebook) vk.com: querty №1: https://oauth.vk.com/authorize?client_id={ID}scope=emailresponse_type=coderedirect_uri={URI} если успех, вернет код и email! querty №2: https://oauth.vk.com/access_token?client_id={ID}client_secret={SECRET}redirect_uri={URI}code={CODE} если успех, вернет access_token в формате json (facebook возвращает в виде параметров url) querty №3: https://api.vk.com/method/users.get?uids={UIDS}access_token={TOKEN}fields=sex,bdate,city.. . если успех, вернет в формате json (facebook, так же на q№3 возвращает в формате json) = прописав в OAuth2 новую настройку 4 vk.com, после авторизации через vk.com и возврата в openmt - internal error. предположу, что из-за разного формата ответа на 2й вопрос. fb: ?a=Xb=Y vk: {a:X,b:y} и важно, vk.com отдает e-mail на 2м запросе, в 3м - где пользовательские данные адреса нет!!! 3. В итоге прописал ключи полученные в yandex, facebook и настройки vk.com с ключами. результат = ни один из 3х не работает. в логах у vk.com ошибка в получении данных. а вот с facebook в начале все как бы нормально, запрашивает code, по коду получает token. из брауузера выглядит так: вход через fb = соглашаюсь на передачу = возвращает на страницу ввода логина и пасс, в url содержится ?code=... концовка лога. (полная часть в входа через facebook в приложении) DEBUG 04-06 22:35:03.927 o.a.wicket.Page:871 [http-nio-0.0.0.0-5080-exec-2] - ending request for page [Page class = org.apache.openmeetings.web.pages.auth.SignInPage, id = 12, render count = 1], request org.apache.wicket.protocol.http.servlet.ServletWebRequest@4b7dfc3 DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:207 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' released lock to page with id '12' DEBUG 04-06 22:35:03.930 o.a.w.p.AsynchronousDataStore$PageSavingRunnable:354 [Wicket-PageSavingThread] - Saving asynchronously: Entry [sessionId=E0991D1744CA99FEB6BDBE919E11E65F, pageId=12]... DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:358 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' notifying blocked threads DEBUG 04-06 22:35:03.930 o.a.w.p.DiskDataStore:186 [Wicket-PageSavingThread] - Storing data for page with id '12' in session with id 'E0991D1744CA99FEB6BDBE919E11E65F' То есть нажимаю войти через fb = в fb Возможно есть какие-нибудь решение? Хотя бы от любой системы залогиниться, я смогу на php написать прокси, который вернет в нужном формате данные для openmeetings например от vk.com Много пользователей в России пользуются vk.com и не хочется их терять. :) P.S. есть еще 3.0.2 под ubuntu 10.4, кстати 3.0.3 и 3.0.4 на 10.4 не запустились (red5.sh чего-то ругнулся..) в ней (3.0.2) авторизация так же не проходит. Спасибо! --- С уважением, Алексей Терехов. +7 926 076 15 20 -- WBR Maxim aka solomax
Re[2]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
О, супер, спасибо! Прописал Google (в OM 3.0.4) - и у меня работает! теперь есть шанс понять, что с facebook и т.п. не так. --- С уважением, Алексей Терехов. Вторник, 7 апреля 2015, 18:41 +06:00 от Maxim Solodovnik solomax...@gmail.com: фейсбук и контакт проверить не могу (нет учёток) проверял гугел - работает нормально 3.0.3 и 3.0.4 скорее не запустились потому что им для работы нужна java7 может быть кто-то пробовал настроить и поделится опытом? 2015-04-07 15:44 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Добрый день, Сообщество! :) Возникли у меня сложности с OAuth2 (пробовал в 3.0.2 и в 3.0.4 - не решено ) сейчас речь будет о: openmeetings 3.0.4 + MariaDB на Ubuntu 14.04.2 server поставлена по инструкции для ububtu-14.04.1-desktop-amd64 ( https://cwiki.apache.org/confluence/download/attachments/27838216/Installation%20OpenMeetings%203.0.x%20on%20Ubuntu%2014.04.pdf?version=6modificationDate=1425048449000api=v2 ) добавил sudo apt-get install software-properies-common и все действия в /opt через sudo, а так чистая система поставленная по инструкции. 1. прописал домены в facebook и vk.com в facebook в настройках куча всего + тестовое app и т.п. отдельный вопрос что там нужно ставить и как. прописал в admin/config application.base.url=http://{MYDOMEN}:5080/openmeetings/ 2. проверил работу полученных Client_ID и Client_secret через php. !!! Особенности(отличие от facebook) vk.com: querty №1: https://oauth.vk.com/authorize?client_id={ID}scope=emailresponse_type=coderedirect_uri={URI } если успех, вернет код и email! querty №2: https://oauth.vk.com/access_token?client_id={ID}client_secret={SECRET}redirect_uri={URI}code={CODE } если успех, вернет access_token в формате json (facebook возвращает в виде параметров url) querty №3: https://api.vk.com/method/users.get?uids={UIDS}access_token={TOKEN}fields=sex,bdate,city .. . если успех, вернет в формате json (facebook, так же на q№3 возвращает в формате json) = прописав в OAuth2 новую настройку 4 vk.com, после авторизации через vk.com и возврата в openmt - internal error. предположу, что из-за разного формата ответа на 2й вопрос. fb: ?a=Xb=Y vk: {a:X,b:y} и важно, vk.com отдает e-mail на 2м запросе, в 3м - где пользовательские данные адреса нет!!! 3. В итоге прописал ключи полученные в yandex, facebook и настройки vk.com с ключами. результат = ни один из 3х не работает. в логах у vk.com ошибка в получении данных. а вот с facebook в начале все как бы нормально, запрашивает code, по коду получает token. из брауузера выглядит так: вход через fb = соглашаюсь на передачу = возвращает на страницу ввода логина и пасс, в url содержится ?code=... концовка лога. (полная часть в входа через facebook в приложении) DEBUG 04-06 22:35:03.927 o.a.wicket.Page:871 [http-nio-0.0.0.0-5080-exec-2] - ending request for page [Page class = org.apache.openmeetings.web.pages.auth.SignInPage, id = 12, render count = 1], request org.apache.wicket.protocol.http.servlet.ServletWebRequest@4b7dfc3 DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:207 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' released lock to page with id '12' DEBUG 04-06 22:35:03.930 o.a.w.p.AsynchronousDataStore$PageSavingRunnable:354 [Wicket-PageSavingThread] - Saving asynchronously: Entry [sessionId=E0991D1744CA99FEB6BDBE919E11E65F, pageId=12]... DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:358 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' notifying blocked threads DEBUG 04-06 22:35:03.930 o.a.w.p.DiskDataStore:186 [Wicket-PageSavingThread] - Storing data for page with id '12' in session with id 'E0991D1744CA99FEB6BDBE919E11E65F' То есть нажимаю войти через fb = в fb Возможно есть какие-нибудь решение? Хотя бы от любой системы залогиниться, я смогу на php написать прокси, который вернет в нужном формате данные для openmeetings например от vk.com Много пользователей в России пользуются vk.com и не хочется их терять. :) P.S. есть еще 3.0.2 под ubuntu 10.4, кстати 3.0.3 и 3.0.4 на 10.4 не запустились (red5.sh чего-то ругнулся..) в ней (3.0.2) авторизация так же не проходит. Спасибо! --- С уважением, Алексей Терехов. +7 926 076 15 20 -- WBR Maxim aka solomax
Re[3]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
Добрый вечер. прописал ключи для Google, yandex, facebook, vk.com сделал клон таблицы oauth_servers (настройки OAuth2) добавил в таблицу поле damp_answer написал скрипт получение данных использую настройки OAuth2 в damp_answer записал работу моего скрипа (html таблица запросов и ответов) после сохранения выгрузки заменил часть ключей на 8. 1. если я чего случайно не перекрутил у себя, то у меня прописан был след. DEFAULT запрос данных из facebook: https://graph.facebook.com/me?access_token={$access_token}fields=username,first_name,last_name,email ОН НЕВЕРНЫЙ, username следует изменить на name, иначе (если оставить username, ответ будет NULL) 2. Разный формат ответа на запрос токена google, vk.com, yandex отвечают в формате json: {a:X,b:y} facebook отвечает: a=Xb=Y в damp_answer это видно 3. Перегружусь под server и подправлю у себя п.1 и попробую выдрать значимую информацию из логов относящуюся к входам fb,vk,yandex. PS. Если нужно могу проверить(сделать damp) другие, например mail.ru, одноклассники и т.п., пишите. Надеюсь приложение пройдет. 1. debugoauth2.html вывод базы 2. oauth_servers.sql экспорт базы --- С уважением, Алексей Терехов. +7 926 076 15 20 Вторник, 7 апреля 2015, 17:54 +03:00 от Alexey Terekhov deadl...@mail.ru: О, супер, спасибо! Прописал Google (в OM 3.0.4) - и у меня работает! теперь есть шанс понять, что с facebook и т.п. не так. --- С уважением, Алексей Терехов. Вторник, 7 апреля 2015, 18:41 +06:00 от Maxim Solodovnik solomax...@gmail.com : фейсбук и контакт проверить не могу (нет учёток) проверял гугел - работает нормально 3.0.3 и 3.0.4 скорее не запустились потому что им для работы нужна java7 может быть кто-то пробовал настроить и поделится опытом? 2015-04-07 15:44 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Добрый день, Сообщество! :) Возникли у меня сложности с OAuth2 (пробовал в 3.0.2 и в 3.0.4 - не решено ) сейчас речь будет о: openmeetings 3.0.4 + MariaDB на Ubuntu 14.04.2 server поставлена по инструкции для ububtu-14.04.1-desktop-amd64 ( https://cwiki.apache.org/confluence/download/attachments/27838216/Installation%20OpenMeetings%203.0.x%20on%20Ubuntu%2014.04.pdf?version=6modificationDate=1425048449000api=v2 ) добавил sudo apt-get install software-properies-common и все действия в /opt через sudo, а так чистая система поставленная по инструкции. 1. прописал домены в facebook и vk.com в facebook в настройках куча всего + тестовое app и т.п. отдельный вопрос что там нужно ставить и как. прописал в admin/config application.base.url=http://{MYDOMEN}:5080/openmeetings/ 2. проверил работу полученных Client_ID и Client_secret через php. !!! Особенности(отличие от facebook) vk.com: querty №1: https://oauth.vk.com/authorize?client_id={ID}scope=emailresponse_type=coderedirect_uri={URI } если успех, вернет код и email! querty №2: https://oauth.vk.com/access_token?client_id={ID}client_secret={SECRET}redirect_uri={URI}code={CODE } если успех, вернет access_token в формате json (facebook возвращает в виде параметров url) querty №3: https://api.vk.com/method/users.get?uids={UIDS}access_token={TOKEN}fields=sex,bdate,city .. . если успех, вернет в формате json (facebook, так же на q№3 возвращает в формате json) = прописав в OAuth2 новую настройку 4 vk.com, после авторизации через vk.com и возврата в openmt - internal error. предположу, что из-за разного формата ответа на 2й вопрос. fb: ?a=Xb=Y vk: {a:X,b:y} и важно, vk.com отдает e-mail на 2м запросе, в 3м - где пользовательские данные адреса нет!!! 3. В итоге прописал ключи полученные в yandex, facebook и настройки vk.com с ключами. результат = ни один из 3х не работает. в логах у vk.com ошибка в получении данных. а вот с facebook в начале все как бы нормально, запрашивает code, по коду получает token. из брауузера выглядит так: вход через fb = соглашаюсь на передачу = возвращает на страницу ввода логина и пасс, в url содержится ?code=... концовка лога. (полная часть в входа через facebook в приложении) DEBUG 04-06 22:35:03.927 o.a.wicket.Page:871 [http-nio-0.0.0.0-5080-exec-2] - ending request for page [Page class = org.apache.openmeetings.web.pages.auth.SignInPage, id = 12, render count = 1], request org.apache.wicket.protocol.http.servlet.ServletWebRequest@4b7dfc3 DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:207 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' released lock to page with id '12' DEBUG 04-06 22:35:03.930 o.a.w.p.AsynchronousDataStore$PageSavingRunnable:354 [Wicket-PageSavingThread] - Saving asynchronously: Entry [sessionId=E0991D1744CA99FEB6BDBE919E11E65F, pageId=12]... DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:358 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' notifying blocked threads DEBUG 04-06 22:35:03.930 o.a.w.p.DiskDataStore:186 [Wicket-PageSavingThread] - Storing data for page with id '12' in session with id
Re: Re[3]: OAuth2 openmt 3.0.4 for facebook, vk.com etc
давайте по-порядку: 1) что возвращает name? полное имя? или это аналог username? если возвращает полное имя то лучше туда email поставить 2) можно ввести параметр: формат ответа: JSON/URL и в зависимости от этого что-то делать приложения нету, можно на pastebin выложить и кинуть ссылку больше провайдеров - лучше :) наверно 2015-04-08 2:46 GMT+06:00 Alexey Terekhov deadl...@mail.ru: Добрый вечер. прописал ключи для Google, yandex, facebook, vk.com сделал клон таблицы oauth_servers (настройки OAuth2) добавил в таблицу поле damp_answer написал скрипт получение данных использую настройки OAuth2 в damp_answer записал работу моего скрипа (html таблица запросов и ответов) после сохранения выгрузки заменил часть ключей на 8. 1. если я чего случайно не перекрутил у себя, то у меня прописан был след. DEFAULT запрос данных из facebook: https://graph.facebook.com/me?access_token={$access_token}fields=username,first_name,last_name,email ОН НЕВЕРНЫЙ, username следует изменить на name, иначе (если оставить username, ответ будет NULL) 2. Разный формат ответа на запрос токена google, vk.com, yandex отвечают в формате json: {a:X,b:y} facebook отвечает: a=Xb=Y в damp_answer это видно 3. Перегружусь под server и подправлю у себя п.1 и попробую выдрать значимую информацию из логов относящуюся к входам fb,vk,yandex. PS. Если нужно могу проверить(сделать damp) другие, например mail.ru, одноклассники и т.п., пишите. Надеюсь приложение пройдет. 1. debugoauth2.html вывод базы 2. oauth_servers.sql экспорт базы --- С уважением, Алексей Терехов. +7 926 076 15 20 Вторник, 7 апреля 2015, 17:54 +03:00 от Alexey Terekhov deadl...@mail.ru : О, супер, спасибо! Прописал Google (в OM 3.0.4) - и у меня работает! теперь есть шанс понять, что с facebook и т.п. не так. --- С уважением, Алексей Терехов. Вторник, 7 апреля 2015, 18:41 +06:00 от Maxim Solodovnik solomax...@gmail.com : фейсбук и контакт проверить не могу (нет учёток) проверял гугел - работает нормально 3.0.3 и 3.0.4 скорее не запустились потому что им для работы нужна java7 может быть кто-то пробовал настроить и поделится опытом? 2015-04-07 15:44 GMT+06:00 Alexey Terekhov deadl...@mail.ru : Добрый день, Сообщество! :) Возникли у меня сложности с OAuth2 (пробовал в 3.0.2 и в 3.0.4 - не решено ) сейчас речь будет о: openmeetings 3.0.4 + MariaDB на Ubuntu 14.04.2 server поставлена по инструкции для ububtu-14.04.1-desktop-amd64 ( https://cwiki.apache.org/confluence/download/attachments/27838216/Installation%20OpenMeetings%203.0.x%20on%20Ubuntu%2014.04.pdf?version=6modificationDate=1425048449000api=v2 ) добавил sudo apt-get install software-properies-common и все действия в /opt через sudo, а так чистая система поставленная по инструкции. 1. прописал домены в facebook и vk.com в facebook в настройках куча всего + тестовое app и т.п. отдельный вопрос что там нужно ставить и как. прописал в admin/config application.base.url=http://{MYDOMEN}:5080/openmeetings/ 2. проверил работу полученных Client_ID и Client_secret через php. !!! Особенности(отличие от facebook) vk.com: querty №1: https://oauth.vk.com/authorize?client_id={ID}scope=emailresponse_type=coderedirect_uri={URI } если успех, вернет код и email! querty №2: https://oauth.vk.com/access_token?client_id={ID}client_secret={SECRET}redirect_uri={URI}code={CODE } если успех, вернет access_token в формате json (facebook возвращает в виде параметров url) querty №3: https://api.vk.com/method/users.get?uids={UIDS}access_token={TOKEN}fields=sex,bdate,city .. . если успех, вернет в формате json (facebook, так же на q№3 возвращает в формате json) = прописав в OAuth2 новую настройку 4 vk.com, после авторизации через vk.com и возврата в openmt - internal error. предположу, что из-за разного формата ответа на 2й вопрос. fb: ?a=Xb=Y vk: {a:X,b:y} и важно, vk.com отдает e-mail на 2м запросе, в 3м - где пользовательские данные адреса нет!!! 3. В итоге прописал ключи полученные в yandex, facebook и настройки vk.com с ключами. результат = ни один из 3х не работает. в логах у vk.com ошибка в получении данных. а вот с facebook в начале все как бы нормально, запрашивает code, по коду получает token. из брауузера выглядит так: вход через fb = соглашаюсь на передачу = возвращает на страницу ввода логина и пасс, в url содержится ?code=... концовка лога. (полная часть в входа через facebook в приложении) DEBUG 04-06 22:35:03.927 o.a.wicket.Page:871 [http-nio-0.0.0.0-5080-exec-2] - ending request for page [Page class = org.apache.openmeetings.web.pages.auth.SignInPage, id = 12, render count = 1], request org.apache.wicket.protocol.http.servlet.ServletWebRequest@4b7dfc3 DEBUG 04-06 22:35:03.930 o.a.w.p.PageAccessSynchronizer:207 [http-nio-0.0.0.0-5080-exec-2] - 'http-nio-0.0.0.0-5080-exec-2' released lock to