Custom code access permissions

Posted by jaklucky on Stack Overflow See other posts from Stack Overflow or by jaklucky
Published on 2010-04-01T18:38:27Z Indexed on 2010/04/01 18:43 UTC
Read the original article Hit count: 486

Filed under:
|

Hi all,

We have a server written in C# (Framework 3.5 SP1). Customers write client applications using our server API. Recently, we created several levels of license schemes like Basic, Intermediate and All. If you have Basic license then you can call few methods on our API. Similiarly if you have Intermediate you get some extra methods to call and if you have All then you can call all the methods.

When server starts it gets the license type. Now in each method I have to check the type of license and decide whether to proceed further with the fucntion or return.

For example, a method "InterMediateMethod()" can only be used by Intermediate License and All license. So I have to something like this.

public void InterMediateMethod()

{

       if(licenseType == "Basic")

        {

             throw new Exception("Access denined");

        }

}

It looks like to me that it is very lame approach. Is there any better way to do this? Is there any declarative way to do this by defining some custom attributes? I looked at creating a custom "CodeAccessSecurityAttribute" but did not get a good success.

Thank you,

Suresh

© Stack Overflow or respective owner

Related posts about c#

Related posts about licensing