blergh
Pesquisando com as tags Stack Overflow desde que me deparei com este site:http://www.lhotka. net/weblog/CallingRolesGetRolesForUserInAWCFService.aspx
Resumindo:aparentemente algo quebrou entre .net 3.5 e .net 4.
Para resolver este problema ligue:
string[] roles = Roles.Provider.GetRolesForUser(ServiceSecurityContext.Current.PrimaryIdentity.Name);
ao invés de
string[] roles = Roles.GetRolesForUser(ServiceSecurityContext.Current.PrimaryIdentity.Name);
A diferença está no
.Provider
que é adicionado no meio. Depois de adicionar isso funcionou bem.