Hello, we are currently still working on it. We started with KeyCloak
integration to the eshoponabp project before the documents. You can review this PR if you want to check what has been done, even though it has some missing integration at the moment.
You can also check out previous developments on this subject here.
There is a breaking change regarding using IRemoteContentStream
in version 5.0.0
. It seems to me that the object is probably disposed of while you call Upload
ref: https://github.com/abpframework/abp/pull/9180
But it would be great if you could test this to speak beyond the assumptions. For this, you can pass false to disposeStream parameter while creating an instance of RemoteStreamContent
.
new RemoteStreamContent(...., disposeStream: false)
If it is as I said, I believe you can solve the problem similar to the code below:
await using var memoryStream = new MemoryStream();
if (Organization.ProfilePictureFile != null && Organization.ProfilePictureFile.Length > 0)
{
await Organization.ProfilePictureFile.CopyToAsync(memoryStream);
memoryStream.Position = 0;
createOrganizationDto.ProfilePictureStreamContent = new RemoteStreamContent(memoryStream, fileName: Organization.ProfilePictureFile.FileName, contentType: Organization.ProfilePictureFile.ContentType);
}
var organization = await _organizationAppService.CreateAsync(createOrganizationDto);
await memoryStream.DisposeAsync();
ref: https://github.com/abpframework/eventhub/blob/f95fda41dbd821c905ed6c675e946a86fb91a6fa/src/EventHub.Web/Pages/Organizations/New.cshtml.cs#L42-L52
The topic doesn't seem to be related to ABP as Maliming said, but I would like to mention a few resources that you may find useful.
Unfortunately, this is not the default behavior. However, you can do this easily.
Note: You can find more information about the default behavior here.
If you want to know more about how to set the sliding expiration, please see here
I can also recommend you to look at the IdentityServer's documents related to this subject.
In its simplest form, it should be similar to the following code:
SlidingRefreshTokenLifetime = (int)TimeSpan.FromMinutes(5).TotalSeconds,
RefreshTokenExpiration = (int)TokenExpiration.Sliding,
AccessTokenLifetime = (int)TimeSpan.FromMinutes(3).TotalSeconds,
The topic doesn't seem to be about ABP(should be no different from a regular ASP.NET application) but I found a resource for you => https://learn.microsoft.com/en-us/answers/questions/835816/how-to-user-re-authenticate-the-azure-ad-user-when.html
To expire the session and force to re-authenticate with the existing user session, you could directly logout AAD and then clear the cache.
Actually, the lifetime of the token is very long, but we switched our websites from IdentityServer
to OpenIddict
. During this transition, old tokens were invalidated.
Once you log in, the problem should be fixed.
Related document: https://docs.abp.io/en/abp/latest/CLI#login
Related with https://support.abp.io/QA/Questions/3480
The problem seems to have been resolved in version 6.0.0
. However, if you do not want to switch to version 6.0.0
, we will soon have a patch version for 5.x.x
and it will be solved there too.
Hello,
If you want to download the template for version 4.4.3, please try the command below:
abp new CryptoTrader -t app-pro --tiered --version 4.4.3
If you want to download the more recent version, change your CLI version to the version of the template you want to download. For instance:
dotnet tool update -g Volo.Abp.Cli --version 6.0.0
Hi, can we confirm that abp cli
and abp suite
have the same version(e.g. 5.3.0
)?
Hi, can you please send the output of the following command?
abp login-info