Хорошо, для нового вопроса подумайте что-то вроде:
new ReflectedControllerDescriptor(typeof(ItemController)).GetCanonicalActions()
может быть использовано для возврата списка всех доступных действий. У меня нет ASP.NET MVC, доступной мне на работе, поэтому я не могу проверить, будет ли возвращаемый ActionDescriptor содержать какой-либо параметр, который сообщает, каким членам разрешено их выполнять.
http://msdn.microsoft.com/en-us/library/system.web.mvc.actiondescriptor_members%28v=VS.90%29.aspx
То есть члены ActionDescriptor, возможно, вы сможете найти там что-нибудь. Я посмотрю сегодня вечером, если смогу разобраться, это меня заинтриговало.
Не существует универсальной системы входа / аутентификации пользователей для всех приложений, поэтому на самом деле невозможно создать «универсальное решение». Вы могли бы создать свои собственные классы входа и авторизации пользователя, которые затем добавляете свои собственные аннотации к методам, но у него будут те же ограничения, что и у системы asp.net mvc, только для вашей системы входа / авторизации (или кто расширяет эту систему).