• Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: JonMagon  
Сообщество uCoz » Мастерская uCoz » Использование PHP и API на uCoz » Данные в cookies
Данные в cookies
Himmler
Сообщений: 17
Репутация: 9

Сообщение # 1 | 22:08:31
Есть необходимость получать данные зашедшего пользователя.
Данные нужно получить, на стороннем сайте, с сайта непосредственно на uCoz.

Каждый раз парсить данные с сайта, через cUrl, с отсылкой кук, откровенно долго.
Отсуда вопрос:
Содержат ли cookies uCoz'а, ID ($USER_ID$) или логин ($USERNAME$)?
И если да, как получить?

Ибо парсить сначала index, чтоб получить ID.
А потом брать данные через api, маразм.
Но более безопасного способа, я что то не нашел...

Добавлено (16 Сен 2015, 22:08:31)
---------------------------------------------
Администрация, Вы что не в курсе, что есть в Ваших куках, а чего нет?
33 админа и модера, и некто ответить не может?
Почему как только вопрос чуть сложнее "2+2", нужно обращаться в ТП через админ панель?

Сообщение отредактировал Himmler - Вторник, 15 Сен 2015, 14:56:10
PtrPt
Сообщений: 88
Репутация: 33

Сообщение # 2 | 22:32:53
Himmler, ну что вы, в самом деле, как маленький - посмотрите сами. А если и нет такой куки, то что вам мешает её самому установить, используя JS и системные коды?

И дело тут не в компетентности администрации форума, ТП или кого-то ещё. Вы должны и сами тоже шевелиться немного. Вы же не новичок уже.
Inquisitоr
Сообщений: 900
Репутация: 338

Сообщение # 3 | 00:54:17
Цитата Himmler ()
Есть необходимость получать данные зашедшего пользователя.

Подробнее опишите схему, которая планируется.
Понимая схему - можно составить более удобный и лёгкий способ.

Учитесь читать, читая - вчитывайтесь, вчитываясь - вдумывайтесь, вдумываясь - понимайте, поняв - делайте. ©
Himmler
Сообщений: 17
Репутация: 9

Сообщение # 4 | 11:15:24
PtrPt, ответ, ради ответа...
1. Я смотрел, мучал гугл, и только потом задал вопрос. Не нужно думать, что все глупее Вас.
2. Куки можно подменить, слова "Но более безопасного способа, я что то не нашел..." не о чем не говорят?
3. Не "родные" куки, будут заметны, и умников "посмотреть что там такое", полно.
4. Шифр за счет JS? Он будет либо в коде, либо статичен. Ни первое, ни второе не подходит. Зная ключ и искомый результат, его легко подделать/изменить на админский.

Inquisitоr, нужна субавторизация.
Человек авторизававшийся на сайте, который расположен на uCoz. Должен получать доступ (в зависимости от группы) например к AMXBans.
Две авторизации не удобны.
Один раз залогинился, и имееш доступ в зависимости от прав группы, ко всем модулям. Как на uCoz, так и на вспомагательном сайте.
Парсить данные через JS (первое о чем я подумал) даже внутри 1-го домена, нельзя.
Куки легко подменить.
В итоге, сейчас оно выглядит так:
Парсинг стр. (с заранее подготовленным списком данных) с отсылкой данных из браузера зашедшего.

Я хочу, продублировать базу пользователей, с нужной мне информацией (как синхронизировать изменения, я викурсе). И запрашивать информацию из своей БД, по ID зашедшего.
Это быстрее, и правильнее.
PtrPt
Сообщений: 88
Репутация: 33

Сообщение # 5 | 14:44:56
Himmler, я, кажется, вас наоборот похвалил ("... не новичок уже") - зря, наверное.

Что касается безопасности, то не вижу, чем может навредить злоумышленник, зная ID или USERNAME пользователя. Речь ведь шла про них, не так ли?

Вам же нужна полноценная авторизация. Это уже совсем другое дело, безопасность здесь, конечно же, важна. Вам самому решать, что вам важнее: безопасность или удобство. Два независимых списка пользователей и безопасный доступ - нечто сказочное.

Могу лишь посоветовать синхронную авторизацию: на обоих сайтах у пользователя одинаковые пары логин-пароль, авторизация на одном сайте вызывает авторизацию на другом (автоматически происходит заполнение и отправка второй формы, скрытой стилями). При этом куки устанавливаются независимо друг от друга и безопасность сохраняется на прежнем уровне. Если же пароли разные, то придётся доверять имеющимся кукам - о безопасной авторизации говорить практически невозможно.
Himmler
Сообщений: 17
Репутация: 9

Сообщение # 6 | 15:20:00
PtrPt, Вы первый пост, вообще читали? О безопасности там написано. И то, что нужен более быстрый, но безопасный способ получения данных, вытекает из текста. Ну как бы логика...
Если Вы не понимаете, чем может навредить не безопасная передача этих данных. Или не внимательно читаете. Зачем даете советы?
Ну и:
1. Нечто "сказочное", у меня таки вышло. Немного времени, проб и ошибок, и вуаля.
2. Синхронная авторизация, требует php. А доп форма, которая скрыта через css, это мечта хацкеров, с ближайшей школы.
По мимо образования кучи дыр, требует отключения login.uid.me, что в корне убивает всю идею.

Ну и собственно, тему в топку. Привязка получилась при помощи session id, и ip.
Inquisitоr
Сообщений: 900
Репутация: 338

Сообщение # 7 | 15:20:28
Цитата PtrPt ()
Могу лишь посоветовать синхронную авторизацию: на обоих сайтах у пользователя одинаковые пары логин-пароль, авторизация на одном сайте вызывает авторизацию на другом (автоматически происходит заполнение и отправка второй формы, скрытой стилями).

Не получится.

Цитата Himmler ()
И запрашивать информацию из своей БД, по ID зашедшего.

Для чего авторизация то на сайте втором?

У вас две базы (сайт uCoz и второй сайт с дублированной базой пользователей + ваши доп.параметры) - я правильно понял ведь?
Пользователь заходит на ваш сайт, и в зависимости от группы/номера пользователя - он должен получить/не получить некоторые данные с другой базы?
Делайте запрос с помощью ID вашего пользователя через PHP, в чём проблема?

Учитесь читать, читая - вчитывайтесь, вчитываясь - вдумывайтесь, вдумываясь - понимайте, поняв - делайте. ©
Himmler
Сообщений: 17
Репутация: 9

Сообщение # 8 | 15:40:19
Inquisitоr, 1. Правильно понял. 2. Да. 3. Проблема была в присутствии php только на доп сайте.
Теперь просто при авторизации, отправляю id сессии, ip, и id. В динамическую бд, которая чистится автоматом (logout, time). И уже на основе этих данных, выдаю инфу из базы пользователей.
Дерьмовенько конечно, но еще шустрее и адекватнее, без php на основном сайте (uCoz), не получится.
Inquisitоr
Сообщений: 900
Репутация: 338

Сообщение # 9 | 16:13:33
Цитата Himmler ()
3. Проблема была в присутствии php только на доп сайте.

Без PHP передать данные о пользователе на другой сайт безопасно у вас не получится в любом случае.
Даже вне uCoz.

Цитата Himmler ()
И уже на основе этих данных, выдаю инфу из базы пользователей.

Я всё ещё не понимаю сложностей.

У вас две базы.
При входе пользователя на сайт - делайте запрос с помощь PHP uCoz на второй сайт, передавая ID пользователя и вытаскивайте нужные данные.

Учитесь читать, читая - вчитывайтесь, вчитываясь - вдумывайтесь, вдумываясь - понимайте, поняв - делайте. ©
Himmler
Сообщений: 17
Репутация: 9

Сообщение # 10 | 16:55:18
Inquisitоr, Данные нужно вытащить на втором сайте (не uCoz). На первом они как бы уже есть. ))

А передача происходит через post, на php страницу-обработчик, в момент авторизации. В другое время, с других домeнов, и т.д., она не доступна.

Грубо говоря, вот так оно просходит:
mysite.uCoz.ru > login form > login > post(ssid, ip, id) > url/sub_login.php

Что конкретно не безопасно? Вернее, что я упустил?
Сообщение отредактировал Himmler - Пятница, 18 Сен 2015, 16:57:19
Inquisitоr
Сообщений: 900
Репутация: 338

Сообщение # 11 | 16:58:21
Цитата Himmler ()
Что конкретно не безопасно? Вернее, что я упустил?

Каким образом вы данные передаёте? JS скриптом делаете запрос к другому сайту, передав ему IP и ID?

Учитесь читать, читая - вчитывайтесь, вчитываясь - вдумывайтесь, вдумываясь - понимайте, поняв - делайте. ©
D@rth_EviL
Сообщений: 274
Репутация: 106

Сообщение # 12 | 17:05:43
делал такую штуку ещё 5 лет назад через dcode...
но на сегодняшний день есть ulogin и ucoz api
а ваще эт называется oauth

Am I EviL??? ... Yes I Am!!!
Himmler
Сообщений: 17
Репутация: 9

Сообщение # 13 | 17:27:16
Inquisitоr, нет. Вызов самой страницы, с уже вписанными параметрами. Самый обычный пост, без "посредников".
Когда происходит авторизация, Вам присваивается id сессии, и "вручается" доступ к Вашему id на сайте.
Затем перенаправление на реф страницу.
Можно конечно вызывать ее постоянно, но на мой взгляд, это не нужная нагрузка.

Кажется я понял, на что идет намек. :)
Если заменить id, через js в адресе, контрольные суммы, не сойдутся.
Я об этом тоже думал. По этому не каких вызовов и передачи данных, через js. :)

D@rth_EviL, Вы не о том... Мне не нужна авторизация, на стороннем сайте, через uID.
Мне нужна, единовременная авторизация, на двух сайтах.
Это разные вещи.
Inquisitоr
Сообщений: 900
Репутация: 338

Сообщение # 14 | 17:45:08
Цитата Himmler ()
Если заменить id, через js в адресе, контрольные суммы, не сойдутся.

Какие контрольные суммы то?
Вы понимаете что передавая ID обычным JS вы его никак не шифруете? Вы передаёте вместо с ID ещё и id сессии. И чем вам это поможет? Вы всё равно не сможете на удалённом сайте сравнить ID пользователя и сессии.

Цитата Himmler ()
Мне нужна, единовременная авторизация, на двух сайтах.

Зачем вам авторизация?
Если человек авторизован у вас на сайте - делайте запрос с помощью PHP к другому сайту, передам в PHP скрипте его ID и всё.
Вы либо не слушаете, либо не правильно поясняете что вам нужно.

Учитесь читать, читая - вчитывайтесь, вчитываясь - вдумывайтесь, вдумываясь - понимайте, поняв - делайте. ©
Himmler
Сообщений: 17
Репутация: 9

Сообщение # 15 | 18:24:03
Inquisitоr, я нечего не передаю через js, в передаче данных, js не участвует. :)
Просто в браузерах, существует возможность, подгружать свои js скрипты. И я это учел.

И я не говорил, что это просто сайт, гдето на хостинге. :) Речь идет о Dedicated server, с полноценными возможностями. :)

Просто я не хочу, перенасить сайт с uCoz. Я к нему привык. :) Но, на uCoz нет возможности использовать тот же AMXBans, создать архив HLTV demo, и т.д.
Ну, и собственно, оплачивать "кастрированный" php (вставка которого, на страницах осуществляется через js), я тоже не горю желанием.

Помимо ssid и id, передается ip, и естественно имеются контрольные md5, из определенных данных, каждого, конкретного, пользователя.

ssid и ip - дают возможность контралировать статус пользователя (login/logout).
id - получить нужные данные.
md5 и все тот же ip - исключить "умников". :)

Вы же понимаете, что я не могу описать обсалютно весь процесс.
Скажем так, есть уже подгатовленные хеши, для каждого пользователя.
Как, когда, где, и из чего, они создаются, я умолчу. Надеюсь по понятным причинам. :)
Сообщество uCoz » Мастерская uCoz » Использование PHP и API на uCoz » Данные в cookies
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: