c# Class to provide license control for my site.

I have a website, parts of which are subscription based. As part of the subscription license, a user is allowed to use the license on different devices (this is an important point in the user can for example update data on their computer at the office, and then have access to the data on their tablet/mobile while on site).

I want to stop any possible abuse by a company purchasing a single license and giving the login details to all their employees. I would like a robust C# class written to provide the necessary control to achieve this. I will integrate the class into my site.

This is my thinking on how to achieve the requirements, although I am fully open to any other suggestions.

An MS sql server table contains the licensing details:

name: mceLicences

fields: LicenseID int identity, UserID int, NumberOfLicences, int

Access to the database should be via LINQ to SQL ([url removed, login to view], [url removed, login to view], name DataClassesDataContext auto-generated). class.

Single user access and security are already set up. I intend only to maintain the license table for larger clients who want multiple licenses. If a userID does not exist in the table, then it should be assumed he has only one license.

My thought is to keep track of everything in session, with a timed expiration, say 5 minutes (although I suppose an SQL table is an option). A cookie gets created on the users device to identify the user and device (a guid for example). The class checks if the cookie exists, if not creates it.

If the user and device are in the session, he is allowed to continue (with the session timeout refreshed). If not the number of number of devices the user is currently working on is retrieved. If the number of machines exceeds the number of licenses the user is flagged (set a LicenseExceeded property to false). If not in the session and number of licenses is not exceed the user/machine are added to the session The bidder needs to work out and verify the full logic.

Typical class properties should be LicenseesAvailable, LicensesInUse, LicenseExceeded, etc. In the final implementation, I will get the user id server side from

[url removed, login to view]().UserID;

For development/testing, will need to simulate.

I would also like to log to the database daily (24 hour) summaries. For each user which access the site in a day log:

* userID

* NumberOfDevicesUsed

* MaximumNumberOfConcurrentDevices - for that day

* NumberOfLicencesAvailable - on the day of the logging

* LogDate

The logging will enable me to plot usage per user over time (compared to their available licenses) and discuss with the client if the need to increase (or reduce) their current number of licenses.

Initially, I will just log any overuse and deal directly with the user to resolve it. Later I may implement restrictions, where if example the LicenseExceeded property is true, the user is redirected to some page to deal block access.

It is important that the above not interfere with the user experience on the site. Bidders should address this. The class should be fully commented/documented (so that I can understand, implement in my site and modify if necessary later) and follow Microsoft best practices.

The above describes my intent and my initial thoughts on how to achieve this. If bidders can propose a better solution, I am open to looking at this.

Habilidades: Programación en C#, SQL

Ver más: website development best practices, usage logging, security logic, programming on a tablet, programming class, programming best practices, ms office programming, ms office development, ms access parts database, mobile site programming, microsoft access parts database, microsoft access database development, licensing solution, i say my name, i am looking for employees, how to keep track of clients, how to increase users on website, how to get programming experience, how to get into programming of computer, how to get into computer programming, how to get better at programming, how does computer programming work, gets in c programming, gets c programming, from which website i can get the client for website development

Información del empleador:
( 3 comentarios ) Wickford, United Kingdom

Nº del proyecto: #10699973

8 freelancers están ofertando el promedio de $341 para este trabajo


Hello Sir, We have experienced programmers [login to view URL] have worked in C# project. How can we discuss about job? Here is the link of feedback "http://www.freelancer.com/u/geekydeveloper.html" We would like to work Más

$250 USD en 30 días
(68 comentarios)

Hi there! I have read what you exactly need, however I would like to ask you a few questions. I wouldn't call myself a master but I do work smart and do not rest until I get the job done. Please feel free to ping me an Más

$155 USD en 3 días
(11 comentarios)

Hi, I am interested. Thanks narendra

$1000 USD en 30 días
(3 comentarios)

Hello, I hope you doing very well! I have gone through the description and would like to provide a quality solution using my 5+ years of professional experience in required skills. (.NET/ASP.NET - MVC, EF, SQL, C#). Más

$126 USD en 3 días
(7 comentarios)

Dear Sir/Madam, I have more than 7 years experience in software development and web development using Microsoft technologies. I have expertise in ASP.NET, [login to view URL], WPF, Silverlight,Entity Framework, LINQ, AWS, WC Más

$150 USD en 3 días
(4 comentarios)

i can do your job.

$388 USD en 30 días
(1 comentario)

I am 5+ year experienced .net developers working as path time freelancers from last 5+ year, developing websites, window application. My main goal is to provide Life & Quality of work to IT within time. I am working on Más

$155 USD en 3 días
(1 comentario)

I am Expert in web development. Although i am a student but worked on large number of projects previously Github:>[login to view URL] website: [login to view URL] sample: http://www.u Más

$155 USD en 3 días
(0 comentarios)

I have international experience ,I have travelled to India for a software implementation,I was responsible to translate the documentation ,giving support ans developing the software .I have 12 years of web design exper Más

$155 USD en 10 días
(0 comentarios)

I am experienced in SQL and programming with c# for over 12 years and thus can handle the work easily. contact me if my skills match your requirement.

$500 USD en 8 días
(0 comentarios)

Respected Sir, I am seema. I have 5 years of competitive experience in web application development using PHP with CMS. Recently completed PHP and Wordpress project by me: --------------------------------- Más

$155 USD en 3 días
(0 comentarios)