How to scramble URL in IIS seamlessly irrespective of the application hosted

I want that the URL displayed in the Browser should be scrambled for the user (So they cannot just change a number/string to try to get access to another record in website).

I wanted to do this URL scrambling using IIS transparently and not the hosted application.

Is there any way to do that?
ArikkanAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Dave BaldwinFixer of ProblemsCommented:
Probably not.  Applications normally take care of encoding/decoding their own data.
Paul MacDonaldDirector, Information SystemsCommented:
So you have a URL with a parameter like...
     www.mydomain.com/display.aspx?record=123&data=abc
...and you don't want people to just plug random info into the parameters to pull up data they shouldn't see.  You have a couple options:
1) Make people authenticate.  That is, check to see if the user has given a valid username/password for that session, and only let them see records they're allowed to, or
2) Cypher the parameters.  Perform some bit-shifting, or obfuscation so that the value in the URL does not actually represent a correlation to data in your database.  It's still possible for people to guess a correct value for your parameter(s), but this greatly reduces the odds of their being successful, or being able to do anything consistent with the data they retrieve.
Dan McFaddenSystems EngineerCommented:
About the best you can do in IIS is Rewrite the URL but...  the rewrite is dependent on the cs-uri-stem and cs-uri-query components of the originally requested URL.  If, as in the example mentioned above, your URL is:

http://www.mydomain.com/display.aspx?record=123&data=abc 

what can be done is that you rewrite the URL to remove the query string portion of the URL.  Using the URL Rewrite feature of IIS, you can rewrite the URL to display as:

http://www.mydomain.com/display/123/abc/

In order to completely randomize your URLs to obfuscate query string hacking, you'll need to code a solution.  There are plenty of examples available when searching.

Example:  http://minimalistcoder.blogspot.de/2009/01/obfuscating-querystring-parameters.html

So, the direct answer is what has been mentioned by both Dave & Paul... not doable transparently in IIS but it must be done at the application.

Dan
ArikkanAuthor Commented:
I found my own solution.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft IIS Web Server

From novice to tech pro — start learning today.