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: custom room type
я не понял вопроса 2015-04-08 13:44 GMT+06:00 Vladislav Vodopyan v.vodop...@team-service.ru: Доброго дня. Подскажите, такой тип комнаты можно сделать только путем пересборки из исходников? Или можно на уже собранном ОМ как-то сделать? Спасибо. -- WBR Maxim aka solomax
Re: custom room type
http://openmeetings.apache.org/CustomRoomTypeHowTo.html Я правильно понимаю, что чтобы сделать описанное, нужно пересобирать ОМ из исходников? 08.04.2015 12:57, Maxim Solodovnik пишет: я не понял вопроса 2015-04-08 13:44 GMT+06:00 Vladislav Vodopyan v.vodop...@team-service.ru: Доброго дня. Подскажите, такой тип комнаты можно сделать только путем пересборки из исходников? Или можно на уже собранном ОМ как-то сделать? Спасибо.
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: custom room type
да конечно 2015-04-08 16:04 GMT+06:00 Vladislav Vodopyan v.vodop...@team-service.ru: http://openmeetings.apache.org/CustomRoomTypeHowTo.html Я правильно понимаю, что чтобы сделать описанное, нужно пересобирать ОМ из исходников? 08.04.2015 12:57, Maxim Solodovnik пишет: я не понял вопроса 2015-04-08 13:44 GMT+06:00 Vladislav Vodopyan v.vodop...@team-service.ru: Доброго дня. Подскажите, такой тип комнаты можно сделать только путем пересборки из исходников? Или можно на уже собранном ОМ как-то сделать? Спасибо. -- WBR Maxim aka solomax
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 или ВОПРОС: по Русски: если я зарегистрировался
custom room type
Доброго дня. Подскажите, такой тип комнаты можно сделать только путем пересборки из исходников? Или можно на уже собранном ОМ как-то сделать? Спасибо.
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: