Autorizar al usuario actual contra el controlador y el nombre de la acción en ASP.NET MVC 3

Necesito crear una autorización personalizada en ASP.NET MVC 3. Dentro de la aplicación, la autorización se define en 5 tablas: usuarios, grupos, grupos de usuarios, derechos, derechos de grupo. Un usuario puede pertenecer a varios grupos, y cada derecho también puede asignarse a varios grupos. A cada acción del controlador se le asigna un RightID.

La autorización integrada no puede adaptarse a esta configuración, por lo que intenté crear un AuthorizeAttribut personalizado, e. Al anular AuthorizeCore, me di cuenta de que no tengo acceso al nombre del controlador y al nombre de la acción.

¿De alguna manera puedo pedirle al enrutador que analice Request.RawUrl dentro de AuthorizeCore para obtener el nombre del controlador y la acción? ¿O hay otra forma de hacer lo que quiero?

Respuestas a la pregunta(2)

Su respuesta a la pregunta