Какова хорошая стратегия продления срока действия билета авторизации форм между .net и php? - PullRequest
0 голосов
/ 11 марта 2009

Я создаю приложение, которое будет получать содержимое cookie-файла, хранящего билет проверки подлинности форм из .net. Эта часть сделана. В этом билете есть время истечения, по умолчанию 20 минут.

Таким образом, сценарий состоит в том, что пользователь входит в систему и проверяется на стороне .net. Затем они перенаправляются в мое приложение PHP. Я получаю имя пользователя, срок действия билета и т. Д.

Как лучше всего продлить билет, когда пользователь остается активным в моем приложении? Вот два возможных подхода, я уверен, что есть еще:

  1. Через 10 минут после истечения срока действия, и если пользователь все еще активен, веб-служба .net связывается с тем, чтобы выдать мне новый билет с новым сроком действия. Когда страница простаивает в течение 20 минут, пользователь перенаправляется на исходный логин .net.

  2. PHP заботится об истечении срока действия с cookie на своей стороне. Когда это приближается к 10 минутам, и пользователь все еще просматривает, это обновляет. Но когда страница простаивает в течение 20 минут, пользователь перенаправляется обратно к исходному логину .net.

Другие предложения? Плюсы, минусы к любому из этих? Я ищу скорость и безопасность.

1 Ответ

1 голос
/ 11 марта 2009

Я буду исходить из вашего вопроса, что вы не используете постоянные куки и что вы используете скользящий срок действия. Если вы намереваетесь попытаться повторить то же поведение в php, вы можете взглянуть на this .

Давайте рассмотрим пример: если страница входа в систему доступна в 5:00 00:00:00 PM, срок ее действия истекает в 5:10 00:00:00 PM, если атрибут timeout равен 10, а атрибут slideExpiration - установите в TRUE. Теперь, если какая-либо веб-страница будет снова просматриваться в 17:05 00:00:00, время ожидания файлов cookie и времени ожидания будет сброшено до 5:15 00:00:00 PM.

Как правило, вы обновляете время истечения cookie, когда пользователь заходит на одну из ваших php-страниц.

Другой вариант - встроить в ваши страницы что-то вроде IFRAME, что приведет к удалению файла .aspx с вашего сайта .net. Это будет иметь эффект «обновления» куки.

...