Autoriser l'attribut ne fonctionne pas avec des rôles

J'ai de la difficulté à obtenir les Authorize attribut de travailler avec des rôles. C'est de cette façon que j'ai décoré mon contrôleur:

[Authorize(Roles = "admin")]
public ActionResult Index()
{
    ...
}

et c'est ainsi que je me connecte un utilisateur dans:

string roles = "admin";
FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
    1,
    username,
    DateTime.Now,
    DateTime.Now.AddMinutes(30),
    false,
    roles
);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(authTicket));
HttpContext.Current.Response.Cookies.Add(cookie);

Mais mon utilisateur est toujours refusé l'accès. Où vais-je tort?

OriginalL'auteur Jonathan | 2013-09-15