Accessing the SPRoleCollection requires Administrator right or at least Manage Site Groups right.The only way around it that we found is to issue a web service call impersonating the user as an administrator.