in src/Services/User/User.Infrastructure/Identity/IdentityService.cs [215:237]
public async Task<(Result Result, string[] UserRoles)> GetUserRolesAsync(string userToken)
{
logger.LogInformation("Start retrieving the role for user with token {userToken}.", userToken);
(Result searchResult, ApplicationUser user) = await FindUserByTokenAsync(userToken);
if (!searchResult.Succeeded)
{
logger.LogError("Error retrieving roles for user with token {userToken}. Errors: {@message}",
userToken,
searchResult.Errors);
return (searchResult, Array.Empty<string>());
}
IList<string> roles = await userManager.GetRolesAsync(user);
logger.LogInformation("Successfully retrieved roles for {userName} user with token {userToken}.",
user.UserName,
userToken);
return (Result.Success(), roles.ToArray());
}