Everything posted by aplayer
-
Редактор тем.
- Редактор тем.
Вы с ума сошли менять файлы ядра. В Developer Center оставлена возможность делать хуки тем. Это значит вы можете штатно внедрить html js php в любое место страницы. Цвета, стили, css можно менять через стандартный редактор тем. Вы у своих ИИ спросите насколько я прав и насколько вы косячите изменяя ядро.- Вход через VK и Яндекс в Invision Community 5
В общем разработка остановлена в связи с тем, что IPS переходит в какое-то непонятное облачное существование. Приложение в готовом виде есть тут https://ipbmafia.ru/topic/37870-vhod-cherez-vk-i-yandeks-v-invision-community-5/#findComment-231875 Кому надо доделывайте сами. Ядро там готово полностью.- Вход через VK и Яндекс в Invision Community 5
applications/clogin/sources/Misc/Misc.php создано в ИИ. Спросите ИИ хороша ли реализация. Только не говорите ему, что это он создал- Вход через VK и Яндекс в Invision Community 5
@Zero108 Вы зарегистрировались на ВК ИД через госуслуги как предприниматель. Взяли на себя обязательство по хранению и обработке персональных данных, за нарушение которых предусмотрена уголовная ответственность. Какой-то ИИ делает вам приложение авторизации, оно же вам сказало что ваше приложение безопаснее какой-то недоделанной альфы какого-то левого чувака. Вы сами даже понятия не имеете как это всё работает. Никакого личного аудита безопасности. Отличный план. А теперь подумайте зачем они требуют госуслуги и статус предпринимателя? Однажды они яндекс оштрафовали всего на какие-то вшивые 60 000 рублей. Но не забывайте, что какого-то простого предпринимателя они обуют по полной. Вы им еще и за яндекс ответите- Вход через VK и Яндекс в Invision Community 5
я тоже когда-то думал ничего страшного не будет если вшивать костыли в ядро разных движков. Все эти инструменты и API для разработки модулей, плагинов, хуков итп созданы для лохов. Ведь проще и быстрее вшить в ядро кусок кода, чем делать для него плагин. Но 20 лет это клиника. Вам ИИ должен был регулярно советовать делать правильно. Я не стал делать приложение дальше потому-что IPS кажется всё кирдык. Они убрали всю документацию для разработчиков. Убрали Developer Tools для 4* версии. Можно ли скачать Developer Tools для 5 в Client Area неизвестно. Агрессивно продвигают движок IPS на их хостинге. Мафия в этом году закрывается. Кажется надо менять движок. На dle модули вроде делаются как вы любите. Просто подключаешь свой php файл и не надо заморачиваться на семантику и парадигмы движка- Вход через VK и Яндекс в Invision Community 5
@Zero108 Я знаю все проблемы безопасности моего приложения. Ваш ИИ некоторые из них определил неправильно, из за того что не видит в исходниках всю глубину абстракции движка IPS. Я же говорил уже,что взял OAuth2 из движка и добавил к ней поля для ВК и проверку возраста и email из черных списков. Попутно выяснил что в папке system/Login/Handler/OAuth2 всё дырявое насквозь и надо всё переделывать. Мне не понадобился для этого ИИ. Ваши слабые стороны которым ии поставил слишком низкий уровень серьезности 1. как я и говорил ранее "Жесткие зашития" это критически нехорошая реализация. Попробуйте Developer Tools. 2 ВК официально предупреждали, что все эндпоинты до мая 2026 года должны быть переведены на зону .ru, после чего поддержка зоны com в любой момент может прекратиться. И научитесь программировать самостоятельно. ИИ можно пользоваться только тем, кто сам умеет что-то делать.- Вход через VK и Яндекс в Invision Community 5
ваш ии несет ту еще ахинею. Все что он написал относится к яндекс авторизации. Там device_id не используется вовсе. Я бы вам посоветовал поработать собственной головой.- Вход через VK и Яндекс в Invision Community 5
он не совсем прав, а где-то и вовсе не прав. PKCE там соблюдается на 100%, но code_verifier хранится в cookie пользователя в нешифрованном виде. Да это большой проё пробел в системе. Не просто большой, а огромнейший. Сквозная дыра. Я не просто так написал, что приложение только для тестирования. У яндекса с безопасностью вроде еще хуже. По поводу device_id ИИ тоже не прав. Он используется при авторизации, но нет идей как его использовать дальше. Например можно сделать чтобы пользователя разлогинивало на других устройствах если он заходит с нового. Но не нужно. А еще открою страшную тайну. Я просто скопипастил стандартный OAuth 2 из движка и адаптировал под ВК не меняя концептов заложенных разработчиками IPS. Сам я ничего не делал это разрабы IPS такое создали. Представьте какой дырявый продукт они создали. Если поковырять другие предустановленные способы авторизации Google Facebook Apple, там наверно вообще огромная дыра. @Zero108 Я бы вам советовал использовать Developer Tools и в моих исходниках навести порядок. Кроме указанных выше недостатков там еще на каждый чих пользователя каждый раз делается запрос на обмен токена, это тоже плохой подход. Надо это дело как-то кешировать. Если вы не пользуетесь Developer Tools, то значит вносите правки прямо в ядро, что в свою очередь делает ваши наработки непереносимыми, а движок не обновляемым. Это очень плохой подход к созданию приложений. настраивается в admin/?app=core&module=settings&controller=loginТам же иконку можно указать- Вход через VK и Яндекс в Invision Community 5
еще одна из причин может быть впн или сайт на иностранном сервере. Сейчас это всё запрещено и блокируется самим ВК. у меня как раз для этого дела два разных сервера. На одном Developer Center на другом чистый IPS. На обоих всё работает. я сейчас попробовал ввести неверные данные и вот- Вход через VK и Яндекс в Invision Community 5
на https://id.vk.ru/auth всегда есть хоть какой-то текст об ошибке The Redirect URI to use у вас указан в личном кабинете на ВК на https://id.vk.com/about/business/? не на старом https://dev.vk.com/ru/admin/apps-list, а на id.vk.com В админке надо логи смотреть admin/?app=core&module=support&controller=systemLogs Ну и еще если вы любите делать приложения без Developer Tools, то надо это дело устанавливать на чистый движок у которого все сторонние приложения сделаны в Developer Tools или отсутствуют вовсе. Но логи покажут более понятную картину- Вход через VK и Яндекс в Invision Community 5
Приложение для входа через ВК и Яндекс Работает из коробки. Рекомендуется только для тестирования. Не рекомендуется для использования на реальных (боевых) проектах. Как пользоваться: Установить приложение и на странице admin/?app=core&module=settings&controller=login добавить новые методы авторизации. На ВК и Яндексе укажите адрес, который вы видите в опции: The Redirect URI to use Из всех настроек можно менять только Client Identifier Client Secret email email из черных списков Ограничение возраста А так же цвета и названия кнопок. Allow Admin CP logins итп. Ендпоинты и прочие идентификаторы сделаны редактируемыми на случай если ВК и Яндекс их поменяют. Такое было не раз у ВК. Сейчас их трогать не надо. Custom login handler 5.0.18.tar Пишите сюда если нашли какие либо проблемы при работе приложения- Вход через VK и Яндекс в Invision Community 5
в IPS приложения жестко привязываются к директории. Это значит если вы создаете приложение в директории myapp то это будет неймспейсом всех классов вашего приложения. Далее вы все классы будете объявлять/вызывать \IPS\myapp\MyClass... интересно как вы сделали приложение для авторизации в публичной части без Developer Center- Вход через VK и Яндекс в Invision Community 5
о том что у меня голландцы грохнули сервер на котором лежал полный рабочий проект. Остались только исходники на гитхабе. Эти исходники полностью рабочие и пригодны их можно закинуть в новое приложение у которого директория clogin или найти соответствующий неймспейс и переправить на свой. там нет костылей. Всё только в рамках семантики IPS движка. Со всеми паттернами проектирования и принципами SOLID- Вход через VK и Яндекс в Invision Community 5
Слыхали недавно проблема была российскими хостерами в Голландии? Там у меня dev проект сдох. Остались только эти исходники на гитхабе. В общем в Dev Mode создайте приложение с директорией clogin , назовите его например Custom Login. добавьте в Developer Center пару Extension c типом Login Handler и скопируйте в них код из папки extensions моих исходников. Остальные файлы закиньте просто так. отключите \define('IN_DEV', true); он вызывает ошибки admin/?app=core&module=settings&controller=login - там добавьте методы регистрации итп исходники завязаны на директорию clogin и в другой работать не будут- Вход через VK и Яндекс в Invision Community 5
Вот забыл там еще файлик с callback.php где починена эта проблема ya_vk_login.7z- Вход через VK и Яндекс в Invision Community 5
исходники полностью рабочие, создайте новое приложение и закиньте их туда. Готовое приложение выложить не могу по техническим причинам- Вход через VK и Яндекс в Invision Community 5
это не приложение, а только исходники, которые вы можете закинуть в своё разрабатываемое приложение.- Вход через VK и Яндекс в Invision Community 5
Собственно здесь всё Обращаю внимание. Я не нашел внутреннего метода движка на получение списка запрещенных Email поэтому он берется напрямую из БД при каждом запросе. Если у вас огромный список или тысячи регистраций, то надо это дело кешировать в редис. сейчас это дело выглядит не очень и требует создания методов кеширования /* Check banned email address */ if ($this->settings['drop_banned_email']) { foreach (\IPS\Db::i()->select('ban_content', 'core_banfilters', array("ban_type=?", 'email')) as $bannedEmail) { if (preg_match('/^' . str_replace('\*', '.*', preg_quote($bannedEmail, '/')) . '$/i', self::$response['email'])) { unset(self::$response['email']); break; } } } Для VK проверка email необходима, так как там у людей много лет назад были указаны емайлы которые сейчас не существуют и движок будет регулярно слать им новости. Из за чего в ваших почтовых ящиках письма от Mail Delivery System со временем разбухают до гигабайтов если их вовремя не удалять. А в данный момент email не является обязательным для создания VK аккаунта. С яндексом таких проблем нет там email является логином аккаунта и он не может быть несуществующим. А если пользователь удалит акк на яндексе, то не сможет зайти на ваш сайт. VK_YA_Login.7z- В России введены штрафы до 700 тыс. рублей за авторизацию через зарубежные сервисы
Поговаривают это касается только кнопок быстрого входа. Регистрация с логином паролем не является внешним сервисом регистрации. В этом случае ваш сайт и является сервисом регистрации и пользователь может указывать любую почту. Если ркн решит, что email адрес должен быть российским, то это будет полный дебилизм. Потому-что e-mail это протокол передачи данных, а не географический объект. Адрес типа nyname@rus.ru по факту может принадлежать гражданину любой страны и даже быть почтой гугла. Адрес nyname@usa.us может принадлежать гражданину России и даже обслуживаться почтой яндекса. Называть email адрес иностранным это то же самое как иностранный nttps или иностранный ssh. То-есть абсурд. А еще вот эта тема никому не интересна https://ipbmafia.ru/topic/37870-vhod-cherez-vk-i-yandeks-v-invision-community-5/#comment-231566 проект пока забошен.- Вход через VK и Яндекс в Invision Community 5
Делаю приложение для входа на сайт через VK и Яндекс в Invision Community 5. Если надо кому могу выложить для начала на тесты. Мне нужна обратная связь по интеграции привязки нескольких соцсетей к одному аккаунту. Надо погонять учетную запись привязав к ней другие соцсети и проверять чтобы синхронизация email и аватар работала исправно. Там еще много всяких нюансов работы приложения. Важный момент. Для создания OAuth 2+ приложений в VK ID и Яндекс ID надо привязывать к ним госуслуги. На VK ID надо быть предпринимателем ОАО ООО ИП или хотя бы самозанятым не только в налоговой но еще оформить самозанятость в Сбере или в Т банке. Если есть желающие пишите тут. После тестов выложу приложение в бесплатный доступ с исходниками. Яндекс ID работает в чистом Invision Community 5 если в /admin/?app=core&module=settings&controller=login&do=form добавить стандартный Other OAuth 2.0. Я в своем приложении добавляю проверку минимального возраста указанного в соцсети и запрет на регистрацию с emai из черных списков. С VK ID всё сложно, стандартный Other OAuth 2.0 не подойдет, надо отдельное приложение делать.- IC5 Dev Tools
- REST API не работает IPS 5.0.14
я заметил, что rest api может не работать если на веб-сервере стоят самоподписанные и недействительные ssl сертификаты. Видимо curl функции в движке принимают только действительные сертификаты.- Dev Mode for 5.0.12
where did you get dev mode?- Интеграция с Вконтакте
Письмо сегодня пришло от админов ВК. Не знаю как там всё устроено, но у авторизации нигде не нашел где можно прописать api url ВК. Надеюсь не придется приложение переделывать. Если для IPS или IC 5x появится в свободном доступе developer tool. То я разработаю приложения интеграции с российскими соцсетями и буду их поддерживать и своевременно обновлять в случаях если соцсети обновят API - Редактор тем.