Are there any open source solutions for .NET (prefer C# / MVC) that allow for simple lockdown and invitation system useful in a private rolling Beta scenario?
Pretty much where the user would be redirected to a splash page unless they are logged in (perhaps using Global Action Filters)…
Here are a couple similar solutions in other languages:
https://github.com/ejdraper/exclusivity (Ruby)
https://github.com/pragmaticbadger/django-privatebeta (Python)
I wrote a small ‘access control’ filter for ASP.NET MVC that is config file driven. I can switch a flag in my web.config which will move all unregistered users to a specific page unless they specifically request the login or logout actions. You could adapt your implementation accordingly without much trouble.
Filter Attribute
Config Handler
Example Web.config
With the above configuration, any user who is not logged in or not a member of the role ‘Members’ would be redirected to ‘~/inviteonly.htm’. You can specify multiple allowed roles and/or users by comma-separating the values in the ‘allowRoles’ and ‘allowUsers’ attributes.
The
AccessControlAttributemust be registered as a global filter or alternatively placed on a BaseController class definition to get everything working.