License for application

Using mysql, c#.net, Java Script

I have the web application, i want to create a user limit for my application which means i have to use some license for the users....

For Example

customer need the application for 3 users, so application will work for 3 users, if customer need to extend the user from 3 to 10 means, i have to provide a license for 10 users...

How to create a license for the application, i have to use RSA algorithm for generating a key?

Can any one provide some idea or sample code

Need Help

8
задан Gopal 24 August 2010 в 05:35
поделиться

2 ответа

Существует большая разница между лицензионным ключом и лицензионным соглашением . Лицензионный ключ - это то, что используется для затруднения копирования программного обеспечения, поскольку вы развертываете веб-приложение, это не должно быть большой проблемой для вас. Лицензионное соглашение - это юридический документ, с которым должны согласиться пользователи вашего приложения. Я предполагаю, что вас интересует первое.

В веб-приложении вы должны реализовать систему входа в систему и предоставлять имя пользователя и пароли только тем пользователям, которые заплатили вам. Если, как упомянул Коби, у вас есть общедоступный API, который вы хотите лицензировать для других пользователей, я рекомендую вам просто дать им GUID uinque ( System.Guid.NewGuid (); ), а затем потребовать, чтобы GUID в качестве параметра для каждого вызова API. Затем вы можете проверить, связан ли GUID с платной учетной записью, если да, дайте ему взлететь, если нет, прервите транзакцию с кодом ошибки. Я бы рекомендовал использовать для этого HTTPS-соединение.

Если вы пытаетесь продать свое веб-приложение пользователям, чтобы они могли разместить его на своем собственном сервере, лицензионный ключ будет хорошей идеей, вы можете добавить его в качестве параметра в < appSettings> в web.config. Существует множество методов генерации лицензионных ключей, но в большинстве случаев они включают генерацию случайных чисел до тех пор, пока не будет достигнута определенная контрольная сумма. Например, 1253–38 (1 + 2 = 3, 5 + 3 = 8). Это очень простой ключ, который легко взломать, но при необходимости вы можете придумать более подробную контрольную сумму.

5
ответ дан 5 December 2019 в 22:15
поделиться

ИМХО, Нейт Босс рассказал о большинстве базовых вещей. Теперь, глядя на ваше требование,

клиенту нужно приложение для 3 пользователей, поэтому приложение будет работать для 3 пользователей, если клиенту нужно расширить количество пользователей с 3 до 10, значит, я должен предоставить лицензию для 10 пользователей...

У вас есть именованные пользователи? Например, будет ли у каждого пользователя от клиента свое имя пользователя/пароль? Если да, то все, что вам нужно сделать, это создать необходимое количество учетных записей пользователей для клиента. Теперь создание учетной записи пользователя выполняется вами, и вам не нужно делать ничего особенного. Однако, если вы хотите разрешить регистрацию нового пользователя самим клиентом, вам необходимо иметь логику лицензирования на странице регистрации. Основная проблема будет состоять в том, чтобы идентифицировать клиента, а затем сверить его с вашим инвентарем, чтобы увидеть, осталась ли у клиента какая-либо учетная запись пользователя. Идентификация клиента может быть выполнена разными способами - цифровой сертификат, регистрационный код, предоставленный вами (может быть случайным числом или может быть идентификатором клиента, зашифрованным вашим PK) и т. д.

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

1
ответ дан 5 December 2019 в 22:15
поделиться