2008-10-30 3 views
7

Наша компания делает сетевое приложение, которое оценивается за рабочую станцию.Аутентификация SAAS на одно место

Это означает, что учетные данные пользователя/пароля должны использоваться только с одной конкретной машины.

В настоящее время происходит то, что несколько пользователей делят учетные данные, и у нас нет способа предотвратить это, если они не делают это одновременно.

Характер приложения таков, что пользователь должен использовать его раз в то время, так что неспособность работать одновременно не сильно беспокоит пользователей, и компания теряет возможные доходы.

Приложение в настоящее время является чисто AJAX без апплетов flash/activeX/Java.

Идеальное решение - прочитать имя компьютера или IP-адрес клиента с помощью javascript, используя интерфейс сценариев «Shell.Network».

Но это невозможно из-за строгих настроек безопасности в Internet Explorer. Я должен упомянуть, что функция перекрестного браузера не имеет значения, и единственным поддерживаемым браузером является IE.

Поиск google Я нашел это решение здесь http://www.reglos.de/myaddress/MyAddress.html, но для этого требуется JAVA-апплет, поэтому это будет не очень удобно.

Есть ли другие решения для этого?

ответ

3

Установите cookie на машине с идентификатором. Получайте cookie каждый раз, когда пользователь входит в систему. Если вы видите несколько разных cookie, чередующихся для одного пользователя, вы знаете, что у вас что-то странное происходит.

(Конечно, один коммутатор может просто означать, что они переехали на новый компьютер, как один офф.)

Кроме того, цена за использование «запроса» или какой-либо другой элемент.

+0

Кажется, решение на основе файлов cookie было бы лучшим. Мы попробуем его – SparcU 2008-11-02 14:25:38

0

Нет простого ответа, так как ваши клиенты (программное обеспечение) являются анонимными и пользователи самоидентифицируются.

Для IE «блокировка вас» (я вряд ли эксперт IE), но не могут ли настройки IE задаваться для определенных доменов? Вы могли бы просто сделать это требование, чтобы пользователи настраивали свои браузеры, чтобы предоставить вашему приложению превосходный доступ.

Я не вижу причин, по которым у вас не могут быть определенные требования к браузеру пользователей (т. Е. Только IE 6/7/8, эти параметры безопасности и т. Д.).

4

Ваша модель лицензирования не соответствует модели доставки. Измените один из них.

+0

+1, потому что Интернет без гражданства. Достаточно сложно следить за одним пользователем. – 2009-06-10 21:37:28

1

Этот вид злоупотребления, вероятно, может быть обнаружен умеренно эффективно с использованием техники Печенья, предложенной RichH. По крайней мере, откровенное злоупотребление можно обнаружить довольно легко (скажем, 10 лицензированных пользователей, 100 реальных пользователей).

Но, конечно, не блокируйте пользователя, просто следите за ситуацией и попросите своих продавцов позвонить, предлагая купить больше лицензий.

Мы делаем то же самое (с точки зрения лицензирования и доставки), и я уверен, что у вас есть хорошие деловые причины, чтобы не менять вашу модель.

1

Отслеживать сеансы на одного пользователя. Не разрешать несколько сеансов одному пользователю.Для этого вам нужно будет сохранить идентификатор сеанса в базе данных и проверять каждый раз, когда пользователь входит в систему.

Чтобы помочь пользователям, которые время от времени крадут браузер и переписываются с новым сеансом, позволяют им выходить из предыдущего сеанса ... поэтому вы можете убить старую сессию и вместо этого зарегистрировать новую.

Надеюсь, это полезно.

Смежные вопросы