protected virtual async Task <AbpUserAuthConfigDto> GetUserAuthConfig()
        {
            var config                 = new AbpUserAuthConfigDto();
            var allPermissionNames     = PermissionManager.GetAllPermissions(false).Select(p => p.Name).ToList();
            var grantedPermissionNames = new List <string>();

            if (AbpSession.UserId.HasValue)
            {
                // foreach (var permissionName in allPermissionNames)
                // {
                //     if (await PermissionChecker.IsGrantedAsync(permissionName))
                //     {
                //         grantedPermissionNames.Add(permissionName);
                //     }
                // }
                var userGrantedPermissions = await PermissionChecker.GetGrantedPermissionAsync(AbpSession.UserId.Value);

                grantedPermissionNames = allPermissionNames.Where(x => userGrantedPermissions.Contains(x)).ToList();
            }

            config.AllPermissions     = allPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");
            config.GrantedPermissions = grantedPermissionNames.ToDictionary(permissionName => permissionName, permissionName => "true");

            return(config);
        }