¿Debo utilizar un IAuthorizationFilter si deseo crear un recurso restringido de ApiKey con ASP.NET MVC4?

Tengo algunas rutas simples que deseo restringir a través de un simple parámetro de cadena de consulta. Si la clave es incorrecta o no se proporciona, deseo lanzar unaNotAuthorizedException.

Por favor, no sugiera que use WebApi o el equivalente, todavía no puedo en este escenario.

Así que no estoy seguro de si debería implementar unIAuthorizationFilter o implementando unIActionFilter o incluso algo más.

¿Mi código lógico?

Compruebe la cadena de consulta para la clave.Compruebe mi RavenDb (repositorio) para un usuario con esa clave / valor.

Si fallan alguno de esos cheques, tirar elNotAuthorizedException.

Supongo que luego decoraría mi método de acción con este filtro. También asumo que necesitaría pasar mi repositorio a este método de acción también.

¿Alguna sugerencia por favor?

Respuestas a la pregunta(1)

Su respuesta a la pregunta