Да, вы правы. Анонимные пользователи не могут принадлежать к роли.
Обратите внимание, что объект User
для анонимного пользователя - это GenericPrincipal
, и хотя он реализует IPrincipal
, метод IsUserInRole
всегда возвращает false, поскольку при создании FormsAuthenticationModule
роли не предоставлены.
Также обратите внимание, что объектом User
для аутентифицированного пользователя является RolePrincipal
, который запрашивает RoleManager
в IsUserInRole
.