ok, We will fix this in suite.
ok, You need the yarn.
see https://abp.io/docs/latest/get-started/pre-requirements#node-js-and-yarn
Your question ticket has been refunded.
Thanks,
hi
Please try override the IdentitySessionManager, We will fix this in next patch version.
using System;
using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
using Volo.Abp.Caching;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Identity.Settings;
using Volo.Abp.Settings;
using Volo.Abp.Uow;
using Volo.Abp.Users;
namespace Volo.Abp.Identity.Session;
[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(IdentitySessionManager))]
public class MyIdentitySessionManager : IdentitySessionManager
{
public MyIdentitySessionManager(
IIdentitySessionRepository identitySessionRepository,
ICurrentUser currentUser,
IDistributedCache<IdentitySessionCacheItem> cache,
IUnitOfWorkManager unitOfWorkManager,
ISettingProvider settingProvider,
IdentityDynamicClaimsPrincipalContributorCache identityDynamicClaimsPrincipalContributorCache)
: base(identitySessionRepository, currentUser, cache, unitOfWorkManager, settingProvider, identityDynamicClaimsPrincipalContributorCache)
{
}
public override Task<IdentitySession> CreateAsync(string sessionId, string device, string deviceInfo, Guid userId, Guid? tenantId, string clientId,
string ipAddresses, bool setLastAccessed = false)
{
Check.NotNullOrWhiteSpace(sessionId, nameof(sessionId));
Check.NotNullOrWhiteSpace(device, nameof(device));
using (CurrentTenant.Change(tenantId))
{
var session = await IdentitySessionRepository.FindAsync(sessionId);
if (session == null)
{
Logger.LogDebug($"Creating identity session for session id: {sessionId}, device: {device}, user id: {userId}, tenant id: {tenantId}, client id: {clientId}");
DateTime? lastAccessed = setLastAccessed ? Clock.Now : null;
session = await IdentitySessionRepository.InsertAsync(new IdentitySession(
GuidGenerator.Create(),
sessionId,
device,
deviceInfo,
userId,
tenantId,
clientId,
ipAddresses,
Clock.Now,
lastAccessed
));
}
var preventConcurrentLoginBehaviour = await IdentityProPreventConcurrentLoginBehaviourSettingHelper.Get(SettingProvider);
switch (preventConcurrentLoginBehaviour)
{
case IdentityProPreventConcurrentLoginBehaviour.LogoutFromSameTypeDevices:
await RevokeAllAsync(userId, device, session.Id);
break;
case IdentityProPreventConcurrentLoginBehaviour.LogoutFromAllDevices:
await RevokeAllAsync(userId, session.Id);
break;
}
return session;
}
}
}
Thanks, I will check the logs.
hi
Microsoft.IdentityModel.Protocols.OpenIdConnect.OpenIdConnectProtocolException: Message contains error: 'invalid_grant', error_description: 'SessionExpired', error_uri: 'error_uri is null'.
Can you share all logs.txt? web, api, and authserver projects.
liming.ma@volosoft.com
Thanks.
hi
I can share the code of abp-advanced-entity-filters with you.
Please send a mail to liming.ma@volosoft.com
Thanks.
hi
The Blazor project needs the code and modules HttpApi.Client packages from Alfa5.HttpApi.Client.
It will be best if you clone the whole source code. Then, build in your pipeline.
Thanks.
hi
Try to add action for Themes\**\*.js and "Themes\**\*.css"
<ItemGroup>
<Content Include="Pages\**\*.js">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Pages\**\*.css">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<Content Include="Themes\**\*.js">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Themes\**\*.css">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
Thanks.