Любая идея, как это сделать (1) аутентификация php (2) запустить приложение flex, которое знает, что пользователь уже прошел аутентификацию - PullRequest
1 голос
/ 30 мая 2009

Почти все в названии:

Вот что я хотел бы сделать:

  1. Хорошая HTML-страница с процессом аутентификации php (сначала http, затем http s и т. Д.)
  2. Запустите гибкое приложение, которое знает (я не знаю как (это актуальный вопрос!)), Пользователь уже прошел проверку подлинности и отобразит свои материалы, которые он / она должна сделать на день (или как там ...).

Конечно, если кто-то попытается напрямую вызвать приложение flex, я выведу сообщение «ошибка аутентификации», а затем перенаправлю на страницу аутентификации.

Извините за мой английский, который совершенен.

Я думал о cookie-файлах сессии: сначала аутентифицируйте, а затем задайте переменную на стороне сервера, что-то вроде:

$_SESSION['authenticate']=true

Затем, на гибкой стороне, просто отправьте cookie и спросите, правильно ли аутентифицирован пользователь, что-то вроде вызова веб-страницы php, например:

https://is_authenticated.php?php_session=xxxx

Спасибо

Olivier

Ответы [ 3 ]

0 голосов
/ 31 мая 2009

Это именно то, что я бы сделал .. Несколько вещей, которые следует учитывать с точки зрения безопасности:

  • Если ваша служба php (из flex) получает неизвестный токен сеанса, всегда генерирует новый. Это также относится к вашему PHP-приложению и часто упускается из виду.
  • Я бы сгенерировал swf с javascript и вручную вставил сессионный cookie, используя javascript. Таким образом, люди не будут загружать и защищать (или кэшировать) ваши php-страницы с сессиями, которые в будущем станут недействительными.
  • Еще лучше было бы использовать отдельный токен, отличный от сеанса, и на сервере выяснить, какой идентификатор сеанса был основан на этом гибком токене.
0 голосов
/ 02 июня 2009

Что вы используете на стороне сервера? Помните, что вы не должны ничего делать в приложении flex, кроме отправки идентификатора SESSION вместе с любыми запросами. В любое время, когда клиент проверяет безопасность, у вас есть ошибка. Сервер должен проверить сеанс и определить, разрешен ли запрос.

В вашем последнем комментарии прозвучало, что вы беспокоитесь о людях, вызывающих веб-страницу вручную. Каждая страница должна проверять, аутентифицирован ли пользователь. Я не знаю вашего конкретного приложения, но вы можете попробовать AMFPHP и посмотреть, как они аутентифицируют сессию . Удачи!

0 голосов
/ 30 мая 2009

Вы на правильном пути!
Вы можете использовать сеансовую аутентификацию, эти ссылки могут вам помочь:

Также есть возможность использовать http-аутентификацию

однако http-аутентификация не так гибка, как сеансовая аутентификация, а также требует дополнительных настроек на стороне сервера. Поэтому я бы рекомендовал вам придерживаться сеансов.

...